summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Allows debugging llc self hosted.Jim Laskey2006-11-091-2/+7
| | | | llvm-svn: 31594
* Merging dwarf info to a single compile unit.Jim Laskey2006-11-091-117/+104
| | | | llvm-svn: 31593
* implement load effective address similar to the alpha backendRafael Espindola2006-11-094-82/+15
| | | | | | remove lea_addri and the now unused memri addressing mode llvm-svn: 31592
* silence warningsChris Lattner2006-11-091-2/+2
| | | | llvm-svn: 31587
* Teach ShrinkDemandedConstant how to handle X+C. This implements:Chris Lattner2006-11-091-1/+100
| | | | | | add.ll:test33, add.ll:test34, shift-sra.ll:test2 llvm-svn: 31586
* getPostIndexedAddressParts change: passes in load/store instead of its ↵Evan Cheng2006-11-091-3/+1
| | | | | | loaded / stored VT. llvm-svn: 31584
* Remove M_2_ADDR_FLAG.Evan Cheng2006-11-093-7/+9
| | | | llvm-svn: 31583
* Added indexed store node and patfrag's.Evan Cheng2006-11-081-11/+131
| | | | llvm-svn: 31576
* Bump the bytecode version number to 7. Implement upgrade of version 6 andReid Spencer2006-11-083-29/+107
| | | | | | version 6 bytecode. llvm-svn: 31573
* Use movl+xchgl instead of pushl+popl.Evan Cheng2006-11-081-3/+2
| | | | llvm-svn: 31572
* Match tblegen changes.Evan Cheng2006-11-084-40/+51
| | | | llvm-svn: 31571
* Match more post-indexed ops.Evan Cheng2006-11-081-2/+6
| | | | llvm-svn: 31569
* reenable factoring of GEP expressions, being more precise about theChris Lattner2006-11-081-5/+10
| | | | | | case that it bad to do. llvm-svn: 31563
* make this code more efficient by not creating a phi node we are just going toChris Lattner2006-11-081-36/+33
| | | | | | delete in the first place. This also makes it simpler. llvm-svn: 31562
* Remove redundant <cmath>.Jim Laskey2006-11-0811-11/+0
| | | | llvm-svn: 31561
* disable this factoring optzn for GEPs for now, this severely pessimizes someChris Lattner2006-11-081-1/+1
| | | | | | loops. llvm-svn: 31560
* initial implementation of addressing mode 2Rafael Espindola2006-11-084-15/+72
| | | | | | TODO: fix lea_addri llvm-svn: 31552
* Include llvm/Support/DataTypes.h to define intptr_t.John Criswell2006-11-081-0/+1
| | | | | | This fixes the build on OpenBSD and potentially other systems. llvm-svn: 31550
* Now can re-enable debug label folding.Jim Laskey2006-11-081-3/+0
| | | | llvm-svn: 31549
* Split FunctionPassManager_New into FunctionPassManager_New and ↵Devang Patel2006-11-081-10/+34
| | | | | | | | | FunctionPassManagerImpl_New. FunctionPassManagerImpl_New implements the pass manager. FunctionPassManager_New is the public interface. llvm-svn: 31547
* Split PassManager_New into PassManager_New and PassManagerImpl_New.Devang Patel2006-11-081-4/+61
| | | | | | | PassManagerImpl_New implements the pass manager. PassManager_New is the public interface. llvm-svn: 31546
* Move BasicBlockPassManager_New, FunctionPassManager_New andDevang Patel2006-11-081-1/+86
| | | | | | | ModulePassManager_New class declarations from PassManager.h to PassManager.cpp llvm-svn: 31545
* - When performing pre-/post- indexed load/store transformation, do not worryEvan Cheng2006-11-081-90/+29
| | | | | | | | about whether the new base ptr would be live below the load/store. Let two address pass split it back to non-indexed ops. - Minor tweaks / fixes. llvm-svn: 31544
* Fixed a minor bug preventing some pre-indexed load / store transformation.Evan Cheng2006-11-081-3/+3
| | | | llvm-svn: 31543
* For PR950:Reid Spencer2006-11-0821-3272/+4354
| | | | | | | | This patch converts the old SHR instruction into two instructions, AShr (Arithmetic) and LShr (Logical). The Shr instructions now are not dependent on the sign of their operands. llvm-svn: 31542
* regenerateChris Lattner2006-11-084-4045/+3042
| | | | llvm-svn: 31539
* Fix a bug noticed by Emil Mikulic.Chris Lattner2006-11-081-2/+2
| | | | llvm-svn: 31538
* Fix a obscure post-indexed load / store dag combine bug.Evan Cheng2006-11-081-1/+1
| | | | llvm-svn: 31537
* Refactor all the addressing mode selection stuff into the isel loweringChris Lattner2006-11-083-229/+325
| | | | | | class, where it can be used for preinc formation. llvm-svn: 31536
* correct the (currently unused) pattern for lwzu.Chris Lattner2006-11-081-2/+8
| | | | llvm-svn: 31535
* Beautify.Devang Patel2006-11-081-19/+17
| | | | llvm-svn: 31533
* optimize single MBB loops better. In particular, produce:Chris Lattner2006-11-081-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | LBB1_57: #bb207.i movl 72(%esp), %ecx movb (%ecx,%eax), %cl movl 80(%esp), %edx movb %cl, 1(%edx,%eax) incl %eax cmpl $143, %eax jne LBB1_57 #bb207.i jmp LBB1_64 #cond_next255.i intead of: LBB1_57: #bb207.i movl 72(%esp), %ecx movb (%ecx,%eax), %cl movl 80(%esp), %edx movb %cl, 1(%edx,%eax) incl %eax cmpl $143, %eax je LBB1_64 #cond_next255.i jmp LBB1_57 #bb207.i This eliminates a branch per iteration of the loop. This hurted PPC particularly, because the extra branch meant another dispatch group for each iteration of the loop. llvm-svn: 31530
* Update new pass managers to use PassManagerAnalysisHelper API.Devang Patel2006-11-071-6/+21
| | | | llvm-svn: 31526
* scalarrepl should not split the two elements of the vsiidx array:Chris Lattner2006-11-071-3/+7
| | | | | | | | | | | | | | | int func(vFloat v0, vFloat v1) { int ii; vSInt32 vsiidx[2]; vsiidx[0] = _mm_cvttps_epi32(v0); vsiidx[1] = _mm_cvttps_epi32(v1); ii = ((int *) vsiidx)[4]; return ii; } This fixes Transforms/ScalarRepl/2006-11-07-InvalidArrayPromote.ll llvm-svn: 31524
* Introduce PassManagerAnalysisHelper.Devang Patel2006-11-071-0/+40
| | | | llvm-svn: 31522
* Add PassManager_New.Devang Patel2006-11-071-0/+41
| | | | llvm-svn: 31521
* Fixed a bug which causes x86 be to incorrectly matchEvan Cheng2006-11-073-5/+30
| | | | | | | | | | | shuffle v, undef, <2, ?, 3, ?> to movhlps It should match to unpckhps instead. Added proper matching code for shuffle v, undef, <2, 3, 2, 3> llvm-svn: 31519
* Add ModulePassManager_New.Devang Patel2006-11-071-1/+54
| | | | llvm-svn: 31517
* Accidently reran commit.Jim Laskey2006-11-071-0/+3
| | | | llvm-svn: 31516
* Add FunctionPassManager_New.Devang Patel2006-11-071-0/+56
| | | | llvm-svn: 31515
* Missed a label map, reverting till covered.Jim Laskey2006-11-071-3/+0
| | | | llvm-svn: 31514
* Add BasicBlockPassManager_New.Devang Patel2006-11-071-0/+56
| | | | llvm-svn: 31513
* Missed a label map, reverting till covered.Jim Laskey2006-11-071-0/+3
| | | | llvm-svn: 31512
* Optionally allow comparison operations from affect DSGraphsAndrew Lenharth2006-11-071-1/+6
| | | | llvm-svn: 31511
* Allow loop detection during debug in forwarding nodes, and revert auxcall ↵Andrew Lenharth2006-11-071-8/+20
| | | | | | patch as it make 176.gcc untenable llvm-svn: 31510
* debug type for DSA TDAndrew Lenharth2006-11-071-1/+1
| | | | llvm-svn: 31509
* 1. Add a pass to fold debug label instructions so a debug info client can detectJim Laskey2006-11-073-48/+94
| | | | | | | | | | | | | empty ranges. 2. Reorg how MachineDebugInfo maintains changes to debug labels. 3. Have dwarf writer use debug label info to simplify scopes and source line coorespondence. 4. Revert the merging of compile units until I can get the bugs ironed out. llvm-svn: 31507
* add a note from viterbiChris Lattner2006-11-071-0/+29
| | | | llvm-svn: 31506
* Enable improved spilling costs by default. This speeds up viterbi on x86Chris Lattner2006-11-071-12/+7
| | | | | | | | by 40%, FreeBench/fourinarow by 20%, and many other programs 10-25%. On PPC, this speeds up fourinarow by 18%, and probably other things as well. llvm-svn: 31504
* Use correct value for float HUGH_VAL.Jim Laskey2006-11-072-6/+6
| | | | llvm-svn: 31500
OpenPOWER on IntegriCloud