1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-30 15:32:52 +01:00
Commit Graph

27527 Commits

Author SHA1 Message Date
Devang Patel
1bff0f0174 Keep track of analysis required by the passes. Force use of new pass
manager if a pass does not preserve analysis that is used by other
passes.

llvm-svn: 31659
2006-11-11 00:42:16 +00:00
Chris Lattner
671ea7a93b move big chunks of code out-of-line, no functionality change.
llvm-svn: 31658
2006-11-11 00:39:41 +00:00
Chris Lattner
b08574e218 enable this test, check ppc64 as well.
llvm-svn: 31657
2006-11-11 00:13:07 +00:00
Chris Lattner
9c5d395b0e ppc64 doesn't have lwau, don't attempt to form it.
llvm-svn: 31656
2006-11-11 00:08:42 +00:00
Reid Spencer
ecf811ba9d Allow ENABLE_OPTIMIZED=0 to turn off optimization (turn on debug).
llvm-svn: 31655
2006-11-11 00:00:31 +00:00
Chris Lattner
1aaa5f904c implement preinc support for r+i loads on ppc64
llvm-svn: 31654
2006-11-10 23:58:45 +00:00
Chris Lattner
65a873caa2 Fix InstCombine/2006-11-10-ashr-miscompile.ll a miscompilation introduced
by the shr -> [al]shr patch.  This was reduced from 176.gcc.

llvm-svn: 31653
2006-11-10 23:38:52 +00:00
Chris Lattner
cefc07dee0 This testcase is miscompiled by instcombine, reduced from 176.gcc
llvm-svn: 31652
2006-11-10 23:37:54 +00:00
Evan Cheng
922c8f63b0 Add a note.
llvm-svn: 31650
2006-11-10 22:09:17 +00:00
Evan Cheng
8c372dc9b3 These are done.
llvm-svn: 31649
2006-11-10 22:03:35 +00:00
Evan Cheng
ae1f3758bd Don't dag combine floating point select to max and min intrinsics. Those
take v4f32 / v2f64 operands and may end up causing larger spills / restores.
Added X86 specific nodes X86ISD::FMAX, X86ISD::FMIN instead.

This fixes PR996.

llvm-svn: 31645
2006-11-10 21:43:37 +00:00
Chris Lattner
1f61c6c84d Fix a dag combiner bug exposed by my recent instcombine patch. This fixes
CodeGen/Generic/2006-11-10-DAGCombineMiscompile.ll and PPC gsm/toast

llvm-svn: 31644
2006-11-10 21:37:15 +00:00
Chris Lattner
e71cee3678 new testcase
llvm-svn: 31643
2006-11-10 21:36:07 +00:00
Devang Patel
a9504181aa s/PassManagerAnalysisHelper/CommonPassManagerImpl
Inherit CommonPassManagerImpl from Pass.

llvm-svn: 31642
2006-11-10 21:33:13 +00:00
Evan Cheng
3a017e8abd Fix a bug in SelectScalarSSELoad. Since the load is wrapped in a
SCALAR_TO_VECTOR, even if the hasOneUse() check pass we may end up folding
the load into two instructions. Make sure we check the SCALAR_TO_VECTOR
has only one use as well.

llvm-svn: 31641
2006-11-10 21:23:04 +00:00
Jim Laskey
0f87e147f8 Must have a frame pointer argument fixed. Now fails on PowerPC.
llvm-svn: 31639
2006-11-10 17:56:29 +00:00
Jim Laskey
a3f992c804 Must have a frame pointer.
llvm-svn: 31638
2006-11-10 17:51:25 +00:00
Chris Lattner
5e975945a5 dform 8/9 are identical to dform 1
llvm-svn: 31637
2006-11-10 17:51:02 +00:00
Reid Spencer
01c3ecd9ed This is XFAILed on i[0-9]86 systems not Linux
llvm-svn: 31636
2006-11-10 17:47:28 +00:00
Jim Laskey
900444d686 Shut up the warning.
llvm-svn: 31635
2006-11-10 14:44:12 +00:00
Evan Cheng
de7ff3fa3d Fix a potential bug.
llvm-svn: 31634
2006-11-10 09:13:37 +00:00
Evan Cheng
013597778d Add implicit def / use operands to MachineInstr.
llvm-svn: 31633
2006-11-10 08:43:01 +00:00
Evan Cheng
b5ca73688b Add implicit def / use operands to MachineInstr.
llvm-svn: 31632
2006-11-10 08:32:14 +00:00
Evan Cheng
78ba99caa5 When forming a pre-indexed store, make sure ptr isn't the same or is a pred of value being stored. It would cause a cycle.
llvm-svn: 31631
2006-11-10 08:28:11 +00:00
Anton Korobeynikov
3d58e24167 Adding target triple to test
llvm-svn: 31630
2006-11-10 06:59:53 +00:00
Tanya Lattner
52070860e0 xfail for llvmgcc3
llvm-svn: 31629
2006-11-10 04:53:50 +00:00
Chris Lattner
efb62464b9 commentate
llvm-svn: 31627
2006-11-10 04:41:34 +00:00
Chris Lattner
1604b6a873 add an initial cut at preinc loads for ppc32. This is broken for ppc64
(because the 64-bit reg target versions aren't implemented yet), doesn't
support r+r addr modes, and doesn't handle stores, but it works otherwise. :)

This is disabled unless -enable-ppc-preinc is passed to llc for now.

llvm-svn: 31621
2006-11-10 02:08:47 +00:00
Chris Lattner
36b5ac0dd9 make this test more interesting
llvm-svn: 31619
2006-11-10 02:04:52 +00:00
Chris Lattner
6836cbaf9d allow ptr_rc to explicitly appear in an instructions operand list, it doesn't
have to be a subpart of a complex operand.

llvm-svn: 31618
2006-11-10 02:01:40 +00:00
Chris Lattner
15c49af63f add note about ugly codegen with preinc
llvm-svn: 31617
2006-11-10 01:33:53 +00:00
Evan Cheng
6f0095807e Use TargetInstrInfo::getNumOperands() instead of MachineInstr::getNumOperands(). In preparation for implicit reg def/use changes.
llvm-svn: 31616
2006-11-10 01:28:43 +00:00
Anton Korobeynikov
23ffdb1971 Fixing PR990: http://llvm.org/PR990.
This should unbreak csretcc on Linux & mingw targets. Several tests from
llvm-test should be also restored (fftbench, bigfib).

llvm-svn: 31613
2006-11-10 00:48:11 +00:00
Chris Lattner
48d2b0af37 add a note about viterbi
llvm-svn: 31612
2006-11-10 00:23:26 +00:00
Chris Lattner
4e6c828296 second patch to fix PR992/993.
llvm-svn: 31610
2006-11-09 23:36:08 +00:00
Chris Lattner
663de51886 new testcases for PR992/993
llvm-svn: 31609
2006-11-09 23:35:01 +00:00
Chris Lattner
23d3dac40a Minimal patch to fix PR992/PR993
llvm-svn: 31608
2006-11-09 23:17:45 +00:00
Reid Spencer
a6a6d83b1a Post-review changes on conversion instructions.
llvm-svn: 31607
2006-11-09 23:03:26 +00:00
Reid Spencer
9456e29646 Fix runaway <tt> element and section ordering.
llvm-svn: 31606
2006-11-09 21:48:10 +00:00
Reid Spencer
31c63cb092 Remove futurisms that won't be in our future.
llvm-svn: 31605
2006-11-09 21:42:14 +00:00
Reid Spencer
934534d8df One more time for indentation.
llvm-svn: 31604
2006-11-09 21:18:01 +00:00
Reid Spencer
72af785994 Fix indentation problem starting at GEP.
llvm-svn: 31603
2006-11-09 21:15:49 +00:00
Chris Lattner
fd15a7ef64 if lazy compilation is disabled, print an error message and abort if
lazy compilation is ever attempted

llvm-svn: 31602
2006-11-09 19:32:13 +00:00
Chris Lattner
ef18cdd6fb init ivar
llvm-svn: 31601
2006-11-09 19:31:15 +00:00
Chris Lattner
89e9bb620a allow clients to indicate that they never want lazy compilation.
llvm-svn: 31600
2006-11-09 19:30:47 +00:00
Evan Cheng
d7df1a37bc PPC supports i32 / i64 pre-inc load / store.
llvm-svn: 31599
2006-11-09 19:11:50 +00:00
Evan Cheng
17dd6dd46c Don't attempt expensive pre-/post- indexed dag combine if target does not support them.
llvm-svn: 31598
2006-11-09 19:10:46 +00:00
Evan Cheng
c050bb298f Add a mechanism to specify whether a target supports a particular indexed load / store.
llvm-svn: 31597
2006-11-09 18:56:43 +00:00
Evan Cheng
22bb3ba200 Rename ISD::MemOpAddrMode to ISD::MemIndexedMode
llvm-svn: 31596
2006-11-09 18:44:21 +00:00
Evan Cheng
89ee587963 Rename ISD::MemOpAddrMode to ISD::MemIndexedMode
llvm-svn: 31595
2006-11-09 17:55:04 +00:00