Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Use branch reversal to do stuff like this: | Chris Lattner | 2006-10-21 | 1 | -0/+14 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | call L_strcmp$stub testl %eax, %eax - jne LBB26_208 #cond_true6020 - jmp LBB26_227 #bb7119 + je LBB26_227 #bb7119 LBB26_208: #cond_true6020 movl $l31_str14, 4(%esp) testl %eax, %eax - jne LBB26_704 #cond_true13042 - jmp LBB26_713 #bb13151 + je LBB26_713 #bb13151 LBB26_704: #cond_true13042 movl $_str52, 4(%esp) cmpl 76(%ecx), %eax - jge LBB26_1628 #cond_false63.i.i - jmp LBB26_1769 #_Z8makeGridP13mrSurfaceListidiidd.exit.i + jl LBB26_1769 #_Z8makeGridP13mrSurfaceListidiidd.exit.i LBB26_1628: #cond_false63.i.i movl $0, 48964(%esp) llvm-svn: 31100 | |||||
* | Implement support for branch condition reversal. | Chris Lattner | 2006-10-21 | 2 | -2/+33 | |
| | | | | llvm-svn: 31099 | |||||
* | Transform code like: | Chris Lattner | 2006-10-21 | 1 | -2/+13 | |
| | | | | | | | | | | | | | | | jle FOO jmp BAR BAR: into: jle FOO BAR: ... whoa! llvm-svn: 31098 | |||||
* | Simplify code, no functionality change | Chris Lattner | 2006-10-21 | 2 | -8/+4 | |
| | | | | llvm-svn: 31097 | |||||
* | implement support for inserting a cond branch | Chris Lattner | 2006-10-21 | 1 | -4/+8 | |
| | | | | llvm-svn: 31096 | |||||
* | allow insertion of a conditional branch with fall-through | Chris Lattner | 2006-10-21 | 1 | -6/+12 | |
| | | | | llvm-svn: 31095 | |||||
* | Three changes: | Chris Lattner | 2006-10-21 | 1 | -117/+117 | |
| | | | | | | | | | | | | 1. Remove a bunch of ifdef'd code. 2. When a block just contains an uncond branch, change all blocks branching to it to jump to the destination instead. 3. If branch analysis tells us some edges in the machinecfg are not actually possible, remove them. #2 triggers a suprisingly large number of times. llvm-svn: 31094 | |||||
* | update assert message | Chris Lattner | 2006-10-21 | 1 | -1/+1 | |
| | | | | llvm-svn: 31093 | |||||
* | Add an experimental cross-jumping implementation. | Chris Lattner | 2006-10-21 | 1 | -13/+231 | |
| | | | | | | | This is currently disabled by default and limited in several ways, but does have a positive effect. llvm-svn: 31090 | |||||
* | implement MachineOperand::isIdenticalTo | Chris Lattner | 2006-10-20 | 1 | -0/+29 | |
| | | | | llvm-svn: 31088 | |||||
* | llvm-extract should remove module-level asm | Chris Lattner | 2006-10-20 | 1 | -3/+3 | |
| | | | | llvm-svn: 31086 | |||||
* | bugfix | Chris Lattner | 2006-10-20 | 1 | -1/+1 | |
| | | | | llvm-svn: 31074 | |||||
* | Fix an ugly problem in SCCP. This fixes Benchmarks/Misc-C++/mandel-text.cpp | Chris Lattner | 2006-10-20 | 1 | -2/+3 | |
| | | | | llvm-svn: 31073 | |||||
* | Fix miscompilation of MallocBench/espresso which code review pointed out | Chris Lattner | 2006-10-20 | 1 | -1/+1 | |
| | | | | | | but apparently didn't make it into the final patch. llvm-svn: 31070 | |||||
* | Make flag and chain edges visually distinguishable from value edges in DOT | Chris Lattner | 2006-10-20 | 1 | -1/+16 | |
| | | | | | | output. llvm-svn: 31067 | |||||
* | Implement branch analysis/xform hooks required by the branch folding pass. | Chris Lattner | 2006-10-20 | 4 | -87/+229 | |
| | | | | llvm-svn: 31065 | |||||
* | For PR950: | Reid Spencer | 2006-10-20 | 56 | -3913/+4943 | |
| | | | | | | | | This patch implements the first increment for the Signless Types feature. All changes pertain to removing the ConstantSInt and ConstantUInt classes in favor of just using ConstantInt. llvm-svn: 31063 | |||||
* | While creating mask, use 1ULL instead of 1. | Devang Patel | 2006-10-20 | 1 | -1/+1 | |
| | | | | llvm-svn: 31062 | |||||
* | Fix SimplifyCFG/2006-10-19-UncondDiv.ll by disabling a bad xform. | Chris Lattner | 2006-10-20 | 1 | -23/+40 | |
| | | | | llvm-svn: 31061 | |||||
* | add a method to determine whether evaluation of a constant can trap. | Chris Lattner | 2006-10-20 | 1 | -0/+27 | |
| | | | | llvm-svn: 31059 | |||||
* | Partially in response to PR926: insert the newly created machine basic | Bill Wendling | 2006-10-19 | 1 | -8/+17 | |
| | | | | | | | | blocks into the basic block list when lowering the switch inst. into a binary tree of if-then statements. This allows the "visitSwitchCase" func to allow for fall-through behavior. llvm-svn: 31057 | |||||
* | It is OK to remove extra cast if operation is EQ/NE even though source | Devang Patel | 2006-10-19 | 1 | -2/+3 | |
| | | | | | | and destination sign may not match but other conditions are met. llvm-svn: 31056 | |||||
* | Typo Typo. | Devang Patel | 2006-10-19 | 1 | -1/+1 | |
| | | | | llvm-svn: 31055 | |||||
* | Typo. | Devang Patel | 2006-10-19 | 1 | -1/+1 | |
| | | | | llvm-svn: 31054 | |||||
* | Fix bug in PR454 resolution. Added new test case. | Devang Patel | 2006-10-19 | 1 | -1/+15 | |
| | | | | | | This fixes llvmAsmParser.cpp miscompile by llvm on PowerPC Darwin. llvm-svn: 31053 | |||||
* | use Pat to implement extloadi8 and extloadi16 | Rafael Espindola | 2006-10-19 | 1 | -8/+5 | |
| | | | | llvm-svn: 31052 | |||||
* | implement undef | Rafael Espindola | 2006-10-19 | 1 | -0/+8 | |
| | | | | llvm-svn: 31049 | |||||
* | print common symbols | Rafael Espindola | 2006-10-19 | 1 | -17/+33 | |
| | | | | llvm-svn: 31048 | |||||
* | implement extloadi8 and extloadi16 | Rafael Espindola | 2006-10-19 | 1 | -0/+8 | |
| | | | | llvm-svn: 31047 | |||||
* | expand SIGN_EXTEND_INREG | Rafael Espindola | 2006-10-19 | 1 | -0/+4 | |
| | | | | llvm-svn: 31046 | |||||
* | expand brind so that we don't have to implement jump tables right now | Rafael Espindola | 2006-10-19 | 1 | -0/+1 | |
| | | | | llvm-svn: 31045 | |||||
* | Beef up the output from DiffFilesWithTolerance by setting the error code | Reid Spencer | 2006-10-18 | 1 | -3/+16 | |
| | | | | | | | to describe the difference being reported. This assists with understanding differences an llvm-test and should help with bugpoint too. llvm-svn: 31044 | |||||
* | Add option for controlling inclusion of global AA. | Jim Laskey | 2006-10-18 | 1 | -6/+12 | |
| | | | | llvm-svn: 31040 | |||||
* | fit in 80 cols | Chris Lattner | 2006-10-18 | 1 | -12/+12 | |
| | | | | llvm-svn: 31039 | |||||
* | add a note | Chris Lattner | 2006-10-18 | 1 | -0/+5 | |
| | | | | llvm-svn: 31038 | |||||
* | add blx | Rafael Espindola | 2006-10-18 | 1 | -0/+1 | |
| | | | | llvm-svn: 31037 | |||||
* | add isTerminatortto b and bcond | Rafael Espindola | 2006-10-18 | 1 | -7/+9 | |
| | | | | llvm-svn: 31036 | |||||
* | Use global info for alias analysis. | Jim Laskey | 2006-10-18 | 1 | -9/+38 | |
| | | | | llvm-svn: 31035 | |||||
* | implement CallingConv::Fast as CallingConv::C | Rafael Espindola | 2006-10-18 | 1 | -1/+3 | |
| | | | | llvm-svn: 31034 | |||||
* | Fixed mingw\cygwin linkonce linkage once again. | Anton Korobeynikov | 2006-10-18 | 2 | -27/+9 | |
| | | | | | | | | | | Added workaround for linker bug with linkonce sections. Changed sections prefix to allow linker merge them (PE loader doesn't like too much long-named sections :) ) All of this unbreaks libstdc++ on mingw32 allowing (small) programs to be compiled, linked and run. llvm-svn: 31033 | |||||
* | Add support for the new "target data" information in .ll files. This provides | Owen Anderson | 2006-10-18 | 5 | -2372/+2224 | |
| | | | | | | | | | a better encoding of the targets data layout, rather than trying to guess it from the endianness and pointersize like before. Update the generated files. llvm-svn: 31031 | |||||
* | Add support for the new "target data" information in .ll files. This provides | Owen Anderson | 2006-10-18 | 3 | -0/+10 | |
| | | | | | | | a better encoding of the targets data layout, rather than trying to guess it from the endianness and pointersize like before. llvm-svn: 31030 | |||||
* | set the ppc64 stack pointer right, dynamic alloca now works for ppc64 | Chris Lattner | 2006-10-18 | 1 | -1/+5 | |
| | | | | llvm-svn: 31028 | |||||
* | Expand alloca for ppc64 | Chris Lattner | 2006-10-18 | 1 | -1/+2 | |
| | | | | llvm-svn: 31027 | |||||
* | Teach the branch folder to update debug info if it removes blocks with line | Chris Lattner | 2006-10-17 | 1 | -2/+23 | |
| | | | | | | # notes in it. llvm-svn: 31026 | |||||
* | add a method to remove a line # record. | Chris Lattner | 2006-10-17 | 1 | -0/+14 | |
| | | | | llvm-svn: 31025 | |||||
* | expose DWARF_LABEL opcode# so the branch folder can update debug info properly. | Chris Lattner | 2006-10-17 | 3 | -0/+19 | |
| | | | | llvm-svn: 31024 | |||||
* | Do not leak all of the SourceLineInfo objects. Do not bother mallocing each | Chris Lattner | 2006-10-17 | 2 | -14/+15 | |
| | | | | | | one separately. llvm-svn: 31022 | |||||
* | Trivial patch to speed up legalizing common i64 constants. | Chris Lattner | 2006-10-17 | 1 | -0/+7 | |
| | | | | llvm-svn: 31020 | |||||
* | Fix CodeGen/PowerPC/2006-10-17-brcc-miscompile.ll | Chris Lattner | 2006-10-17 | 1 | -1/+1 | |
| | | | | llvm-svn: 31019 |