summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Use branch reversal to do stuff like this:Chris Lattner2006-10-211-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 Lattner2006-10-212-2/+33
| | | | llvm-svn: 31099
* Transform code like:Chris Lattner2006-10-211-2/+13
| | | | | | | | | | | | | | | jle FOO jmp BAR BAR: into: jle FOO BAR: ... whoa! llvm-svn: 31098
* Simplify code, no functionality changeChris Lattner2006-10-212-8/+4
| | | | llvm-svn: 31097
* implement support for inserting a cond branchChris Lattner2006-10-211-4/+8
| | | | llvm-svn: 31096
* allow insertion of a conditional branch with fall-throughChris Lattner2006-10-211-6/+12
| | | | llvm-svn: 31095
* Three changes:Chris Lattner2006-10-211-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 messageChris Lattner2006-10-211-1/+1
| | | | llvm-svn: 31093
* Add an experimental cross-jumping implementation.Chris Lattner2006-10-211-13/+231
| | | | | | | This is currently disabled by default and limited in several ways, but does have a positive effect. llvm-svn: 31090
* implement MachineOperand::isIdenticalToChris Lattner2006-10-201-0/+29
| | | | llvm-svn: 31088
* llvm-extract should remove module-level asmChris Lattner2006-10-201-3/+3
| | | | llvm-svn: 31086
* bugfixChris Lattner2006-10-201-1/+1
| | | | llvm-svn: 31074
* Fix an ugly problem in SCCP. This fixes Benchmarks/Misc-C++/mandel-text.cppChris Lattner2006-10-201-2/+3
| | | | llvm-svn: 31073
* Fix miscompilation of MallocBench/espresso which code review pointed outChris Lattner2006-10-201-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 DOTChris Lattner2006-10-201-1/+16
| | | | | | output. llvm-svn: 31067
* Implement branch analysis/xform hooks required by the branch folding pass.Chris Lattner2006-10-204-87/+229
| | | | llvm-svn: 31065
* For PR950:Reid Spencer2006-10-2056-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 Patel2006-10-201-1/+1
| | | | llvm-svn: 31062
* Fix SimplifyCFG/2006-10-19-UncondDiv.ll by disabling a bad xform.Chris Lattner2006-10-201-23/+40
| | | | llvm-svn: 31061
* add a method to determine whether evaluation of a constant can trap.Chris Lattner2006-10-201-0/+27
| | | | llvm-svn: 31059
* Partially in response to PR926: insert the newly created machine basicBill Wendling2006-10-191-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 sourceDevang Patel2006-10-191-2/+3
| | | | | | and destination sign may not match but other conditions are met. llvm-svn: 31056
* Typo Typo.Devang Patel2006-10-191-1/+1
| | | | llvm-svn: 31055
* Typo.Devang Patel2006-10-191-1/+1
| | | | llvm-svn: 31054
* Fix bug in PR454 resolution. Added new test case.Devang Patel2006-10-191-1/+15
| | | | | | This fixes llvmAsmParser.cpp miscompile by llvm on PowerPC Darwin. llvm-svn: 31053
* use Pat to implement extloadi8 and extloadi16Rafael Espindola2006-10-191-8/+5
| | | | llvm-svn: 31052
* implement undefRafael Espindola2006-10-191-0/+8
| | | | llvm-svn: 31049
* print common symbolsRafael Espindola2006-10-191-17/+33
| | | | llvm-svn: 31048
* implement extloadi8 and extloadi16Rafael Espindola2006-10-191-0/+8
| | | | llvm-svn: 31047
* expand SIGN_EXTEND_INREGRafael Espindola2006-10-191-0/+4
| | | | llvm-svn: 31046
* expand brind so that we don't have to implement jump tables right nowRafael Espindola2006-10-191-0/+1
| | | | llvm-svn: 31045
* Beef up the output from DiffFilesWithTolerance by setting the error codeReid Spencer2006-10-181-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 Laskey2006-10-181-6/+12
| | | | llvm-svn: 31040
* fit in 80 colsChris Lattner2006-10-181-12/+12
| | | | llvm-svn: 31039
* add a noteChris Lattner2006-10-181-0/+5
| | | | llvm-svn: 31038
* add blxRafael Espindola2006-10-181-0/+1
| | | | llvm-svn: 31037
* add isTerminatortto b and bcondRafael Espindola2006-10-181-7/+9
| | | | llvm-svn: 31036
* Use global info for alias analysis.Jim Laskey2006-10-181-9/+38
| | | | llvm-svn: 31035
* implement CallingConv::Fast as CallingConv::CRafael Espindola2006-10-181-1/+3
| | | | llvm-svn: 31034
* Fixed mingw\cygwin linkonce linkage once again.Anton Korobeynikov2006-10-182-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 providesOwen Anderson2006-10-185-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 providesOwen Anderson2006-10-183-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 ppc64Chris Lattner2006-10-181-1/+5
| | | | llvm-svn: 31028
* Expand alloca for ppc64Chris Lattner2006-10-181-1/+2
| | | | llvm-svn: 31027
* Teach the branch folder to update debug info if it removes blocks with lineChris Lattner2006-10-171-2/+23
| | | | | | # notes in it. llvm-svn: 31026
* add a method to remove a line # record.Chris Lattner2006-10-171-0/+14
| | | | llvm-svn: 31025
* expose DWARF_LABEL opcode# so the branch folder can update debug info properly.Chris Lattner2006-10-173-0/+19
| | | | llvm-svn: 31024
* Do not leak all of the SourceLineInfo objects. Do not bother mallocing eachChris Lattner2006-10-172-14/+15
| | | | | | one separately. llvm-svn: 31022
* Trivial patch to speed up legalizing common i64 constants.Chris Lattner2006-10-171-0/+7
| | | | llvm-svn: 31020
* Fix CodeGen/PowerPC/2006-10-17-brcc-miscompile.llChris Lattner2006-10-171-1/+1
| | | | llvm-svn: 31019
OpenPOWER on IntegriCloud