Chris Lattner
|
8139e28a79
|
Convert PAVG*, PMADDWD, and PMUL* to use multiclasses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30805 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 18:39:00 +00:00 |
|
Chris Lattner
|
3dca490ff0
|
Fix typo in packsswb instr definition, where the load had the wrong type.
This allows us to use the multiclass for other packs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30804 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 18:23:58 +00:00 |
|
Rafael Espindola
|
e5bbd6d753
|
implement FUITOS and FUITOD
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30803 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 14:24:52 +00:00 |
|
Rafael Espindola
|
5aca927ae6
|
implement FLDD
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30802 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 14:03:39 +00:00 |
|
Rafael Espindola
|
d9ae778125
|
implement fadds, faddd, fmuls and fmuld
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30801 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 13:46:42 +00:00 |
|
Chris Lattner
|
783d45ef14
|
handle pmin/pmax with multiclasses
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30800 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 07:49:33 +00:00 |
|
Chris Lattner
|
7733799464
|
simplify pack and shift intrinsics with multiclasses
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30797 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 07:06:17 +00:00 |
|
Chris Lattner
|
01998742c3
|
Use a multiclass to simplify 'SSE2 Integer comparison'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30796 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 06:47:08 +00:00 |
|
Chris Lattner
|
736c020fc8
|
move class defns close to uses to make it easier to read
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30795 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 06:33:36 +00:00 |
|
Chris Lattner
|
fb996ee727
|
simplify horizontal op definitions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30794 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 06:31:41 +00:00 |
|
Chris Lattner
|
3b57a833a5
|
remove more unneeded type info
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30793 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 06:27:03 +00:00 |
|
Chris Lattner
|
aab370db24
|
remove unneeded definitions and type info
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30792 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 06:19:41 +00:00 |
|
Chris Lattner
|
15258d5f9d
|
remove some unneeded type info
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30791 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 06:17:43 +00:00 |
|
Chris Lattner
|
845fb75536
|
simplify patterns by merging in operand info
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30790 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 05:50:25 +00:00 |
|
Chris Lattner
|
d1b651d5de
|
Factor operands into packed unary classes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30789 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 05:47:20 +00:00 |
|
Chris Lattner
|
dc5aa21b10
|
remove dead/duplicate instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30788 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 05:41:52 +00:00 |
|
Chris Lattner
|
a0ea63db75
|
Pull operand info up into parent class for scalar sse intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30787 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 05:26:13 +00:00 |
|
Chris Lattner
|
86c1b3a2fd
|
convert the sole sd unary intrinsic to a multiclass for consistency
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30786 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 05:19:31 +00:00 |
|
Chris Lattner
|
3b8378552e
|
pull operand string into the multiclass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30785 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 05:13:26 +00:00 |
|
Chris Lattner
|
9498ed8ac9
|
Remove RSQRTSS[rm] RCPSS[rm], which are dead.
Introduce SS_IntUnary, a multiclass to replace SS_Int[rm].
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30784 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 05:09:48 +00:00 |
|
Chris Lattner
|
4cc84edd3b
|
eliminate redundancy
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30783 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-07 04:52:09 +00:00 |
|
Chris Lattner
|
0c79fed5f9
|
Set the jt section
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30781 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-06 22:52:33 +00:00 |
|
Chris Lattner
|
111c2fa2a0
|
Alpha uses a got
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30778 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-06 22:46:51 +00:00 |
|
Rafael Espindola
|
935b1f8fce
|
add optional input flag to FMRRD
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30774 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-06 20:33:26 +00:00 |
|
Rafael Espindola
|
614057b843
|
add support for calling functions that return double
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30771 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-06 19:10:05 +00:00 |
|
Evan Cheng
|
3cff9f8947
|
80 col violation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30770 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-06 18:57:51 +00:00 |
|
Chris Lattner
|
6e1f1fdd35
|
ugly codegen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30769 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-06 17:39:34 +00:00 |
|
Rafael Espindola
|
af1dabef35
|
fix some bugs affecting functions with no arguments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30767 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-06 17:26:30 +00:00 |
|
Rafael Espindola
|
1b5076887e
|
fix the stack alignment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30766 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-06 14:29:47 +00:00 |
|
Rafael Espindola
|
4a408d46d4
|
add support for calling functions that have double arguments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30765 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-06 12:50:22 +00:00 |
|
Evan Cheng
|
a26eb5e1a7
|
Still need to support -mcpu=<> or cross compilation will fail. Doh.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30764 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-06 09:17:41 +00:00 |
|
Evan Cheng
|
abc346ceda
|
Do away with CPU feature list. Just use CPUID to detect MMX, SSE, SSE2, SSE3, and 64-bit support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30763 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-06 08:21:07 +00:00 |
|
Evan Cheng
|
88c1578011
|
It appears the inline asm in GetCpuIDAndInfo() may clobbers some registers if it isn't inlined (at < -O3). Force it to be inlined.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30762 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-06 07:50:56 +00:00 |
|
Evan Cheng
|
786225adf0
|
Make use of getStore().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30759 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 23:01:46 +00:00 |
|
Rafael Espindola
|
39b5a21259
|
use a const ref for passing the vector to ArgumentLayout
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30756 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 17:46:48 +00:00 |
|
Rafael Espindola
|
a284584352
|
implement a ArgumentLayout class to factor code common to LowerFORMAL_ARGUMENTS and LowerCALL
implement FMDRR
add support for f64 function arguments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30754 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 16:48:49 +00:00 |
|
Chris Lattner
|
1907a7b37b
|
Lower some min/max idioms to minss/maxss when unsafe fp math is enabled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30748 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 04:11:26 +00:00 |
|
Chris Lattner
|
a66ba5f70b
|
Don't bother setting JumpTableTextSection, it is about to disappear
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30745 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 03:13:59 +00:00 |
|
Chris Lattner
|
1da31ee472
|
Pass the MachineFunction into EmitJumpTableInfo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30742 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 03:01:21 +00:00 |
|
Chris Lattner
|
edad2b783f
|
implement and use getSectionForFunction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30741 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 02:51:36 +00:00 |
|
Chris Lattner
|
6f6f69950f
|
Use getSectionForFunction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30740 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 02:49:23 +00:00 |
|
Chris Lattner
|
29bd9e12d4
|
Use getSectionForFunction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30739 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 02:48:40 +00:00 |
|
Chris Lattner
|
6e79629dab
|
use getSectionForFunction to decide which section to emit code into
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30738 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 02:47:13 +00:00 |
|
Chris Lattner
|
afbfdeddff
|
Implement getSectionForFunction, use it when printing function body.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30737 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 02:43:52 +00:00 |
|
Chris Lattner
|
9b7ce7da82
|
Move getSectionForFunction to AsmPrinter, change it to return a string.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30735 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 02:42:20 +00:00 |
|
Chris Lattner
|
b56dcc453e
|
implement DarwinTargetAsmInfo::getSectionForFunction, use it when outputting
function bodies
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30733 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 00:35:50 +00:00 |
|
Chris Lattner
|
f5b10ec509
|
Give TargetAsmInfo a virtual dtor, add a new getSectionForFunction method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30732 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 00:35:16 +00:00 |
|
Chris Lattner
|
fea13d33e5
|
emit jump table before debug info
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30731 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 00:26:05 +00:00 |
|
Chris Lattner
|
37dfa02788
|
Always emit the jump table after the function so it's part of the same 'atom'
as the function body.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30730 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-05 00:24:46 +00:00 |
|
Evan Cheng
|
e111303408
|
Added option -disable-x86-shuffle-opti to disable X86 specific vector shuffle optimizations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30723 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-10-04 18:33:38 +00:00 |
|