Commit Graph

28164 Commits

Author SHA1 Message Date
Reid Spencer
4b94f49091 For PR950: Provide an isCompare method for detection of ICmp and FCmp constant expressions. Change interfaces to allow for ICmp and FCmp predicate values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32167 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 05:19:02 +00:00
Reid Spencer
3b3844288b Update call to CastInst::getCastOpcode for its new signature.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32166 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 02:48:01 +00:00
Reid Spencer
575d95ce37 Change inferred casts to explicit casts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32165 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 02:46:44 +00:00
Reid Spencer
56667123b7 Take a baby step towards getting rid of inferred casts. Provide methods on
CastInst and ConstantExpr that allow the signedness to be explicitly passed
in and reliance on signedness removed from getCastOpcode. These are
temporary measures useful during the conversion of inferred casts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32164 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 02:43:42 +00:00
Reid Spencer
75575fcfe4 Remove line not meant to be committed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32163 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 21:17:12 +00:00
Reid Spencer
e46687c14b Handle upgrade of llvm-gcc3 assembly files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32161 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 21:01:45 +00:00
Reid Spencer
9f132765a2 Support ICmp/FCmp constant expression reading and writing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32160 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 17:17:02 +00:00
Reid Spencer
42ddd84add Update for signless GEP semantics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32159 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 16:53:48 +00:00
Reid Spencer
e558c68251 Use weak_import on linux, weak everywhere else. Makes test pass on Linux.
Checking for __APPLE_CC__ is useless as this just checks to see if the
compiler is llvm-gcc, which we know it is.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32158 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 16:40:08 +00:00
Reid Spencer
c1126ac7cd Remove dead code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32157 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 16:21:33 +00:00
Reid Spencer
13cf7b61c5 Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32156 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 16:20:14 +00:00
Reid Spencer
9b1630382e Remove useless #include.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32155 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 16:19:43 +00:00
Reid Spencer
4dc9e5ac0d These tests need llvm-upgrade. This fixes last night's nightly test fallout.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32154 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 16:17:19 +00:00
Reid Spencer
57f28f9775 Match the llvmAsmParser's handling of ICmp and FCmp instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32153 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 07:10:26 +00:00
Reid Spencer
6e18b7d3d9 Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32152 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 06:59:29 +00:00
Reid Spencer
9f746f415e Shorten the FCmp and ICmp mnemonics to 3 letters. Make the parser
disambiguate them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32151 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 06:58:07 +00:00
Reid Spencer
87e8ec9a50 Shorten the FCmp predicate mnemonics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32150 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 06:35:48 +00:00
Reid Spencer
c8dab49aad Implement reading and writing of the ICmp and FCmp instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32149 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 06:28:54 +00:00
Reid Spencer
74f1642bc1 Allow the ICmp and FCmp instructions to be written by the AsmWriter
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32148 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 06:27:29 +00:00
Reid Spencer
728b6db6fb Implement creation of ICmp and FCmp constant expressions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32147 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 05:48:19 +00:00
Reid Spencer
3795ad164a Remove backwards compatibility goop. This is now handled by llvm-upgrade.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32146 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 05:47:10 +00:00
Reid Spencer
a132e04b66 Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32145 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 05:46:11 +00:00
Reid Spencer
08de34b229 Remove backwards compatibility goop. Now implemented in llvm-upgrade.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32144 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 05:45:44 +00:00
Reid Spencer
e968dc9847 Upgrade to version 7 bytecode format.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32143 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 04:40:09 +00:00
Reid Spencer
bec0b59229 Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32142 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 03:16:48 +00:00
Reid Spencer
ec9c4f4348 Add a needed #include.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32141 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 03:15:23 +00:00
Reid Spencer
229e9369df Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32140 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 22:14:11 +00:00
Reid Spencer
2b40438597 Implement upgrade of setcc instruction to icmp/fcmp, but don't enable it
yet.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32139 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 22:09:27 +00:00
Reid Spencer
a5ce97b15a Make sure this file gets upgraded with llvm-upgrade
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32138 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 20:42:32 +00:00
Reid Spencer
2e7e4f2e01 Upgrade intrinsic function calls manually.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32137 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 20:41:53 +00:00
Reid Spencer
ae8e54af9d These files need llvm-upgrade.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32136 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 20:40:30 +00:00
Reid Spencer
a090f1f83c Rearrange code so that llvm-upgrade doesn't break the optimization this
test is trying to verify.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32135 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 20:39:25 +00:00
Reid Spencer
ee45c55fe6 Upgrade intrinsic function calls
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32134 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 20:38:37 +00:00
Reid Spencer
d05b67dc64 Run llvm-upgrade on this test and/or upgrade intrinsic function calls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32133 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 20:38:10 +00:00
Reid Spencer
595a4e51d5 Remove tests for checking bytecode upgrade. Bytecode upgrade is being
replaced in 2.0 with assembly upgrade via the llvm-upgrade tool.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32132 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 20:35:50 +00:00
Reid Spencer
70e0531fce Upgrade old intrinsic function calls manually.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32131 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 20:34:57 +00:00
Reid Spencer
d7c2c2f753 Use llvm-upgrade these tests as they all use old assembly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32130 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 20:34:08 +00:00
Reid Spencer
21fdb97a91 Remove old intrinsic declarations and usage.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32129 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 20:30:20 +00:00
Reid Spencer
787207427a Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32128 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-02 20:21:22 +00:00
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