| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | add the branch folding pass as a late cleanup pass for all targets. For now | Chris Lattner | 2006-10-13 | 1 | -0/+3 |
| | | | | | | | it just deletes empty MBB's. Soon it will do more :) llvm-svn: 30941 | ||||
| * | disable some objectionable code, maybe we can bring this pass to life | Chris Lattner | 2006-10-13 | 1 | -7/+42 |
| | | | | | llvm-svn: 30939 | ||||
| * | remove some dead code | Chris Lattner | 2006-10-13 | 2 | -43/+0 |
| | | | | | llvm-svn: 30938 | ||||
| * | add note | Chris Lattner | 2006-10-13 | 1 | -0/+19 |
| | | | | | llvm-svn: 30937 | ||||
| * | set isBarrier correctly | Chris Lattner | 2006-10-13 | 1 | -1/+4 |
| | | | | | llvm-svn: 30936 | ||||
| * | Correctly handle instruction separators. | Chris Lattner | 2006-10-13 | 1 | -14/+11 |
| | | | | | llvm-svn: 30935 | ||||
| * | Expose method and ivars for measuring inline asm length properly. | Chris Lattner | 2006-10-13 | 1 | -2/+18 |
| | | | | | llvm-svn: 30934 | ||||
| * | Move some warnings to debug mode. | Andrew Lenharth | 2006-10-13 | 4 | -21/+23 |
| | | | | | llvm-svn: 30933 | ||||
| * | add FNEGS and FNEGD | Rafael Espindola | 2006-10-13 | 1 | -0/+8 |
| | | | | | llvm-svn: 30932 | ||||
| * | Fix another dtor issue. The function local statics in this function were | Chris Lattner | 2006-10-13 | 1 | -32/+42 |
| | | | | | | | | being destroyed at inconvenient times. Switch to using non-local ManagedStatic objects, which actually also speeds up ConstRules::get. llvm-svn: 30931 | ||||
| * | add SBCS and SUBS | Rafael Espindola | 2006-10-13 | 1 | -0/+8 |
| | | | | | llvm-svn: 30930 | ||||
| * | implement calls to functions that return long | Rafael Espindola | 2006-10-13 | 1 | -9/+16 |
| | | | | | llvm-svn: 30929 | ||||
| * | implement unordered floating point compares | Rafael Espindola | 2006-10-13 | 2 | -28/+78 |
| | | | | | llvm-svn: 30928 | ||||
| * | Workaround for templates | Jim Laskey | 2006-10-13 | 1 | -0/+10 |
| | | | | | llvm-svn: 30927 | ||||
| * | Clean up dump. | Jim Laskey | 2006-10-13 | 1 | -2/+2 |
| | | | | | llvm-svn: 30926 | ||||
| * | avoid a ctor/dtor issue with the ProgramName global. | Chris Lattner | 2006-10-13 | 1 | -3/+9 |
| | | | | | llvm-svn: 30925 | ||||
| * | shrink anon-ns and mark stuff static. No functionality changes | Chris Lattner | 2006-10-12 | 1 | -10/+11 |
| | | | | | llvm-svn: 30922 | ||||
| * | add a note | Chris Lattner | 2006-10-12 | 1 | -0/+27 |
| | | | | | llvm-svn: 30921 | ||||
| * | Lower X%C into X/C+stuff. This allows the 'division by a constant' logic to | Chris Lattner | 2006-10-12 | 1 | -0/+24 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | apply to rems as well as divs. This fixes PR945 and speeds up ReedSolomon from 14.57s to 10.90s (which is now faster than gcc). It compiles CodeGen/X86/rem.ll into: _test1: subl $4, %esp movl %esi, (%esp) movl $2155905153, %ecx movl 8(%esp), %esi movl %esi, %eax imull %ecx addl %esi, %edx movl %edx, %eax shrl $31, %eax sarl $7, %edx addl %eax, %edx imull $255, %edx, %eax subl %eax, %esi movl %esi, %eax movl (%esp), %esi addl $4, %esp ret _test2: movl 4(%esp), %eax movl %eax, %ecx sarl $31, %ecx shrl $24, %ecx addl %eax, %ecx andl $4294967040, %ecx subl %ecx, %eax ret _test3: subl $4, %esp movl %esi, (%esp) movl $2155905153, %ecx movl 8(%esp), %esi movl %esi, %eax mull %ecx shrl $7, %edx imull $255, %edx, %eax subl %eax, %esi movl %esi, %eax movl (%esp), %esi addl $4, %esp ret instead of div/idiv instructions. llvm-svn: 30920 | ||||
| * | Add RemoveDeadNode to remove a dead node and its (potentially) dead operands. | Evan Cheng | 2006-10-12 | 1 | -0/+33 |
| | | | | | llvm-svn: 30916 | ||||
| * | add a minor dag combine noticed when looking at PR945 | Chris Lattner | 2006-10-12 | 1 | -0/+7 |
| | | | | | llvm-svn: 30915 | ||||
| * | Doh. This wasn't causing problems by luck. | Evan Cheng | 2006-10-12 | 1 | -1/+1 |
| | | | | | llvm-svn: 30914 | ||||
| * | Some X86ISD::CMP were created with wrong ValueType's. | Evan Cheng | 2006-10-12 | 1 | -9/+9 |
| | | | | | llvm-svn: 30913 | ||||
| * | Fix massive resource leaks in the bytecode reader. Reading a bytecode file | Chris Lattner | 2006-10-12 | 2 | -45/+46 |
| | | | | | | | | | | with ParseBytecodeFile used to leak both a ModuleProvider (and related bytecode parser stuff attached to it) AND a file descriptor, which was never closed. This prevented gccld/llvm-ld/llvm-link from linking together apps with more that ~252 .bc files on darwin. llvm-svn: 30912 | ||||
| * | mark call adjustments as modifying the SP | Chris Lattner | 2006-10-12 | 1 | -2/+2 |
| | | | | | llvm-svn: 30911 | ||||
| * | adjcallstack up/down clobbers the sp | Chris Lattner | 2006-10-12 | 1 | -2/+2 |
| | | | | | llvm-svn: 30910 | ||||
| * | adjcallstackup/down clobbers the stack pointer | Chris Lattner | 2006-10-12 | 1 | -2/+2 |
| | | | | | llvm-svn: 30909 | ||||
| * | mark adjcallstack up/down as clobbering and using the SP | Chris Lattner | 2006-10-12 | 1 | -2/+2 |
| | | | | | llvm-svn: 30908 | ||||
| * | Move the Imp tblgen class from the X86 backend to common code. | Chris Lattner | 2006-10-12 | 2 | -5/+7 |
| | | | | | llvm-svn: 30907 | ||||
| * | restore my previous patch, now that the X86 backend bug has been fixed: | Chris Lattner | 2006-10-12 | 1 | -17/+32 |
| | | | | | | | http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20061009/038518.html llvm-svn: 30906 | ||||
| * | Mark ADJCALLSTACKUP/DOWN as clobbering ESP so that virtregmap will notice | Chris Lattner | 2006-10-12 | 1 | -2/+6 |
| | | | | | | | that it can't assume ESP is unmodified across the instrs. llvm-svn: 30905 | ||||
| * | D'oh - need to use the rigth kind of store. | Jim Laskey | 2006-10-12 | 1 | -3/+6 |
| | | | | | llvm-svn: 30903 | ||||
| * | Backing out Chris' last commit. It's breaking llvm-gcc bootstrapping. | Evan Cheng | 2006-10-12 | 1 | -32/+17 |
| | | | | | | | | | | | | | | It's turning: movl -24(%ebp), %esp subl $16, %esp movl -24(%ebp), %ecx into movl -24(%ebp), %esp subl $16, %esp movl %esp, (%esp) llvm-svn: 30902 | ||||
| * | fix compilation failure of smg2000 | Chris Lattner | 2006-10-12 | 1 | -1/+1 |
| | | | | | llvm-svn: 30900 | ||||
| * | If we see a load from a stack slot into a physreg, consider it as providing | Chris Lattner | 2006-10-12 | 1 | -17/+32 |
| | | | | | | | the stack slot. This fixes PR943. llvm-svn: 30898 | ||||
| * | Replace custom dispatch code with two uses of InstVisitor. Improves | Nick Lewycky | 2006-10-12 | 1 | -93/+113 |
| | | | | | | | compile-time performance. llvm-svn: 30896 | ||||
| * | Fold "zero extending vector loads" now that evan added the chain manip stuff. | Chris Lattner | 2006-10-11 | 1 | -5/+52 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This compiles both tests in X86/vec_ss_load_fold.ll into: _test1: movss 4(%esp), %xmm0 subss LCPI1_0, %xmm0 mulss LCPI1_1, %xmm0 minss LCPI1_2, %xmm0 xorps %xmm1, %xmm1 maxss %xmm1, %xmm0 cvttss2si %xmm0, %eax andl $65535, %eax ret instead of: _test1: movss LCPI1_0, %xmm0 movss 4(%esp), %xmm1 subss %xmm0, %xmm1 movss LCPI1_1, %xmm0 mulss %xmm0, %xmm1 movss LCPI1_2, %xmm0 minss %xmm0, %xmm1 xorps %xmm0, %xmm0 maxss %xmm0, %xmm1 cvttss2si %xmm1, %eax andl $65535, %eax ret llvm-svn: 30894 | ||||
| * | ComplexPatterns sse_load_f32 and sse_load_f64 returns in / out chain operands. | Evan Cheng | 2006-10-11 | 2 | -9/+14 |
| | | | | | llvm-svn: 30892 | ||||
| * | Add properties to ComplexPattern. | Evan Cheng | 2006-10-11 | 6 | -13/+16 |
| | | | | | llvm-svn: 30891 | ||||
| * | Alias analysis of TRUNCSTORE. | Jim Laskey | 2006-10-11 | 1 | -1/+28 |
| | | | | | llvm-svn: 30889 | ||||
| * | Typo | Jim Laskey | 2006-10-11 | 1 | -1/+1 |
| | | | | | llvm-svn: 30884 | ||||
| * | Handle aliasing of loadext. | Jim Laskey | 2006-10-11 | 1 | -15/+19 |
| | | | | | llvm-svn: 30883 | ||||
| * | Reduce the amount of state in the lowering code and drop old pattern ISel ↵ | Andrew Lenharth | 2006-10-11 | 3 | -28/+27 |
| | | | | | | | functions llvm-svn: 30881 | ||||
| * | Fix regression in combiner alias analysis. | Jim Laskey | 2006-10-11 | 1 | -22/+33 |
| | | | | | llvm-svn: 30880 | ||||
| * | Naming consistency. | Evan Cheng | 2006-10-11 | 7 | -34/+34 |
| | | | | | llvm-svn: 30878 | ||||
| * | Use cute tblgen tricks to make zap handling more powerful. Specifically, | Chris Lattner | 2006-10-11 | 2 | -21/+70 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | when the dag combiner simplifies an and mask, notice this and allow those bits to be missing from the zap mask. This compiles Alpha/zapnot4.ll into: sll $16,3,$0 zapnot $0,3,$0 ret $31,($26),1 instead of: ldah $0,1($31) lda $0,-8($0) sll $16,3,$1 and $1,$0,$0 ret $31,($26),1 It would be *really* nice to replace the hunk of code in the AlphaISelDAGToDAG.cpp file that matches (and (srl (x, C), c2) into (SRL (ZAPNOTi)) with a similar pattern, but I've spent enough time poking at alpha. Make andrew will do this. llvm-svn: 30875 | ||||
| * | Jimptables working again on alpha. | Andrew Lenharth | 2006-10-11 | 9 | -30/+26 |
| | | | | | | | As a bonus, use the GOT node instead of the AlphaISD::GOT for internal stuff. llvm-svn: 30873 | ||||
| * | Remove dead/redundant instructions. These are handled by ZAPNOTi | Chris Lattner | 2006-10-11 | 1 | -6/+1 |
| | | | | | llvm-svn: 30872 | ||||
| * | add two helper methods. | Chris Lattner | 2006-10-11 | 1 | -1/+90 |
| | | | | | llvm-svn: 30869 | ||||
| * | This entry is done. switched to the gcc way of doing things. | Andrew Lenharth | 2006-10-11 | 1 | -150/+0 |
| | | | | | llvm-svn: 30867 | ||||

