Commit Graph

27975 Commits

Author SHA1 Message Date
Reid Spencer
a8ca090440 Support several new upgrades:
div -> fdiv/udiv/sdiv
  rem -> frem/urem/srem
  except -> unwind
  uninitialized -> external
as well as tracking the element type of pointers, packed, and array.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32127 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 20:19:56 +00:00
Reid Spencer
72348df75e Remove a redundant RUN: line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32126 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 17:49:38 +00:00
Reid Spencer
f02edd2307 Add llvm-upgrade documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32125 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 16:36:48 +00:00
Reid Spencer
3248df2373 Document the llvm-upgrade tool.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32124 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 16:35:42 +00:00
Reid Spencer
fdba2cb551 Prevent a GEP from getting upgraded to avoid resulting test failure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32123 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 16:25:20 +00:00
Reid Spencer
f459d39613 Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32122 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 16:19:52 +00:00
Reid Spencer
1d64a6c8d8 Implement the GEP upgrade for non-constant unsigned indices
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32121 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 16:19:28 +00:00
Reid Spencer
f8483657b3 Keep lists of values so they can be examined.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32120 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 15:16:01 +00:00
Reid Spencer
7a33f8d7cd Update this test to use llvm-update.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32117 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 05:02:46 +00:00
Reid Spencer
f49c7a5f05 Build llvm-update now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32116 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 04:46:36 +00:00
Reid Spencer
69ccadd753 Use the llvm-upgrade program to upgrade llvm assembly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32115 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 04:23:10 +00:00
Reid Spencer
a50d5962ed Add support for global types and type resolution. Fix several minor
formatting and spacing bugs. This is sufficient for llvm-upgrade to
correctly upgrade all of llvm/test.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32114 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 04:11:07 +00:00
Jeff Cohen
97af751deb Unbreak VC++ build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32113 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 02:22:01 +00:00
Chris Lattner
9919e3df17 disable transformations that are invalid for fp vectors. This fixes
Transforms/InstCombine/2006-12-01-BadFPVectorXform.ll


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32112 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 00:13:08 +00:00
Chris Lattner
832e1489cc new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32111 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 00:12:32 +00:00
Chris Lattner
ee740834ab Switch analysis groups to be unregistered when llvm_shutdown is called.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32110 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 23:46:50 +00:00
Reid Spencer
280d801839 Handle upgrade of fp -> ptr cast with fp -> int -> ptr
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32109 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 23:40:53 +00:00
Chris Lattner
baf2ecda5f Start moving pass registration over to using the ManagedStatic mechanism.
This fixes issues where passes get unregistered before llvm_shutdown is
called, and is generally cleaner and simpler.  Analysis groups up next.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32108 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 23:27:45 +00:00
Evan Cheng
0555122412 Match TargetInstrInfo changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32107 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 22:57:41 +00:00
Reid Spencer
0b7e507247 Don't convert {} into []!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32106 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 22:42:01 +00:00
Chris Lattner
cb90249ecb pass cfgonly up the ctor instead of calling an explicit method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32105 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 22:36:43 +00:00
Reid Spencer
fcb5df8f2c Allow the new cast instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32104 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 22:34:43 +00:00
Reid Spencer
f7bde225f3 Upgrade shr to ashr and lshr
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32103 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 22:26:37 +00:00
Chris Lattner
947c7689fc move 'cfgonly' pass tracking into PassInfo, instead of handling it with
yet-another global data structure.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32102 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 22:21:11 +00:00
Chris Lattner
5365489f6c remove 'target constructor' support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32100 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 22:00:50 +00:00
Chris Lattner
cd950a5308 target constructors are never used
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32099 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 21:59:37 +00:00
Evan Cheng
ba59a1e453 Match TargetInstrInfo changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32098 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 21:52:58 +00:00
Evan Cheng
258ff6726d convertToThreeAddress() is now responsible for updating live info as well as inserting the new MI's.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32097 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 21:52:41 +00:00
Reid Spencer
f2d5532c66 Don't treat numeric (untyped) constants as a ConstInfo, just pass the
string and let ConstVal add the type.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32096 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 21:52:30 +00:00
Evan Cheng
bd7b67fd37 Typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32095 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 21:50:17 +00:00
Evan Cheng
6c14147d93 - Add getOperandConstraint() to TargetInstrDescriptor.
- convertToThreeAddress() change to allow single two-address MI to be converted
  into one or more 3-address MIs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32094 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 21:46:55 +00:00
Chris Lattner
5dd4391c66 fix incorrectly translated testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32093 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 21:38:02 +00:00
Reid Spencer
16244f4026 First version of llvm-upgrade that can correctly upgrade all of
test/Feature


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32092 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 21:10:07 +00:00
Evan Cheng
8752ce61e1 Add weak reference directive.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32091 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 20:47:11 +00:00
Reid Spencer
d154b57ab4 valgrind clean version of llvm-upgrade
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32090 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 20:36:40 +00:00
Reid Spencer
e77e35e8b1 First version of llvm-upgrade that can correctly upgrade a large test
case.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32089 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 20:26:20 +00:00
Chris Lattner
102e2d3c82 Remove dead methods
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32088 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 20:14:47 +00:00
Chris Lattner
9dec3a2c0c These should be rewritten to fold without using the 'Rules' mechanism, but
until this happens at least make sext from bool and sitofp from bool do the
right thing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32087 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 19:50:54 +00:00
Chris Lattner
63edf03fe5 test1 is miscompiled
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32086 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 19:50:04 +00:00
Jim Laskey
d52bbdceef wrong spot
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32084 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 19:39:32 +00:00
Jim Laskey
255b47bda3 Test for float varargs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32083 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 19:29:20 +00:00
Chris Lattner
5be662505e this logic is broken for trunc to bool, replace the folding logic for trunc
completely, as it is trivial.  We should probably do this for the rest of the
cast operations.  This fixes ConstProp/2006-12-01-TruncBoolBug.ll.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32081 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 19:22:41 +00:00
Chris Lattner
68329b2187 add a new ConstantIntegral::get method. Simplify the implementation of
ConstantInt::get


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32080 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 19:20:02 +00:00
Chris Lattner
f0d6dd6006 new 'cast' miscompilation, reduced from perlbmk by Evan
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32079 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 19:02:56 +00:00
Chris Lattner
d28442ee96 enable this now that codegen support is in place
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32076 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 18:04:08 +00:00
Evan Cheng
9382e29c1e Copy and paste error. An initialized global cannot be a weak reference.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32075 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 17:39:22 +00:00
Jim Laskey
fbb74e6941 1. In ppc64 mode we need only use one GPR.
2. Float values need to be promoted to double when they are vararg.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32074 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 16:30:47 +00:00
Jim Laskey
45e507ca9b ExternalWeak case in wrong location.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32073 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 14:37:39 +00:00
Evan Cheng
2c0fbb1cb6 This test is meant for X86 CPU which does not support SSE2.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32072 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 10:17:36 +00:00
Evan Cheng
32644ac67c Fix 2005-05-08-FPStackifierPHI.ll failure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32071 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-01 10:11:51 +00:00