Commit Graph

28204 Commits

Author SHA1 Message Date
Reid Spencer
330d86d748 Implement createPointerCast.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32212 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-05 03:28:26 +00:00
Reid Spencer
c0459fb7f5 Implement getPointerCast.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32211 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-05 03:25:26 +00:00
Chris Lattner
4d7bd8fe6f new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32210 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-05 01:29:01 +00:00
Chris Lattner
e13ab2a9a1 add an instcombine xform. This speeds up 462.libquantum from 9.78s to
7.48s.  This regression is due to unforseen consequences of the cast patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32209 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-05 01:26:29 +00:00
Devang Patel
67a821d9a3 SCCP does not handle Packed Type properly. Disable Packed Type handling
for now.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32208 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 23:54:59 +00:00
Reid Spencer
887ee06f94 Add cast creation functions for Pointer Casts, either BitCast or PtrToInt
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32207 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 23:14:27 +00:00
Chris Lattner
98ae09ca5d Add support for 64-bit 'r' constraint. Patch by by Rafael ~Avila de Espíndol!
This fixes PR1029 and Regression/CodeGen/X86/x86-64-asm.ll


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32206 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 22:38:21 +00:00
Chris Lattner
f34208b8b1 Testcase for PR1029, patch by Rafael vila de Espíndola
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32205 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 22:37:48 +00:00
Jim Laskey
efc7e52183 Restoration of the stack pointer after a deallocation of a alloca was not
updating the SP link.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32202 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 22:04:42 +00:00
Reid Spencer
67263fec75 Separate getCompare from get and getCompareTy from getTy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32200 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 21:35:24 +00:00
Reid Spencer
90fdf9c6de Separate the get and getTy functions for ICmp and FCmp into getCompare
and getCompareTy. Also, fix some incorrect comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32199 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 21:34:17 +00:00
Reid Spencer
09906f3e1a Fix comment grammaro
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32198 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 21:33:23 +00:00
Reid Spencer
85f5b5b9dc We only support 32-bit or 64-bit sequential type indices for GEP. Document
it as so.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32197 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 21:29:24 +00:00
Chris Lattner
12d38bfca0 Add a comment and fix a memory leak. Thanks to Vikram for pointing this out.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32196 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 21:22:45 +00:00
Reid Spencer
0eb776f10b These pass on Linux now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32195 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 20:46:05 +00:00
Reid Spencer
36917d9749 Expose the sanity.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32193 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 20:28:07 +00:00
Reid Spencer
8955e3b755 Unclutter this by using new cast creation functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32192 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 20:18:26 +00:00
Reid Spencer
848414e49c Implement new cast creation functions for both instructions and constant
expressions. These will get used to reduce clutter as we replace various
calls to createInferredCast and getCast.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32191 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 20:17:56 +00:00
Reid Spencer
4d42fcebe3 Fix the intrinsic debug call to make this match current definition.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32190 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 20:13:49 +00:00
Reid Spencer
2e1af738ee Make this test succeed on both Darwin and Linux
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32189 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 20:09:02 +00:00
Reid Spencer
01c4259d41 Document the icmp and fcmp constant expressions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32188 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 19:23:19 +00:00
Reid Spencer
3f4d6d185b XFAIL until PR1033 is fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32187 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 18:39:14 +00:00
Reid Spencer
8d5a6ae171 Reduce the size of the ExprMapKeyType class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32186 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 18:38:05 +00:00
Reid Spencer
b212dceb6b Test case for PR1033, x86-64 code gen fails on bitcast.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32185 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 18:24:56 +00:00
Evan Cheng
2c312adac9 Non-darwin gcc should default to static relocation to match gcc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32184 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 18:07:10 +00:00
Evan Cheng
0650378757 Fix test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32183 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 18:06:24 +00:00
Jim Laskey
0b76b0b8dd Purpose of test is lost in upgrade.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32182 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 17:54:29 +00:00
Jim Laskey
933ca310d0 Remove debug info.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32181 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 17:06:15 +00:00
Reid Spencer
14bab5db2d Fix inferred casts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32180 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 17:05:42 +00:00
Reid Spencer
10292555f3 Fix 80 cols violation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32179 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 17:04:44 +00:00
Reid Spencer
14042388a1 Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32178 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 15:41:36 +00:00
Jim Laskey
d3d390f8d4 Fixed to use current debug info.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32177 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 12:23:17 +00:00
Jim Laskey
bd28b11923 Moving to DebugInfo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32176 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 12:21:23 +00:00
Jim Laskey
1f401b7568 Duplicate of Regression/Debugger/funccall.ll.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32175 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 10:50:32 +00:00
Reid Spencer
4012e833fd Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32173 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 05:24:24 +00:00
Reid Spencer
595b477915 For PR950: Implement read/write of ICmp and FCmp constant expressions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32172 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 05:23:49 +00:00
Reid Spencer
763ed5e4ac For PR950: For ICmp and FCmp constant expressions, put the predicate outiside the parentheses to match what llvm-upgrade generates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32171 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 05:20:06 +00:00
Reid Spencer
077d0eb1bd For PR950: Fix constant expressions to properly support ICmp and FCmp type expressions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32170 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 05:19:50 +00:00
Reid Spencer
2f8bbf5d65 For PR950: Implement a stub for folding ICmp and FCmp instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32169 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 05:19:34 +00:00
Reid Spencer
81dfeb3264 For PR950: Implement ICmp/FCmp predicate printing for constant expressions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32168 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 05:19:18 +00:00
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