Chris Lattner [Sat, 11 Nov 2006 04:53:30 +0000 (04:53 +0000)]
allow the offset of a preinc'd load to be the low-part of a global. This
produces this clever code:
_millisecs:
lis r2, ha16(_Time.1182)
lwzu r3, lo16(_Time.1182)(r2)
lwz r2, 4(r2)
addic r4, r2, 1
addze r3, r3
blr
instead of this:
_millisecs:
lis r2, ha16(_Time.1182)
la r3, lo16(_Time.1182)(r2)
lwz r2, lo16(_Time.1182)(r2)
lwz r3, 4(r3)
addic r4, r3, 1
addze r3, r2
blr
for:
long %millisecs() {
%tmp = load long* %Time.1182 ; <long> [#uses=1]
%tmp1 = add long %tmp, 1 ; <long> [#uses=1]
ret long %tmp1
}
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31673
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 11 Nov 2006 04:51:36 +0000 (04:51 +0000)]
Mark operands as symbol lo instead of imm32 so that they print lo(x) around
globals.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31672
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Sat, 11 Nov 2006 02:22:31 +0000 (02:22 +0000)]
Implement schedulePasses().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31671
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Sat, 11 Nov 2006 02:06:21 +0000 (02:06 +0000)]
Implement PassManagerImpl_New::add().
Just add pass into the pass manager queue without processing analysis.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31670
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Sat, 11 Nov 2006 02:04:19 +0000 (02:04 +0000)]
While adding pass into the manager, process Analysis only if it is
required to do so.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31669
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Sat, 11 Nov 2006 01:56:39 +0000 (01:56 +0000)]
Remove dead code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31668
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Sat, 11 Nov 2006 01:51:02 +0000 (01:51 +0000)]
Code refactoring. Move common code into CommonPassManagerImpl :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31667
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Sat, 11 Nov 2006 01:31:05 +0000 (01:31 +0000)]
Move CommonPassManagerImpl from PassManager.h to PassManager.cpp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31666
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Sat, 11 Nov 2006 01:24:55 +0000 (01:24 +0000)]
Remove analysis that is not preserved by the pass from AvailableAnalysis.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31665
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Sat, 11 Nov 2006 01:10:19 +0000 (01:10 +0000)]
Keep track if analysis made available by the pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31664
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 11 Nov 2006 01:04:13 +0000 (01:04 +0000)]
Instruction name changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31663
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 11 Nov 2006 01:02:45 +0000 (01:02 +0000)]
Enable path completion when typing the TESTSUITE= option by allowing the
test directory to precede the test suite name. That is, it will strip off
test/ from TESTSUITE which allows path completion from the command line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31662
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 11 Nov 2006 01:00:15 +0000 (01:00 +0000)]
disallow preinc of a frameindex. This is not profitable and causes 2-addr
pass to explode. This fixes a bunch of llc-beta failures on ppc last night.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31661
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 11 Nov 2006 00:56:29 +0000 (00:56 +0000)]
reduce indentation by using early exits. No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31660
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Sat, 11 Nov 2006 00:42:16 +0000 (00:42 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31659
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 11 Nov 2006 00:39:41 +0000 (00:39 +0000)]
move big chunks of code out-of-line, no functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31658
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 11 Nov 2006 00:13:07 +0000 (00:13 +0000)]
enable this test, check ppc64 as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31657
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 11 Nov 2006 00:08:42 +0000 (00:08 +0000)]
ppc64 doesn't have lwau, don't attempt to form it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31656
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 11 Nov 2006 00:00:31 +0000 (00:00 +0000)]
Allow ENABLE_OPTIMIZED=0 to turn off optimization (turn on debug).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31655
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Nov 2006 23:58:45 +0000 (23:58 +0000)]
implement preinc support for r+i loads on ppc64
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31654
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Nov 2006 23:38:52 +0000 (23:38 +0000)]
Fix InstCombine/2006-11-10-ashr-miscompile.ll a miscompilation introduced
by the shr -> [al]shr patch. This was reduced from 176.gcc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31653
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Nov 2006 23:37:54 +0000 (23:37 +0000)]
This testcase is miscompiled by instcombine, reduced from 176.gcc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31652
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Nov 2006 22:09:17 +0000 (22:09 +0000)]
Add a note.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31650
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Nov 2006 22:03:35 +0000 (22:03 +0000)]
These are done.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31649
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Nov 2006 21:43:37 +0000 (21:43 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31645
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Nov 2006 21:37:15 +0000 (21:37 +0000)]
Fix a dag combiner bug exposed by my recent instcombine patch. This fixes
CodeGen/Generic/2006-11-10-DAGCombineMiscompile.ll and PPC gsm/toast
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31644
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Nov 2006 21:36:07 +0000 (21:36 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31643
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 10 Nov 2006 21:33:13 +0000 (21:33 +0000)]
s/PassManagerAnalysisHelper/CommonPassManagerImpl
Inherit CommonPassManagerImpl from Pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31642
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Nov 2006 21:23:04 +0000 (21:23 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31641
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 10 Nov 2006 17:56:29 +0000 (17:56 +0000)]
Must have a frame pointer argument fixed. Now fails on PowerPC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31639
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 10 Nov 2006 17:51:25 +0000 (17:51 +0000)]
Must have a frame pointer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31638
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Nov 2006 17:51:02 +0000 (17:51 +0000)]
dform 8/9 are identical to dform 1
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31637
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 10 Nov 2006 17:47:28 +0000 (17:47 +0000)]
This is XFAILed on i[0-9]86 systems not Linux
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31636
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 10 Nov 2006 14:44:12 +0000 (14:44 +0000)]
Shut up the warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31635
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Nov 2006 09:13:37 +0000 (09:13 +0000)]
Fix a potential bug.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31634
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Nov 2006 08:43:01 +0000 (08:43 +0000)]
Add implicit def / use operands to MachineInstr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31633
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Nov 2006 08:32:14 +0000 (08:32 +0000)]
Add implicit def / use operands to MachineInstr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31632
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Nov 2006 08:28:11 +0000 (08:28 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31631
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Fri, 10 Nov 2006 06:59:53 +0000 (06:59 +0000)]
Adding target triple to test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31630
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Fri, 10 Nov 2006 04:53:50 +0000 (04:53 +0000)]
xfail for llvmgcc3
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31629
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Nov 2006 04:41:34 +0000 (04:41 +0000)]
commentate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31627
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Nov 2006 02:08:47 +0000 (02:08 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31621
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Nov 2006 02:04:52 +0000 (02:04 +0000)]
make this test more interesting
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31619
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Nov 2006 02:01:40 +0000 (02:01 +0000)]
allow ptr_rc to explicitly appear in an instructions operand list, it doesn't
have to be a subpart of a complex operand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31618
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Nov 2006 01:33:53 +0000 (01:33 +0000)]
add note about ugly codegen with preinc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31617
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Nov 2006 01:28:43 +0000 (01:28 +0000)]
Use TargetInstrInfo::getNumOperands() instead of MachineInstr::getNumOperands(). In preparation for implicit reg def/use changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31616
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Fri, 10 Nov 2006 00:48:11 +0000 (00:48 +0000)]
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).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31613
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Nov 2006 00:23:26 +0000 (00:23 +0000)]
add a note about viterbi
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31612
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 9 Nov 2006 23:36:08 +0000 (23:36 +0000)]
second patch to fix PR992/993.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31610
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 9 Nov 2006 23:35:01 +0000 (23:35 +0000)]
new testcases for PR992/993
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31609
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 9 Nov 2006 23:17:45 +0000 (23:17 +0000)]
Minimal patch to fix PR992/PR993
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31608
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 9 Nov 2006 23:03:26 +0000 (23:03 +0000)]
Post-review changes on conversion instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31607
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 9 Nov 2006 21:48:10 +0000 (21:48 +0000)]
Fix runaway <tt> element and section ordering.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31606
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 9 Nov 2006 21:42:14 +0000 (21:42 +0000)]
Remove futurisms that won't be in our future.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31605
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 9 Nov 2006 21:18:01 +0000 (21:18 +0000)]
One more time for indentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31604
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 9 Nov 2006 21:15:49 +0000 (21:15 +0000)]
Fix indentation problem starting at GEP.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31603
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 9 Nov 2006 19:32:13 +0000 (19:32 +0000)]
if lazy compilation is disabled, print an error message and abort if
lazy compilation is ever attempted
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31602
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 9 Nov 2006 19:31:15 +0000 (19:31 +0000)]
init ivar
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31601
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 9 Nov 2006 19:30:47 +0000 (19:30 +0000)]
allow clients to indicate that they never want lazy compilation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31600
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 9 Nov 2006 19:11:50 +0000 (19:11 +0000)]
PPC supports i32 / i64 pre-inc load / store.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31599
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 9 Nov 2006 19:10:46 +0000 (19:10 +0000)]
Don't attempt expensive pre-/post- indexed dag combine if target does not support them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31598
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 9 Nov 2006 18:56:43 +0000 (18:56 +0000)]
Add a mechanism to specify whether a target supports a particular indexed load / store.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31597
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 9 Nov 2006 18:44:21 +0000 (18:44 +0000)]
Rename ISD::MemOpAddrMode to ISD::MemIndexedMode
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31596
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 9 Nov 2006 17:55:04 +0000 (17:55 +0000)]
Rename ISD::MemOpAddrMode to ISD::MemIndexedMode
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31595
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 9 Nov 2006 16:32:26 +0000 (16:32 +0000)]
Allows debugging llc self hosted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31594
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 9 Nov 2006 14:52:14 +0000 (14:52 +0000)]
Merging dwarf info to a single compile unit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31593
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Thu, 9 Nov 2006 13:58:55 +0000 (13:58 +0000)]
implement load effective address similar to the alpha backend
remove lea_addri and the now unused memri addressing mode
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31592
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 9 Nov 2006 08:26:22 +0000 (08:26 +0000)]
math.h creates ambiguity
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31591
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 9 Nov 2006 08:05:39 +0000 (08:05 +0000)]
math.h for C's sake.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31590
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 9 Nov 2006 06:24:56 +0000 (06:24 +0000)]
completely revert patrick's enhancement to bugpoint. Though it makes bugpoint
speed up, it sometimes makes it crash on complex bc files, which isn't very nice.
With this, bugpoint can reduce the 176.gcc failure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31589
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 9 Nov 2006 05:57:53 +0000 (05:57 +0000)]
add a new bugpoint mode -llc-safe. This uses LLC for both halves of a
miscompilation. This is useful for working around GCC+CBE bugs or for handling
programs that CBE doesn't support (e.g. inline asm) when searching for
optimizer bugs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31588
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 9 Nov 2006 05:18:12 +0000 (05:18 +0000)]
silence warnings
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31587
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 9 Nov 2006 05:12:27 +0000 (05:12 +0000)]
Teach ShrinkDemandedConstant how to handle X+C. This implements:
add.ll:test33, add.ll:test34, shift-sra.ll:test2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31586
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 9 Nov 2006 05:11:23 +0000 (05:11 +0000)]
new testcases
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31585
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 9 Nov 2006 04:29:46 +0000 (04:29 +0000)]
getPostIndexedAddressParts change: passes in load/store instead of its loaded / stored VT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31584
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 9 Nov 2006 02:22:54 +0000 (02:22 +0000)]
Remove M_2_ADDR_FLAG.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31583
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 9 Nov 2006 01:47:04 +0000 (01:47 +0000)]
Don't run bugpoint if we can't find a misoptimization.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31582
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 9 Nov 2006 00:50:32 +0000 (00:50 +0000)]
Print a usage message if too few arguments to program.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31581
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 9 Nov 2006 00:26:17 +0000 (00:26 +0000)]
Add a utility script to find a mis-optimization problem. This sometimes
helps when bugpoint can't find the problem directly because it needs the
set of optimizations that cause the program to fail.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31580
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Wed, 8 Nov 2006 23:26:16 +0000 (23:26 +0000)]
Should be xfailed for llvmgcc3
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31578
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Wed, 8 Nov 2006 23:25:58 +0000 (23:25 +0000)]
Should be xfailed for llvmgcc4 and NOT *. * means all platforms regardless of what llvmgcc you use.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31577
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 8 Nov 2006 23:02:11 +0000 (23:02 +0000)]
Added indexed store node and patfrag's.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31576
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 8 Nov 2006 23:01:03 +0000 (23:01 +0000)]
Divide select methods into groups by SelectionDAG node opcodes (ISD::ADD,
X86ISD::CMP, etc.) instead of SDNode names (add, x86cmp, etc). We now allow
multiple SDNodes to map to the same SelectionDAG node (e.g. store, indexed
store).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31575
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 8 Nov 2006 21:28:30 +0000 (21:28 +0000)]
Ensure we don't regress on reading version 6 bytecode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31574
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 8 Nov 2006 21:27:54 +0000 (21:27 +0000)]
Bump the bytecode version number to 7. Implement upgrade of version 6 and
version 6 bytecode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31573
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 8 Nov 2006 20:35:37 +0000 (20:35 +0000)]
Use movl+xchgl instead of pushl+popl.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31572
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 8 Nov 2006 20:34:28 +0000 (20:34 +0000)]
Match tblegen changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31571
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 8 Nov 2006 20:31:10 +0000 (20:31 +0000)]
Always pass the root node to ComplexPattern isel matching function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31570
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 8 Nov 2006 20:27:27 +0000 (20:27 +0000)]
Match more post-indexed ops.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31569
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Wed, 8 Nov 2006 20:16:05 +0000 (20:16 +0000)]
Should be xfailed for llvm-gcc3.4
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31568
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 8 Nov 2006 20:07:40 +0000 (20:07 +0000)]
Document correct opcodes for post 1.9 release.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31566
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 8 Nov 2006 20:06:36 +0000 (20:06 +0000)]
Update the instruction opcodes for release 1.9
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31565
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Nov 2006 19:42:28 +0000 (19:42 +0000)]
reenable factoring of GEP expressions, being more precise about the
case that it bad to do.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31563
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Nov 2006 19:29:23 +0000 (19:29 +0000)]
make this code more efficient by not creating a phi node we are just going to
delete in the first place. This also makes it simpler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31562
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 8 Nov 2006 19:16:44 +0000 (19:16 +0000)]
Remove redundant <cmath>.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31561
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 8 Nov 2006 18:49:31 +0000 (18:49 +0000)]
disable this factoring optzn for GEPs for now, this severely pessimizes some
loops.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31560
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 8 Nov 2006 18:48:14 +0000 (18:48 +0000)]
Make sure <cmath> comes first
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31559
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 8 Nov 2006 17:19:29 +0000 (17:19 +0000)]
Add backup support for HUGH_VALF.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31553
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Wed, 8 Nov 2006 17:07:32 +0000 (17:07 +0000)]
initial implementation of addressing mode 2
TODO: fix lea_addri
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31552
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 8 Nov 2006 16:38:45 +0000 (16:38 +0000)]
Make it work on Darwin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31551
91177308-0d34-0410-b5e6-
96231b3b80d8