oota-llvm.git
17 years agore-enable a temporarily-reverted patch
Chris Lattner [Fri, 15 Dec 2006 07:32:38 +0000 (07:32 +0000)]
re-enable a temporarily-reverted patch

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32595 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoNew testcase for llvm-gcc bugfix
Chris Lattner [Fri, 15 Dec 2006 06:49:20 +0000 (06:49 +0000)]
New testcase for llvm-gcc bugfix

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32594 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMinor clean up.
Evan Cheng [Fri, 15 Dec 2006 06:41:01 +0000 (06:41 +0000)]
Minor clean up.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32593 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSilly assertion. Forgot variable_ops instructions can have arbitrary number of
Evan Cheng [Fri, 15 Dec 2006 06:37:08 +0000 (06:37 +0000)]
Silly assertion. Forgot variable_ops instructions can have arbitrary number of
operands.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32592 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoThis is done.
Evan Cheng [Fri, 15 Dec 2006 05:50:39 +0000 (05:50 +0000)]
This is done.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32591 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoExpand FP compares to soft-fp call(s)
Evan Cheng [Fri, 15 Dec 2006 02:59:56 +0000 (02:59 +0000)]
Expand FP compares to soft-fp call(s)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32590 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agos/ForcedLastUses/TransferLastUses/g
Devang Patel [Fri, 15 Dec 2006 00:08:26 +0000 (00:08 +0000)]
s/ForcedLastUses/TransferLastUses/g

Register pass has the its last user, otherwise sometimes no one will claim
LastUse.

Handle transferred last uses from child pass manager.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32589 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSimplify the fetching of relocation mode.
Jim Laskey [Thu, 14 Dec 2006 22:53:42 +0000 (22:53 +0000)]
Simplify the fetching of relocation  mode.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32588 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agof64 <-> i64 bit_convert using movq in 64-bit mode.
Evan Cheng [Thu, 14 Dec 2006 21:55:39 +0000 (21:55 +0000)]
f64 <-> i64 bit_convert using movq in 64-bit mode.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32587 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFile missing from last check in.
Jim Laskey [Thu, 14 Dec 2006 21:03:17 +0000 (21:03 +0000)]
File missing from last check in.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32586 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix a couple of typo's.
Evan Cheng [Thu, 14 Dec 2006 19:46:06 +0000 (19:46 +0000)]
Fix a couple of typo's.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32585 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoThis is done.
Evan Cheng [Thu, 14 Dec 2006 19:45:32 +0000 (19:45 +0000)]
This is done.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32584 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdded MOVSS2DIrr and MOVDI2SSrr to foldMemeoryOperand().
Evan Cheng [Thu, 14 Dec 2006 19:44:45 +0000 (19:44 +0000)]
Added MOVSS2DIrr and MOVDI2SSrr to foldMemeoryOperand().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32583 91177308-0d34-0410-b5e6-96231b3b80d8

17 years ago- Rename MOVDSS2DIrr to MOVSS2DIrr for consistency sake.
Evan Cheng [Thu, 14 Dec 2006 19:43:11 +0000 (19:43 +0000)]
- Rename MOVDSS2DIrr to MOVSS2DIrr for consistency sake.
- Add MOVDI2SSrm and MOVSS2DImr to fold load / store for i32 <-> f32 bit_convert
  patterns.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32582 91177308-0d34-0410-b5e6-96231b3b80d8

17 years ago1. Tidy up jump table info.
Jim Laskey [Thu, 14 Dec 2006 19:17:33 +0000 (19:17 +0000)]
1. Tidy up jump table info.
2. Allow the jit to handle PIC relocable jump tables.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32581 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoavoid using a constant table when a constant can be used inline
Rafael Espindola [Thu, 14 Dec 2006 18:58:37 +0000 (18:58 +0000)]
avoid using a constant table when a constant can be used inline

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32580 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agorandom minor typographical changes
Chris Lattner [Thu, 14 Dec 2006 18:22:14 +0000 (18:22 +0000)]
random minor typographical changes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32579 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoStart of PowerPC info.
Jim Laskey [Thu, 14 Dec 2006 17:19:50 +0000 (17:19 +0000)]
Start of PowerPC info.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32578 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAvoid creating invalid sub/add instructions on the prolog/epilog
Rafael Espindola [Thu, 14 Dec 2006 13:31:27 +0000 (13:31 +0000)]
Avoid creating invalid sub/add instructions on the prolog/epilog
patch by Lauro

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32577 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix a long-standing spiller bug:
Evan Cheng [Thu, 14 Dec 2006 07:54:05 +0000 (07:54 +0000)]
Fix a long-standing spiller bug:
If a spillslot value is available in a register, and there is a noop copy that
targets that register, the spiller correctly decide not to invalidate the
spillslot register.

However, even though the noop copy does not clobbers the value. It does start a
new intersecting live range. That means the spillslot register is available for
use but should not be reused for a two-address instruction modref operand which
would clobber the new live range.

When we remove the noop copy, update the available information by clearing the
canClobber bit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32576 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd -time-passes support.
Devang Patel [Thu, 14 Dec 2006 00:59:42 +0000 (00:59 +0000)]
Add -time-passes support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32574 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd debug-pass=Details support to print Required and Preserved Set info.
Devang Patel [Thu, 14 Dec 2006 00:25:06 +0000 (00:25 +0000)]
Add debug-pass=Details support to print Required and Preserved Set info.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32573 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd " Made Modification " messages in debug-pass=Executions output.
Devang Patel [Thu, 14 Dec 2006 00:08:04 +0000 (00:08 +0000)]
Add " Made Modification " messages in debug-pass=Executions output.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32572 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd debug-pass=Executions support in new pass manager.
Devang Patel [Wed, 13 Dec 2006 23:50:44 +0000 (23:50 +0000)]
Add debug-pass=Executions support in new pass manager.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32571 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd -pass-debug=Arguments support in new manager.
Devang Patel [Wed, 13 Dec 2006 22:10:00 +0000 (22:10 +0000)]
Add -pass-debug=Arguments support in new manager.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32567 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agofit in 80 cols
Chris Lattner [Wed, 13 Dec 2006 21:56:10 +0000 (21:56 +0000)]
fit in 80 cols

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32563 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUsing PDL as a prefix for PassDebugLevel enums is not a good idea.
Devang Patel [Wed, 13 Dec 2006 21:13:31 +0000 (21:13 +0000)]
Using PDL as a prefix for PassDebugLevel enums is not a good idea.
Fix it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32562 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd note.
Evan Cheng [Wed, 13 Dec 2006 20:59:43 +0000 (20:59 +0000)]
Add note.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32561 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMore soft-fp work.
Evan Cheng [Wed, 13 Dec 2006 20:57:08 +0000 (20:57 +0000)]
More soft-fp work.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32559 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd getTypeToExpandTo() which recursively walks TransformToType to determine
Evan Cheng [Wed, 13 Dec 2006 20:52:00 +0000 (20:52 +0000)]
Add getTypeToExpandTo() which recursively walks TransformToType to determine
the intrinsic type to expand to.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32558 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMove enum PassDebugLevel from PassManagerT.h to Pass.h.
Devang Patel [Wed, 13 Dec 2006 20:03:48 +0000 (20:03 +0000)]
Move enum PassDebugLevel from PassManagerT.h to Pass.h.
Use PDL as the prefix for these enums.
Define and use PassDebugging_New in new PassManager.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32554 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemove DSA.
John Criswell [Wed, 13 Dec 2006 19:56:15 +0000 (19:56 +0000)]
Remove DSA.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32553 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemove DSA header files.
John Criswell [Wed, 13 Dec 2006 19:55:53 +0000 (19:55 +0000)]
Remove DSA header files.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32552 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoChanged from PARALLEL_DIRS to DIRS since we're only building one directory.
John Criswell [Wed, 13 Dec 2006 19:42:54 +0000 (19:42 +0000)]
Changed from PARALLEL_DIRS to DIRS since we're only building one directory.
Thanks Reid.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32551 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemove DSA.
John Criswell [Wed, 13 Dec 2006 19:41:57 +0000 (19:41 +0000)]
Remove DSA.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32550 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemove DSA tests.
John Criswell [Wed, 13 Dec 2006 19:39:27 +0000 (19:39 +0000)]
Remove DSA tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32549 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix a bug in EvaluateInDifferentType. The type of operand should not be
Reid Spencer [Wed, 13 Dec 2006 18:21:21 +0000 (18:21 +0000)]
Fix a bug in EvaluateInDifferentType. The type of operand should not be
used to determine whether a ZExt or SExt cast is performed. Instead, pass
an "isSigned" bool to the function and determine its value from the opcode
of the cast involved.
Also, clean up some cruft from previous patches.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32548 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemove DSA tests.
John Criswell [Wed, 13 Dec 2006 18:05:30 +0000 (18:05 +0000)]
Remove DSA tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32547 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUpdate version in safe guards.
Jim Laskey [Wed, 13 Dec 2006 17:49:24 +0000 (17:49 +0000)]
Update version in safe guards.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32546 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoxfail these until I recommit the scalarrepl patch
Chris Lattner [Wed, 13 Dec 2006 17:42:40 +0000 (17:42 +0000)]
xfail these until I recommit the scalarrepl patch

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32545 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoImplement review feedback. Most of this has to do with removing unnecessary
Reid Spencer [Wed, 13 Dec 2006 17:19:09 +0000 (17:19 +0000)]
Implement review feedback. Most of this has to do with removing unnecessary
cast instructions. A few are bug fixes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32544 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemove DSA tests.
John Criswell [Wed, 13 Dec 2006 17:02:04 +0000 (17:02 +0000)]
Remove DSA tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32543 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemove DSA.
John Criswell [Wed, 13 Dec 2006 16:54:24 +0000 (16:54 +0000)]
Remove DSA.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32542 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFor mul transforms, when checking for a cast from bool as either operand,
Reid Spencer [Wed, 13 Dec 2006 08:33:33 +0000 (08:33 +0000)]
For mul transforms, when checking for a cast from bool as either operand,
make sure to also check that it is a zext from bool, not any other cast
operation type.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32539 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix and/or/xor (cast A), (cast B) --> cast (and/or/xor A, B)
Reid Spencer [Wed, 13 Dec 2006 08:27:15 +0000 (08:27 +0000)]
Fix and/or/xor (cast A), (cast B) --> cast (and/or/xor A, B)
The cast patch introduced the possibility that the wrong cast opcode
could be used and that this transform could trigger on different kinds
of cast operations. This patch rectifies that.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32538 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRessurrect this needed file.
Reid Spencer [Wed, 13 Dec 2006 08:10:16 +0000 (08:10 +0000)]
Ressurrect this needed file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32537 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRessurrect the Stacker "st" configuration. Someday this will all go
Reid Spencer [Wed, 13 Dec 2006 08:09:48 +0000 (08:09 +0000)]
Ressurrect the Stacker "st" configuration. Someday this will all go
away, but until then Stacker needs its configuration.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32536 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoChange the interface to SCEVExpander::InsertCastOfTo to take a cast opcode
Reid Spencer [Wed, 13 Dec 2006 08:06:42 +0000 (08:06 +0000)]
Change the interface to SCEVExpander::InsertCastOfTo to take a cast opcode
so the decision of which opcode to use is pushed upward to the caller.
Adjust the callers to pass the expected opcode.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32535 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix some casts. isdigit(c) returns 0 or 1, not 0 or -1
Reid Spencer [Wed, 13 Dec 2006 08:04:32 +0000 (08:04 +0000)]
Fix some casts. isdigit(c) returns 0 or 1, not 0 or -1

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32534 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUpdate for llvm-gcc4 build.
Reid Spencer [Wed, 13 Dec 2006 08:03:25 +0000 (08:03 +0000)]
Update for llvm-gcc4 build.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32533 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUpdate comments.
Evan Cheng [Wed, 13 Dec 2006 06:12:35 +0000 (06:12 +0000)]
Update comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32532 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUpdate comments.
Evan Cheng [Wed, 13 Dec 2006 06:09:03 +0000 (06:09 +0000)]
Update comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32531 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoonly check non-external functions
Chris Lattner [Wed, 13 Dec 2006 04:45:46 +0000 (04:45 +0000)]
only check non-external functions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32530 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoReject attempts to define intrinsics. This fixes PR1047 and
Chris Lattner [Wed, 13 Dec 2006 04:30:37 +0000 (04:30 +0000)]
Reject attempts to define intrinsics.  This fixes PR1047 and
Regression/Verifier/2006-12-12-IntrinsicDefine.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32529 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoNew testcase for PR1047
Chris Lattner [Wed, 13 Dec 2006 04:30:18 +0000 (04:30 +0000)]
New testcase for PR1047

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32528 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoExpand (f64 extload f32) to (f64 fp_ext (load f32)) if f64 type action is expand.
Evan Cheng [Wed, 13 Dec 2006 03:19:57 +0000 (03:19 +0000)]
Expand (f64 extload f32) to (f64 fp_ext (load f32)) if f64 type action is expand.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32527 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoExpand fsqrt, fsin, and fcos to libcalls.
Evan Cheng [Wed, 13 Dec 2006 02:38:13 +0000 (02:38 +0000)]
Expand fsqrt, fsin, and fcos to libcalls.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32526 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd #ifdef switch toggle between old and new pass manager. However,
Devang Patel [Wed, 13 Dec 2006 02:36:01 +0000 (02:36 +0000)]
Add #ifdef switch toggle between old and new pass manager.  However,
continue to use old pass manager at the moment. To use new manager
remove #define USE_OLD_PASSMANAGER 1 from Pass.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32525 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agorevert my recent int<->fp and vector union promotion changes, they expose
Chris Lattner [Wed, 13 Dec 2006 02:26:45 +0000 (02:26 +0000)]
revert my recent int<->fp and vector union promotion changes, they expose
obscure bugs affecting the X86 code generator.  I will reenable this
when fixed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32524 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoExpand f32 / f64 to i32 / i64 conversion to soft-fp library calls.
Evan Cheng [Wed, 13 Dec 2006 01:57:55 +0000 (01:57 +0000)]
Expand f32 / f64 to i32 / i64 conversion to soft-fp library calls.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32523 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix a regression that completely broke make install.
Chris Lattner [Wed, 13 Dec 2006 01:15:18 +0000 (01:15 +0000)]
Fix a regression that completely broke make install.
Instead of installing into /usr/local/bin it would install into /usr/localbin

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32522 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoReplace CastInst::createInferredCast calls with more accurate cast
Reid Spencer [Wed, 13 Dec 2006 00:50:17 +0000 (00:50 +0000)]
Replace CastInst::createInferredCast calls with more accurate cast
creation calls.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32521 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoChange createInferredCast calls to more accurate cast creation calls.
Reid Spencer [Wed, 13 Dec 2006 00:47:58 +0000 (00:47 +0000)]
Change createInferredCast calls to more accurate cast creation calls.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32520 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFunctionPassManager does not support runOnModule().
Devang Patel [Wed, 13 Dec 2006 00:34:32 +0000 (00:34 +0000)]
FunctionPassManager does not support runOnModule().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32519 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMove getAnalysis() and getAnalysisID() definitions from Pass.h to
Devang Patel [Wed, 13 Dec 2006 00:23:44 +0000 (00:23 +0000)]
Move getAnalysis() and getAnalysisID() definitions from Pass.h to
PassAnalysisSupport.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32518 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoImplement PassManager_New destructors.
Devang Patel [Wed, 13 Dec 2006 00:09:23 +0000 (00:09 +0000)]
Implement PassManager_New destructors.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32517 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemove unused constructor.
Devang Patel [Tue, 12 Dec 2006 23:51:31 +0000 (23:51 +0000)]
Remove unused constructor.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32516 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoReplace inferred getCast(V,Ty) calls with more strict variants.
Reid Spencer [Tue, 12 Dec 2006 23:36:14 +0000 (23:36 +0000)]
Replace inferred getCast(V,Ty) calls with more strict variants.
Rename getZeroExtend and getSignExtend to getZExt and getSExt to match
the the casting mnemonics in the rest of LLVM.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32514 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd routines to dump pass manager queue.
Devang Patel [Tue, 12 Dec 2006 23:34:33 +0000 (23:34 +0000)]
Add routines to dump pass manager queue.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32513 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFunctionPassManager()
Devang Patel [Tue, 12 Dec 2006 23:27:37 +0000 (23:27 +0000)]
FunctionPassManager()

Set AnalysisResolver_New and add FPM to PassManagers list.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32512 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoDo not runOnFunction on external functions.
Devang Patel [Tue, 12 Dec 2006 23:15:28 +0000 (23:15 +0000)]
Do not runOnFunction on external functions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32510 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoInitialize AnalysisImpls for each pass before executing the pass.
Devang Patel [Tue, 12 Dec 2006 23:13:09 +0000 (23:13 +0000)]
Initialize AnalysisImpls for each pass before executing the pass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32509 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agocollectRequiredAnalysisPasses().
Devang Patel [Tue, 12 Dec 2006 23:09:32 +0000 (23:09 +0000)]
collectRequiredAnalysisPasses().

Include RequiredTrainsitiveSet also.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32508 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoremoveNotPreservedAnalysis().
Devang Patel [Tue, 12 Dec 2006 23:07:44 +0000 (23:07 +0000)]
removeNotPreservedAnalysis().

Do not remove ImmutablePass from the list.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32507 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoInitialize activeManager.
Devang Patel [Tue, 12 Dec 2006 22:57:43 +0000 (22:57 +0000)]
Initialize activeManager.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32506 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemove unused constructor.
Devang Patel [Tue, 12 Dec 2006 22:56:36 +0000 (22:56 +0000)]
Remove unused constructor.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32505 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMaintain ImmutablePasses list at top level only. Do not make them
Devang Patel [Tue, 12 Dec 2006 22:53:40 +0000 (22:53 +0000)]
Maintain ImmutablePasses list at top level only. Do not make them
directly available to individual managers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32504 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agofindAnalysisPass().
Devang Patel [Tue, 12 Dec 2006 22:50:05 +0000 (22:50 +0000)]
findAnalysisPass().

First search all available passes before searching ImmutablePasses.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32503 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix thinko.
Devang Patel [Tue, 12 Dec 2006 22:47:13 +0000 (22:47 +0000)]
Fix thinko.
While searching for a analysis in a pass manager, do not search it into
pass manager's manager.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32501 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoo s/OtherPassManagers/IndirectPassManagers
Devang Patel [Tue, 12 Dec 2006 22:35:25 +0000 (22:35 +0000)]
o s/OtherPassManagers/IndirectPassManagers
o Make IndirectPassManagers vector of PMDataManager *
o Move PMTopLevelManager implementation below all class declarations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32499 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoInitialize AnalysisImpls for ImmutablePass.
Devang Patel [Tue, 12 Dec 2006 22:21:37 +0000 (22:21 +0000)]
Initialize AnalysisImpls for ImmutablePass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32498 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoExpand FP constant to integers if FP types are not legal.
Evan Cheng [Tue, 12 Dec 2006 22:19:28 +0000 (22:19 +0000)]
Expand FP constant to integers if FP types are not legal.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32497 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSet top level manager.
Devang Patel [Tue, 12 Dec 2006 22:02:16 +0000 (22:02 +0000)]
Set top level manager.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32496 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSoft fp FNEG, SINT_TO_FP, UINT_TO_FP libcall expansion.
Evan Cheng [Tue, 12 Dec 2006 21:51:17 +0000 (21:51 +0000)]
Soft fp FNEG, SINT_TO_FP, UINT_TO_FP libcall expansion.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32495 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoExpand ConstantFP to load from CP if float types are being expanded.
Evan Cheng [Tue, 12 Dec 2006 21:32:44 +0000 (21:32 +0000)]
Expand ConstantFP to load from CP if float types are being expanded.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32494 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoExpand i32/i64 CopyToReg f32/f64 to BIT_CONVERT + CopyToReg.
Evan Cheng [Tue, 12 Dec 2006 21:21:32 +0000 (21:21 +0000)]
Expand i32/i64 CopyToReg f32/f64 to BIT_CONVERT + CopyToReg.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32493 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoHonor cpu directive, take two.
Jim Laskey [Tue, 12 Dec 2006 20:57:08 +0000 (20:57 +0000)]
Honor cpu directive, take two.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32492 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoIgnore entries with blank names.
Jim Laskey [Tue, 12 Dec 2006 20:55:58 +0000 (20:55 +0000)]
Ignore entries with blank names.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32491 91177308-0d34-0410-b5e6-96231b3b80d8

17 years ago- When expanding a bit_convert whose src operand is also to be expanded and
Evan Cheng [Tue, 12 Dec 2006 19:53:13 +0000 (19:53 +0000)]
- When expanding a bit_convert whose src operand is also to be expanded and
its expansion result type is equal to the result type of the bit_convert,
e.g. (i64 bit_convert (f64 op)) if FP is not legal
returns the result of the expanded source operand.
- Store f32 / f64 may be expanded to a single store i32/i64.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32490 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemove unneeded include.
Jim Laskey [Tue, 12 Dec 2006 19:36:53 +0000 (19:36 +0000)]
Remove unneeded include.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32489 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRollback changes to take a different tack.
Jim Laskey [Tue, 12 Dec 2006 19:26:50 +0000 (19:26 +0000)]
Rollback changes to take a different tack.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32488 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agothis can be trunc or bitcast, per line 3092.
Chris Lattner [Tue, 12 Dec 2006 19:11:20 +0000 (19:11 +0000)]
this can be trunc or bitcast, per line 3092.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32487 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix regression on 400.perlbench last night.
Chris Lattner [Tue, 12 Dec 2006 18:41:03 +0000 (18:41 +0000)]
Fix regression on 400.perlbench last night.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32486 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agomore general matching of the MVN instruction
Rafael Espindola [Tue, 12 Dec 2006 17:10:13 +0000 (17:10 +0000)]
more general matching of the MVN instruction

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32484 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoHonor the command line specification for machine type.
Jim Laskey [Tue, 12 Dec 2006 16:07:33 +0000 (16:07 +0000)]
Honor the command line specification for machine type.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32483 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agodon't use "ordinary" addressing mode 1 when mvn is appropriate
Rafael Espindola [Tue, 12 Dec 2006 14:03:29 +0000 (14:03 +0000)]
don't use "ordinary" addressing mode 1 when mvn is appropriate

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32482 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoReduce number of instructions to load 64-bit constants.
Jim Laskey [Tue, 12 Dec 2006 13:23:43 +0000 (13:23 +0000)]
Reduce number of instructions to load 64-bit constants.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32481 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix numerous inferred casts.
Reid Spencer [Tue, 12 Dec 2006 09:18:51 +0000 (09:18 +0000)]
Fix numerous inferred casts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32479 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoGet even more accurate on the casting.
Reid Spencer [Tue, 12 Dec 2006 09:17:50 +0000 (09:17 +0000)]
Get even more accurate on the casting.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32478 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix the casting for the computation of the Malloc size.
Reid Spencer [Tue, 12 Dec 2006 09:17:08 +0000 (09:17 +0000)]
Fix the casting for the computation of the Malloc size.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32477 91177308-0d34-0410-b5e6-96231b3b80d8