Chris Lattner
6a2ec2cd3b
Remove a bunch of dead stuff, shrinkifying TargetInstrDescriptor significantly.
...
llvm-svn: 27897
2006-04-20 18:32:02 +00:00
Chris Lattner
1fcd927af4
Remove some obsolete interfaces
...
llvm-svn: 27896
2006-04-20 18:17:21 +00:00
Chris Lattner
7649e06c23
Remove some of the obvious v9-specific cruft
...
llvm-svn: 27894
2006-04-20 18:09:13 +00:00
Chris Lattner
0b321ad43f
remove a dead prototype
...
llvm-svn: 27882
2006-04-20 15:45:54 +00:00
Evan Cheng
ec4d1668ef
Added a virtual method isVectorClearMaskLegal to TLI. It is similar to
...
isShuffleMaskLegal, used to determine if it makes sense to turn a
"vector clear" (e.g. pand V, <0, -1, 0, -1> to a shuffle of the vector and
a zero vector.
llvm-svn: 27873
2006-04-20 08:54:13 +00:00
Reid Spencer
b569daf7a6
Add in missing #defines for _OpenBSD_ systems.
...
llvm-svn: 27850
2006-04-20 00:18:39 +00:00
Nate Begeman
7821901005
Fix a copy & paste error from long ago.
...
llvm-svn: 27800
2006-04-18 16:03:18 +00:00
Chris Lattner
bcd61bbadb
Add some convenience methods.
...
llvm-svn: 27774
2006-04-17 21:35:08 +00:00
Chris Lattner
5324c4f9aa
These instructions always return a packed vector. Improve the class definitions to expose this fact.
...
llvm-svn: 27712
2006-04-14 22:20:07 +00:00
Evan Cheng
32c4470374
Last few SSE3 intrinsics.
...
llvm-svn: 27711
2006-04-14 21:59:03 +00:00
Evan Cheng
184264997e
Misc. SSE2 intrinsics: clflush, lfench, mfence
...
llvm-svn: 27699
2006-04-14 07:43:12 +00:00
Evan Cheng
360a73046f
pcmpeq* and pcmpgt* intrinsics.
...
llvm-svn: 27685
2006-04-14 01:39:53 +00:00
Evan Cheng
18a1a0e199
psll*, psrl*, and psra* intrinsics.
...
llvm-svn: 27684
2006-04-14 00:14:05 +00:00
Chris Lattner
4bebf6718d
Fix an incorrect prototype for this intrinsic, fixing
...
CFrontend/2003-08-18-SigSetJmp.c with llvm-gcc3. This is part of PR733.
llvm-svn: 27670
2006-04-13 18:23:48 +00:00
Evan Cheng
a27ec55558
pmin, pmax, and psad intrinsics.
...
llvm-svn: 27646
2006-04-13 06:09:41 +00:00
Evan Cheng
d5bd292d89
pmul*, pmadd*, and pavg* intrinsics.
...
llvm-svn: 27642
2006-04-13 05:09:06 +00:00
Evan Cheng
2f634fac6d
padds{b|w}, paddus{b|w}, psubs{b|w}, psubus{b|w} intrinsics.
...
llvm-svn: 27639
2006-04-13 00:43:35 +00:00
Evan Cheng
537bdb370c
Naming inconsistency.
...
llvm-svn: 27638
2006-04-13 00:00:23 +00:00
Evan Cheng
8768f25c80
SSE / SSE2 conversion intrinsics.
...
llvm-svn: 27637
2006-04-12 23:42:44 +00:00
Reid Spencer
553050adcb
Make sure both member variables are initialized in the default constructor
...
for SDOperand. This gets rid of numerous warnings in lib/CodeGen and
lib/Target when compiled with GCC 4.0.2
llvm-svn: 27607
2006-04-12 16:44:15 +00:00
Chris Lattner
048bc55352
Provide a default impl of LowerArguments
...
llvm-svn: 27605
2006-04-12 16:21:12 +00:00
Evan Cheng
fbdf6ece4a
Various SSE2 conversion intrinsics
...
llvm-svn: 27603
2006-04-12 05:20:24 +00:00
Evan Cheng
68b885f50c
Added __builtin_ia32_storelv4si, __builtin_ia32_movqv4si,
...
__builtin_ia32_loadlv4si, __builtin_ia32_loaddqu, __builtin_ia32_storedqu.
llvm-svn: 27599
2006-04-11 22:28:25 +00:00
Chris Lattner
bf69078515
new dag node
...
llvm-svn: 27596
2006-04-11 21:30:42 +00:00
Evan Cheng
c0848b1eaf
gcc lower SSE prefetch into generic prefetch intrinsic. Need to add support
...
later.
llvm-svn: 27591
2006-04-11 18:04:57 +00:00
Evan Cheng
7a9fca11b5
Misc. intrinsics.
...
llvm-svn: 27590
2006-04-11 17:35:57 +00:00
Evan Cheng
798acd4094
movnt* and maskmovdqu intrinsics
...
llvm-svn: 27587
2006-04-11 06:57:30 +00:00
Chris Lattner
eda5a7014a
Add helper methods.
...
llvm-svn: 27576
2006-04-11 01:09:25 +00:00
Jim Laskey
54dc261ef6
Use existing information.
...
llvm-svn: 27574
2006-04-10 23:09:19 +00:00
Chris Lattner
1659f983ff
Fix a typo: Instr* -> Intr*
...
llvm-svn: 27568
2006-04-10 22:02:59 +00:00
Evan Cheng
0a8da94ae5
__builtin_ia32_loadup{s|d}, __builtin_ia32_storeup{s|d}
...
llvm-svn: 27561
2006-04-10 21:09:59 +00:00
Andrew Lenharth
b3f434b83d
Add a simple pass to make sure that all (non-library) calls to malloc and free
...
are visible to analysis as intrinsics. That is, make sure someone doesn't pass
free around by address in some struct (as happens in say 176.gcc).
This doesn't get rid of any indirect calls, just ensure calls to free and malloc
are always direct.
llvm-svn: 27560
2006-04-10 19:26:09 +00:00
Chris Lattner
a4a7e59c52
Add a new VSELECT node.
...
llvm-svn: 27541
2006-04-08 22:16:01 +00:00
Chris Lattner
80450dd773
Add methods to check insert/extract element instructions for validity
...
llvm-svn: 27522
2006-04-08 04:04:54 +00:00
Chris Lattner
e2d0c1084a
Add a new shufflevector instruction
...
llvm-svn: 27507
2006-04-08 01:15:18 +00:00
Evan Cheng
e55651f4d7
Fix int_x86_sse_stmxcsr and int_x86_sse_ldmxcsr. Not directly translated from
...
gcc builtins. They are not lowered into these intrinsics which take a ptr
argument.
llvm-svn: 27505
2006-04-08 00:47:01 +00:00
Evan Cheng
36de346008
Remove int_x86_sse_storeh_ps and int_x86_sse_storel_ps. These are now lowered
...
by the frontend.
llvm-svn: 27495
2006-04-07 21:18:40 +00:00
Jim Laskey
fabb0ba736
Make sure that debug labels are defined within the same section and after the
...
entry point of a function.
llvm-svn: 27494
2006-04-07 20:44:42 +00:00
Jim Laskey
b93bc75add
Foundation for call frame information.
...
llvm-svn: 27491
2006-04-07 16:34:46 +00:00
Evan Cheng
f49979cf28
Remove int_x86_sse_loadh_ps and int_x86_sse_loadl_ps. These are now lowered
...
by the frontend to shuffles.
llvm-svn: 27475
2006-04-06 23:25:41 +00:00
Chris Lattner
b19cdc8fc1
These intrinsics are now lowered by the FE.
...
llvm-svn: 27458
2006-04-06 21:12:48 +00:00
Chris Lattner
09b9548243
this is no longer an intrinsic.
...
llvm-svn: 27451
2006-04-06 18:29:17 +00:00
Evan Cheng
f1a2e421c3
Added comi and ucomi SSE intrinsics.
...
llvm-svn: 27443
2006-04-05 23:37:18 +00:00
Chris Lattner
86763bafa7
add altivec ds* intrinsics
...
llvm-svn: 27441
2006-04-05 22:18:01 +00:00
Chris Lattner
986d42c2e9
Get the types right, third time is the charm. Add vsl.
...
llvm-svn: 27424
2006-04-05 01:15:54 +00:00
Chris Lattner
f41b7d5a80
correct the type of two intrinsics, add int_ppc_altivec_vmladduhm
...
llvm-svn: 27422
2006-04-05 00:49:14 +00:00
Chris Lattner
0afabdfdaf
Add m[tf]vscr intrinsics.
...
llvm-svn: 27420
2006-04-05 00:03:03 +00:00
Chris Lattner
e7a52b473f
Add missing byte merges.
...
llvm-svn: 27418
2006-04-04 23:43:56 +00:00
Chris Lattner
ab137b431f
Add FP -> Int Conversions
...
llvm-svn: 27417
2006-04-04 23:25:02 +00:00
Chris Lattner
39a966beec
add average intrinsics.
...
llvm-svn: 27415
2006-04-04 23:13:21 +00:00