Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Reflects ISD::LOAD / ISD::LOADX / LoadSDNode changes. | Evan Cheng | 2006-10-09 | 22 | -588/+665 |
| | | | | llvm-svn: 30844 | ||||
* | Merging ISD::LOAD and ISD::LOADX. Added LoadSDNode to represent load nodes. | Evan Cheng | 2006-10-09 | 3 | -32/+153 |
| | | | | | | | | | | | | | | Chain and address ptr remains as operands. SrcValue, extending mode, extending VT (or rather loaded VT before extension) are now instance variables of LoadSDNode. Introduce load / store addressing modes to represent pre- and post-indexed load and store. Also added an additional operand offset that is only used in post-indexed mode (i.e. base ptr += offset after load/store). Added alignment info (not yet used) and isVolatile fields. llvm-svn: 30843 | ||||
* | Do error checking. | Devang Patel | 2006-10-09 | 1 | -1/+8 |
| | | | | llvm-svn: 30842 | ||||
* | Remove a dead var noticed by Yorion | Chris Lattner | 2006-10-09 | 1 | -1/+0 |
| | | | | llvm-svn: 30841 | ||||
* | add some tests for floating point arithmetic | Rafael Espindola | 2006-10-09 | 1 | -0/+29 |
| | | | | llvm-svn: 30840 | ||||
* | Fix build error in gcc 3.4 and make more this general | Andrew Lenharth | 2006-10-09 | 1 | -1/+1 |
| | | | | llvm-svn: 30839 | ||||
* | Use GetTemporaryDirectory. Fix http://llvm.org/bugs/show_bug.cgi?id=894 | Devang Patel | 2006-10-09 | 1 | -2/+15 |
| | | | | llvm-svn: 30838 | ||||
* | Fix usage example. | Nick Lewycky | 2006-10-09 | 1 | -1/+1 |
| | | | | llvm-svn: 30837 | ||||
* | add float -> double and double -> float conversion | Rafael Espindola | 2006-10-09 | 2 | -0/+20 |
| | | | | llvm-svn: 30835 | ||||
* | Fix PR886: | Reid Spencer | 2006-10-09 | 4 | -2878/+3894 |
| | | | | | | | | | | The result of yyparse() was not being checked. When YYERROR or YYABORT is called it causes yyparse() to return 1 to indicate the error. The code was silently ignoring this situation because it previously expected either an exception or a null ParserResult to indicate an error. The patch corrects this situation. llvm-svn: 30834 | ||||
* | xfail this until andrew has a chance to implement the alpha TM method. | Chris Lattner | 2006-10-09 | 1 | -0/+2 |
| | | | | llvm-svn: 30833 | ||||
* | add a test for adds adcs | Rafael Espindola | 2006-10-09 | 1 | -1/+9 |
| | | | | llvm-svn: 30832 | ||||
* | Fix a bug pointed out by Zhongxing Xu | Chris Lattner | 2006-10-09 | 1 | -1/+1 |
| | | | | llvm-svn: 30831 | ||||
* | add ADDS and ADCS | Rafael Espindola | 2006-10-09 | 1 | -0/+8 |
| | | | | llvm-svn: 30830 | ||||
* | expand ISD::SELECT | Rafael Espindola | 2006-10-09 | 1 | -0/+2 |
| | | | | llvm-svn: 30829 | ||||
* | add a note | Rafael Espindola | 2006-10-09 | 1 | -0/+14 |
| | | | | llvm-svn: 30828 | ||||
* | expand ISD::EXTLOAD | Rafael Espindola | 2006-10-09 | 1 | -0/+2 |
| | | | | llvm-svn: 30827 | ||||
* | most ARM targets are little endian | Rafael Espindola | 2006-10-09 | 1 | -1/+1 |
| | | | | llvm-svn: 30826 | ||||
* | Implement SROA of unions with mixed pointers/integers in them. This implements | Chris Lattner | 2006-10-08 | 1 | -10/+16 |
| | | | | | | PR892 and Transforms/ScalarRepl/union-pointer.ll:test2 llvm-svn: 30825 | ||||
* | new testcase for PR892 | Chris Lattner | 2006-10-08 | 1 | -1/+29 |
| | | | | llvm-svn: 30824 | ||||
* | Implement Transforms/ScalarRepl/union-pointer.ll:test | Chris Lattner | 2006-10-08 | 1 | -9/+13 |
| | | | | llvm-svn: 30823 | ||||
* | new testcase for SROA for stuff like "union { int*, float* }". | Chris Lattner | 2006-10-08 | 1 | -0/+18 |
| | | | | llvm-svn: 30822 | ||||
* | Eliminate more token factors by taking advantage of transitivity: | Chris Lattner | 2006-10-08 | 1 | -0/+25 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | if TF depends on A and B, and A depends on B, TF just needs to depend on A. With Jim's alias-analysis stuff enabled, this compiles the testcase in PR892 into: __Z4test3Val: subl $44, %esp call L__Z3foov$stub movl %edx, 28(%esp) movl %eax, 32(%esp) movl %eax, 24(%esp) movl %edx, 36(%esp) movl 52(%esp), %ecx movl %ecx, 4(%esp) movl %eax, 8(%esp) movl %edx, 12(%esp) movl 48(%esp), %eax movl %eax, (%esp) call L__Z3bar3ValS_$stub addl $44, %esp ret instead of: __Z4test3Val: subl $44, %esp call L__Z3foov$stub movl %eax, 24(%esp) movl %edx, 28(%esp) movl 24(%esp), %eax movl %eax, 32(%esp) movl 28(%esp), %eax movl %eax, 36(%esp) movl 32(%esp), %eax movl 36(%esp), %ecx movl 52(%esp), %edx movl %edx, 4(%esp) movl %eax, 8(%esp) movl %ecx, 12(%esp) movl 48(%esp), %eax movl %eax, (%esp) call L__Z3bar3ValS_$stub addl $44, %esp ret llvm-svn: 30821 | ||||
* | Fix PR897 | Chris Lattner | 2006-10-08 | 1 | -0/+5 |
| | | | | llvm-svn: 30820 | ||||
* | Combiner alias analysis passes Multisource (release-asserts.) | Jim Laskey | 2006-10-07 | 1 | -88/+71 |
| | | | | llvm-svn: 30818 | ||||
* | completely disable folding of loads into scalar sse instructions and provide | Chris Lattner | 2006-10-07 | 2 | -14/+61 |
| | | | | | | | | | | a framework for doing it right. This fixes CodeGen/X86/2006-10-07-ScalarSSEMiscompile.ll. Once X86DAGToDAGISel::SelectScalarSSELoad is implemented right, this task will be done. llvm-svn: 30817 | ||||
* | new testcase we miscompile | Chris Lattner | 2006-10-07 | 1 | -0/+17 |
| | | | | llvm-svn: 30816 | ||||
* | convert packed FP add/sub/mul/div to use a multiclass. | Chris Lattner | 2006-10-07 | 1 | -63/+32 |
| | | | | llvm-svn: 30815 | ||||
* | one multiclass now defines all 8 variants of binary-scalar-sse-fp operations. | Chris Lattner | 2006-10-07 | 1 | -49/+64 |
| | | | | llvm-svn: 30814 | ||||
* | Switch ADD/MUL/DIV/SUB scalarsse fp ops to a multiclass | Chris Lattner | 2006-10-07 | 1 | -53/+27 |
| | | | | llvm-svn: 30813 | ||||
* | Random acts of shrinkage | Chris Lattner | 2006-10-07 | 1 | -34/+24 |
| | | | | llvm-svn: 30812 | ||||
* | Convert pand/por/pxor to use multiclass | Chris Lattner | 2006-10-07 | 1 | -25/+4 |
| | | | | llvm-svn: 30811 | ||||
* | Convert some more instructions over to use a new multiclass. | Chris Lattner | 2006-10-07 | 1 | -27/+19 |
| | | | | | | Fix a bug where the asmstring for PSUBQrm was wrong. llvm-svn: 30810 | ||||
* | Fix a bug where PADDQrm printed paddd instead of paddq. | Chris Lattner | 2006-10-07 | 1 | -1/+1 |
| | | | | llvm-svn: 30809 | ||||
* | Add multiclass for SSE2 instructions that correspond to simple binops. | Chris Lattner | 2006-10-07 | 1 | -56/+35 |
| | | | | llvm-svn: 30808 | ||||
* | rename: | Chris Lattner | 2006-10-07 | 1 | -40/+40 |
| | | | | | | | | | PDI_binop_rm -> PDI_binop_rm_int PDI_binop_rmi -> PDI_binop_rmi_int to make it clear that these are for use with intrinsics. llvm-svn: 30807 | ||||
* | Convert saturating PADD/PSUB's to use a multiclass | Chris Lattner | 2006-10-07 | 1 | -72/+10 |
| | | | | llvm-svn: 30806 | ||||
* | Convert PAVG*, PMADDWD, and PMUL* to use multiclasses. | Chris Lattner | 2006-10-07 | 1 | -84/+39 |
| | | | | llvm-svn: 30805 | ||||
* | Fix typo in packsswb instr definition, where the load had the wrong type. | Chris Lattner | 2006-10-07 | 1 | -15/+1 |
| | | | | | | This allows us to use the multiclass for other packs. llvm-svn: 30804 | ||||
* | implement FUITOS and FUITOD | Rafael Espindola | 2006-10-07 | 3 | -3/+48 |
| | | | | llvm-svn: 30803 | ||||
* | implement FLDD | Rafael Espindola | 2006-10-07 | 3 | -6/+19 |
| | | | | llvm-svn: 30802 | ||||
* | implement fadds, faddd, fmuls and fmuld | Rafael Espindola | 2006-10-07 | 1 | -0/+18 |
| | | | | llvm-svn: 30801 | ||||
* | handle pmin/pmax with multiclasses | Chris Lattner | 2006-10-07 | 1 | -50/+10 |
| | | | | llvm-svn: 30800 | ||||
* | regenerate | Chris Lattner | 2006-10-07 | 2 | -106/+108 |
| | | | | llvm-svn: 30799 | ||||
* | Bugfix: this allows multiclasses to have default arguments. | Chris Lattner | 2006-10-07 | 1 | -1/+2 |
| | | | | llvm-svn: 30798 | ||||
* | simplify pack and shift intrinsics with multiclasses | Chris Lattner | 2006-10-07 | 1 | -137/+46 |
| | | | | llvm-svn: 30797 | ||||
* | Use a multiclass to simplify 'SSE2 Integer comparison' | Chris Lattner | 2006-10-07 | 1 | -61/+19 |
| | | | | llvm-svn: 30796 | ||||
* | move class defns close to uses to make it easier to read | Chris Lattner | 2006-10-07 | 1 | -17/+18 |
| | | | | llvm-svn: 30795 | ||||
* | simplify horizontal op definitions | Chris Lattner | 2006-10-07 | 1 | -26/+21 |
| | | | | llvm-svn: 30794 | ||||
* | remove more unneeded type info | Chris Lattner | 2006-10-07 | 1 | -51/+51 |
| | | | | llvm-svn: 30793 |