Commit Graph

612 Commits

Author SHA1 Message Date
Evan Cheng
f4c3a59dba Added support to fold X86 load / store instructions. This allow rematerialized loads to be folded into their uses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41599 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-30 05:54:07 +00:00
Dan Gohman
9bd8a566eb Add explicit triples to avoid default behavior that varies by host.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41510 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-27 20:54:48 +00:00
Dan Gohman
5f43f92c69 If the source and destination pointers in an llvm.memmove are known
to not alias each other, it can be translated as an llvm.memcpy.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41489 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-27 16:26:13 +00:00
Rafael Espindola
6b83b5d1ae call libc memcpy/memset if array size is bigger then threshold.
Coping 100MB array (after a warmup) shows that glibc 2.6.1 implementation on
x86-64 (core 2) is 30% faster (from 0.270917s to 0.188079s)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41479 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-27 10:18:20 +00:00
Evan Cheng
1594b98836 Test dag xform: Fold C ? 0 : 1 to ~C or zext(~C) or trunc(~C)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41164 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-18 06:11:57 +00:00
Evan Cheng
3da927b95d New test. Make sure dynamic_stackalloc size is rounded up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41135 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-16 23:52:23 +00:00
Evan Cheng
cfc289d7b9 Update test: dynamic_stackalloc size *must* be rounded to ensure stack ptr be left in a valid state.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41134 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-16 23:51:28 +00:00
Rafael Espindola
24eb92e9ad add byval test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41123 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-16 13:09:02 +00:00
Dan Gohman
43c3db37f6 Convert tests using "grep -c ... | grep ..." to use the count script.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41100 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-15 13:49:33 +00:00
Dan Gohman
e5ab8c6765 Delete extraneous uses of wc -l.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41099 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-15 13:45:35 +00:00
Dan Gohman
52f11f7c88 Convert another test to use the count script. This one didn't fit the
regex used to convert all the others because the first '|' was on a
separate line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41098 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-15 13:42:36 +00:00
Dan Gohman
28beeeac4d Convert tests using "| wc -l | grep ..." to use the count script.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41097 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-15 13:36:28 +00:00
Chris Lattner
b350b76a32 tcl seems to hate |& for some reason.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41073 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-14 16:19:35 +00:00
Chris Lattner
81e6fbe706 switch this to use fastcc to avoid fpstack traffic on x86-32. Switch to
using the count script instead of wc -l


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41072 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-14 16:14:10 +00:00
Evan Cheng
606b91de6c Update test case. A spill should now be deleted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41070 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-14 09:16:00 +00:00
Evan Cheng
d24165aa71 Spiller reuse test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41068 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-14 05:51:03 +00:00
Evan Cheng
1f808011e0 Now capable of rematerializing coalesced live intervals.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41061 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-13 23:54:16 +00:00
Dan Gohman
badb2d23d1 When x86 addresses matching exceeds its recursion limit, check to
see if the base register is already occupied before assuming it can be
used. This fixes bogus code generation in the accompanying testcase.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41049 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-13 20:03:06 +00:00
Chris Lattner
a45d9a15ba Fix PR1607
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41048 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-13 18:42:37 +00:00
Christopher Lamb
8441157f6e Fix test so it passes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41012 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-10 22:20:57 +00:00
Christopher Lamb
c59e52108b Increase efficiency of sign_extend_inreg by using subregisters for truncation. As the README suggests sign_extend_subreg is selected to (sext(trunc)).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41010 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-10 21:48:46 +00:00
Christopher Lamb
b81337117c Add 2-addr to 3-addr promotion code that allows 32-bit LEA to be used via subregisters when 16-bit LEA is disabled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41007 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-10 21:18:25 +00:00
Dan Gohman
25ac7e8364 Fix EXTRACT_ELEMENT, EXTRACT_SUBVECTOR, and EXTRACT_VECTOR_ELT to
use an intptr ValueType instead of i32 for the index operand in
getCopyToParts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40987 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-10 14:59:38 +00:00
Chris Lattner
3038778c1e allow this to pass on ppc hosts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40846 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-05 18:48:18 +00:00
Dan Gohman
7f55fcbc6b Fix the alignment requirements of several unpck and shuf instructions.
Generalize isPSHUFDMask and add a unary SHUFPD pattern so that SHUFPD's
memory operand alignment can be tested as well, with a fix to avoid
breaking MMX's use of isPSHUFDMask.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40756 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-02 21:17:01 +00:00
Dan Gohman
73a902b228 Mark the SSE and MMX load instructions that
X86InstrInfo::isReallyTriviallyReMaterializable knows how to handle
with the isReMaterializable flag so that it is given a chance to handle
them. Without hoisting constant-pool loads from loops this isn't very
visible, though it does keep CodeGen/X86/constant-pool-remat-0.ll from
making a copy of the constant pool on the stack.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40736 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-02 14:27:55 +00:00
Evan Cheng
0a2a515c5b Fix test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40721 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-02 05:04:16 +00:00
Evan Cheng
911935a068 New test. Bogus implicit-def prevented a copy from being coalesced.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40690 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-01 20:26:40 +00:00
Chris Lattner
b59e985cdb we're now handling this right :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40675 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-01 17:10:30 +00:00
Evan Cheng
ad076727f8 Requires SSE2.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40657 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-01 00:10:12 +00:00
Dan Gohman
b1576f56c8 Change the x86 assembly output to use tab characters to separate the
mnemonics from their operands instead of single spaces. This makes the
assembly output a little more consistent with various other compilers
(f.e. GCC), and slightly easier to read. Also, update the regression
tests accordingly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40648 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-31 20:11:57 +00:00
Evan Cheng
c64a1a921c Redo and generalize previously removed opt for pinsrw: (vextract (v4i32 bc (v4f32 s2v (f32 load ))), 0) -> (i32 load )
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40628 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-31 08:04:03 +00:00
Dan Gohman
d300622eba Re-apply 40504, but with a fix for the segfault it caused in oggenc:
Make the alignedload and alignedstore patterns always require 16-byte
alignment. This way when they are used in the "Fs" instructions, in which
a vector instruction is used for a scalar purpose, they can still require
the full vector alignment. And add a regression test for this.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40555 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-27 17:16:43 +00:00
Evan Cheng
3e22947d9a Reverting 40504 for now. It's breaking oggenc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40547 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-27 01:37:47 +00:00
Evan Cheng
42000ef6c7 Test case for PR1573.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40539 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-26 17:45:57 +00:00
Evan Cheng
77baf8e80e Fix test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40536 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-26 17:07:03 +00:00
Dan Gohman
d3283832aa Remove X86ISD::LOAD_PACK and X86ISD::LOAD_UA and associated code from the
x86 target, replacing them with the new alignment attributes on memory
references.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40504 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-26 00:31:09 +00:00
Dan Gohman
a394117bc0 Use movaps to load a v4f32 build_vector of all-constant values into a
register instead of loading each element individually.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40478 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-24 22:55:08 +00:00
Dan Gohman
9bc5dce98d Update these regression tests to accomodate X86InstrSSE.td now using movups/movaps
for everything.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40101 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-20 16:31:26 +00:00
Evan Cheng
7800479260 New test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40077 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-20 00:27:56 +00:00
Evan Cheng
66746741a7 New test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40073 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-19 23:53:50 +00:00
Evan Cheng
158622cca3 Try fixing it again.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40072 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-19 23:53:29 +00:00
Reid Spencer
9445e9aaa0 For PR1553:
Change the keywords for the zext and sext parameter attributes to be 
zeroext and signext so they don't conflict with the keywords for the
instructions of the same name. This gets around the ambiguity.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40069 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-19 23:13:04 +00:00
Bill Wendling
3b1c0994a0 Don't need the "&&" to glue lines together.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40063 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-19 18:06:26 +00:00
Bill Wendling
74430e7b0e Testcase for PR1549
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40041 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-19 06:31:11 +00:00
Evan Cheng
ccb21fdbb6 New test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40020 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-18 21:39:16 +00:00
Dan Gohman
4106f3714e Implement initial memory alignment awareness for SSE instructions. Vector loads
and stores that have a specified alignment of less than 16 bytes now use
instructions that support misaligned memory references.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40015 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-18 20:23:34 +00:00
Dan Gohman
48613b930a It's not necessary to do rounding for alloca operations when the requested
alignment is equal to the stack alignment.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40004 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-18 16:29:46 +00:00
Evan Cheng
574470a561 Fix test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39976 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-17 18:16:09 +00:00
Evan Cheng
89d1659cf2 Use push / pop for prologues and epilogues.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39967 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-17 07:59:08 +00:00
Dale Johannesen
e7e7d0d7e3 Skeleton of post-RA scheduler; doesn't do anything yet.
Change name of -sched option and DEBUG_TYPE to
pre-RA-sched; adjust testcases.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39816 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-13 17:13:54 +00:00
Evan Cheng
d04e8ecf5f Add test case for PR1545.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39749 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-11 19:29:05 +00:00
Dan Gohman
743d3a7548 Change the peep for EXTRACT_VECTOR_ELT of BUILD_PAIR to look for
the new CONCAT_VECTORS node type instead, as that's what legalize
uses now. And add a peep for EXTRACT_VECTOR_ELT of INSERT_VECTOR_ELT.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38503 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-10 18:20:44 +00:00
Dan Gohman
02e25b70aa Add a regression test for folding spill code into scalar min and max.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38492 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-10 15:34:29 +00:00
Chris Lattner
ba7721633c force a cpu without SSE
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38466 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-09 17:35:18 +00:00
Chris Lattner
349d4c8d66 allow this to work on ppc-darwin
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38465 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-09 17:32:28 +00:00
Bill Wendling
93888428d4 Allow a GR64 to be moved into an MMX register via the "movd" instruction.
Still need to have JIT generate this code.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37863 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-04 00:19:54 +00:00
Dale Johannesen
9eed80cb12 New testcases for rev 37847 (PR's 1489 and 1505).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37848 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-03 00:58:37 +00:00
Dan Gohman
9212a8261f Add a basic test-case for passing and returning <4 x double> and
<8 x float> values on X86.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37845 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-02 16:23:47 +00:00
Dan Gohman
03de31acae New test case. DAGCombiner should be able to fold -sin(-x)
in -enable-unsafe-fp-math mode.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37841 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-02 15:43:20 +00:00
Evan Cheng
00e7fed30d New test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37823 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-29 23:17:15 +00:00
Evan Cheng
cdc85a58a0 New test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37815 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-29 21:40:30 +00:00
John Criswell
e644ef7b09 Convert .cvsignore files
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37801 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-29 16:35:07 +00:00
Evan Cheng
97f5ccf682 New tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37787 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-29 00:27:18 +00:00
Evan Cheng
ad0a4c0be9 New test case: identity operation of RHS / LHS of a VECTOR_SHUFFLE.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37637 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-19 00:06:08 +00:00
Chris Lattner
910b4b8479 ensure we don't regress on these tests. We generate aweful code in x86-32 for
these though.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37619 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-17 23:29:57 +00:00
Bill Wendling
521d5c72ac XFAILing until I can fix properly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37618 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-16 23:57:51 +00:00
Bill Wendling
0c5c8d8f54 Testcase for MMX int to MMX register failure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37612 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-16 06:31:47 +00:00
Chris Lattner
71683d3520 make this test harder, include a tied register.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37600 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-15 19:09:53 +00:00
Dale Johannesen
318093b6f8 Do not treat FP_REG_KILL as terminator in branch analysis (X86).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37578 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-14 22:03:45 +00:00
Chris Lattner
de09d17231 new testcase for PR1495
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37452 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-06 01:21:46 +00:00
Evan Cheng
45beb482c4 New test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37431 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-05 01:45:08 +00:00
Dale Johannesen
fe7e397100 Tail merging wasn't working for predecessors of landing pads. PR 1496.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37427 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-04 23:52:54 +00:00
Dale Johannesen
a5a2117a46 Implement smarter algorithm for choosing which blocks to tail-merge.
See test/CodeGen/X86/test-pic-jtbl.ll for a case where it works well;
shaves another 10K off our favorite benchmark.  I was hesitant about
this because of compile speed, but seems to do OK on a bootstrap.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37392 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-01 23:02:45 +00:00
Dale Johannesen
4212a2320f tail merging shrinks this code a bit. Could do more in future.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37316 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-23 21:09:26 +00:00
Evan Cheng
287b47f04b Add test for PR1259.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37273 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-21 23:30:33 +00:00
Chris Lattner
8a282967ef add source
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37253 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-19 01:22:52 +00:00
Chris Lattner
b0e07dd19a new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37251 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-19 01:21:39 +00:00
Evan Cheng
fd30eee2f0 New test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37174 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-17 18:49:50 +00:00
Chris Lattner
944a3f4d01 testcase for PR1427
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37140 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-17 03:29:17 +00:00
Chris Lattner
1651871342 testcase for maskmovq
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37101 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-16 06:14:10 +00:00
Evan Cheng
47927b3e5a New test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37048 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 20:47:21 +00:00
Evan Cheng
3cc94c08af Doh. .cpp -> .ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37047 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 20:43:28 +00:00
Duncan Sands
df8b1f0e8e Testcase for PR1398.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36905 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-07 20:45:20 +00:00
Chris Lattner
2947fd50cb remove this xfail'd test, move it to the X86 readme.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36800 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 22:10:53 +00:00
Chris Lattner
60ef91a3ce We need support for tail calls, this is moved to PR1392
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36798 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 22:03:12 +00:00
Chris Lattner
09d933fdbd new testcase for PR1371
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36786 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 19:38:43 +00:00
Evan Cheng
b2ef40c36f negatize -> negative
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36683 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-03 18:20:17 +00:00
Reid Spencer
9dd446c561 Split target dependent test portions to target-specific directories.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36612 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-01 02:56:15 +00:00
Reid Spencer
4274e40514 For PR1370:
Rearrange some tests so that if PowerPC is not being built we don't try to
run PowerPC specific tests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36587 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-30 05:11:58 +00:00
Anton Korobeynikov
21beed669e Updated aliases test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36558 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 10:34:42 +00:00
Chris Lattner
c44f3ea172 new testcase for PR1356
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36535 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 06:41:13 +00:00
Chris Lattner
827a1f45c5 update for new inline asm syntax
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36526 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 05:20:26 +00:00
Dan Gohman
330ce44af6 testcase for PR1339: http://llvm.org/PR1339
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36492 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-26 21:04:39 +00:00
Anton Korobeynikov
566dfcbf98 Add test to proper place. Also, XFAIL until ppc bootstrap will be ok.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36491 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-26 20:49:05 +00:00
Anton Korobeynikov
ab8fd40403 Fixx off-by-one bug, which prevents llvm-gcc bootstrap on ppc32
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36490 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-26 20:44:04 +00:00
Evan Cheng
37a21457bf PR1348 test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36457 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-26 01:14:14 +00:00
Evan Cheng
0f8ad0d180 New test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36455 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-26 00:07:36 +00:00
Chris Lattner
0bc2f48d6f && no longer needed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36453 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-25 22:32:55 +00:00
Bill Wendling
a03f1e3b0c Testcase for codegen bug.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36450 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-25 21:58:17 +00:00
Anton Korobeynikov
8b0a8c84da Implement aliases. This fixes PR1017 and it's dependent bugs. CFE part
will follow.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36435 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-25 14:27:10 +00:00
Chris Lattner
3d4a548978 new testcase that crashes llc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36412 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-25 00:00:12 +00:00
Bill Wendling
b635d3faac Testcases for MMX.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36408 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-24 22:28:30 +00:00
Lauro Ramos Venancio
0a2cdb687b Add TLS tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36360 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-23 01:29:35 +00:00
Reid Spencer
16154ef9f9 Use the llvm_supports_target function to prevent running of tests for
targets that LLVM is not configured to support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36315 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-21 20:41:27 +00:00
Evan Cheng
ae1998f32c Fix test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36266 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-20 00:45:36 +00:00
Chris Lattner
1e6cf8630f new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36243 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-18 03:04:37 +00:00
Evan Cheng
919184867c New crasher test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36241 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-18 02:35:10 +00:00
Anton Korobeynikov
57fc00d5cf Implemented correct stack probing on mingw/cygwin for dynamic alloca's.
Also, fixed static case in presence of eax livin. This fixes PR331

PS: Why don't we still have push/pop instructions? :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36195 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-17 09:20:00 +00:00
Chris Lattner
8f9a0ff495 refix this
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36172 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 21:30:21 +00:00
Chris Lattner
3b317e5e7f use an x86 t-t for an x86 test. Thanks to Dan for noticing this!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36170 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 21:26:37 +00:00
Chris Lattner
4da9fd79f7 fix this test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36160 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 21:05:37 +00:00
Evan Cheng
b71ccac03a Fixes tests and remove xfail.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36152 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 20:04:11 +00:00
Evan Cheng
4447934534 One more callee-saved register used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36151 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 18:59:25 +00:00
Reid Spencer
eb1d74e0c8 For PR1319:
Remove && from the end of the lines to prevent tests from throwing run
lines into the background. Also, clean up places where the same command
is run multiple times by using a temporary file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36142 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 17:36:08 +00:00
Reid Spencer
43b40035ba For PR1319:
Fix syntax of tests to ensure grep pattern is properly quoted.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36134 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 15:31:49 +00:00
Reid Spencer
4cda190ef5 For PR1319:
Fix test syntax per new rules.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36133 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 15:15:52 +00:00
Reid Spencer
264225f982 For PR1336:
Rename test functions to not conflict with an instruction mnemonic.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36130 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 14:23:07 +00:00
Reid Spencer
bc243932a3 For PR1336:
Ignore case for instruction mnemonic comparison.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36129 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 14:20:28 +00:00
Reid Spencer
97d7a588a8 Wrap long line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36128 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 14:17:04 +00:00
Reid Spencer
afc64e4da0 For PR1336:
Ignore case for register name compare.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36127 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 14:14:31 +00:00
Reid Spencer
4575ab2186 For PR1336:
XFAIL tests covered by the PR. These will be un-XFAILed as they are fixed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36093 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 23:00:46 +00:00
Reid Spencer
d3b1f6d3e0 For PR1319: Upgrade to new test harness.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36091 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 22:20:47 +00:00
Chris Lattner
9b63ceeada this test isn't testing what it thought it was
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36088 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 21:33:36 +00:00
Chris Lattner
d617d39f74 New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35969 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-13 20:28:08 +00:00
Chris Lattner
1780d861ac new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35942 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-12 05:58:21 +00:00
Reid Spencer
0f5aed5648 Make the llvm-runtest function much more amenable by eliminating all the
global variables that needed to be passed in. This makes it possible to
add new global variables with only a couple changes (Makefile and llvm-dg.exp)
instead of touching every single dg.exp file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35918 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-11 19:56:59 +00:00
Chris Lattner
5b456e867b this got better
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35908 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-11 16:12:27 +00:00
Chris Lattner
603572a771 new testcases for integer abs function
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35880 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-11 05:02:57 +00:00
Chris Lattner
7dadb92c67 add another test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35801 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-09 05:26:48 +00:00
Chris Lattner
d4dbaf8168 The x constraint allows scalar FP values as well as vectors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35798 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-09 05:11:03 +00:00
Chris Lattner
363a6dfdf7 testcase for PR1314
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35778 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-08 22:22:53 +00:00
Evan Cheng
1c89bd10b3 Better still.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35663 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-04 08:49:40 +00:00
Evan Cheng
96598233fc These got better.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35661 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-04 07:41:15 +00:00
Chris Lattner
0a266af5ce fix this testcase on ppc hosts
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35603 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-02 20:39:48 +00:00
Reid Spencer
9277e3bbd3 Let llvm-upgrade upgrade the bswap intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35569 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-02 01:09:19 +00:00
Reid Spencer
a3c533a716 For PR1297:
Update these test cases to use proper signatures for bswap which is now
and overloaded intrinsic. Its name must be of the form llvm.bswap.i32.i32
since both the parameter and the result or of type "iAny". Also, the
bit counting intrinsics changed to always return i32.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35548 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-01 07:36:28 +00:00
Chris Lattner
b4c377f5dd add a testcase for x86
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35516 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-30 21:22:46 +00:00
Chris Lattner
57b82b7845 new testcases
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35433 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-28 18:11:17 +00:00
Chris Lattner
01f45ca17b new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35432 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-28 18:03:14 +00:00
Reid Spencer
5373b721c0 Remove use of implementation keyword.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35412 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-28 02:38:26 +00:00
Chris Lattner
6dc44b02ee new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35331 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-25 05:00:23 +00:00
Chris Lattner
eab65a060c new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35326 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-25 04:35:23 +00:00
Chris Lattner
e4e2e18f47 new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35323 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-25 02:17:58 +00:00
Chris Lattner
9a4fdfac3d new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35317 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-25 01:44:40 +00:00
Chris Lattner
ec13dd5cc9 These functions should use shll, not lea.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35203 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-20 06:01:41 +00:00
Reid Spencer
2318ec67b8 For PR1258:
Revise numeric value references to accommodate collapsed type planes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35170 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-19 18:27:35 +00:00
Devang Patel
0e7039a5a8 Test case for X86 inline asm constraint 'I'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35130 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-17 00:14:52 +00:00
Bill Wendling
1b7a81d3ae And now support for MMX logical operations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35125 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-16 09:44:46 +00:00
Bill Wendling
74027e98f1 Multiplication support for MMX.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35118 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-15 21:24:36 +00:00
Evan Cheng
31a6e9f7ed This got better.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35090 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-13 23:26:41 +00:00
Bill Wendling
c1fb0473ed Adding more arithmetic operators to MMX. This is an almost exact copy of
the addition. Please let me know if you have suggestions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35055 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-10 09:57:05 +00:00
Chris Lattner
7754d2fd8d upgrade this testcase, add test for fp immediate to memory operand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35034 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-08 22:33:06 +00:00
Bill Wendling
71b91ac76f Add MMX arithmetic testcase.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35032 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-08 22:14:51 +00:00
Bill Wendling
229baffc4e Add the emms intrinsic for MMX support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34938 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-05 23:09:45 +00:00
Evan Cheng
c6214693a4 Add a new test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34842 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-02 10:37:19 +00:00
Anton Korobeynikov
9dd9abd87f Ensure that fastcall'ed function is correctly mangled & stack is
properly aligned


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34788 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-01 16:29:22 +00:00
Chris Lattner
ba3f7c6e83 Eliminate enable-x86-fastcc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34753 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-28 18:38:58 +00:00
Chris Lattner
7e08570379 fastcc -> fastcall
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34749 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-28 18:35:36 +00:00
Chris Lattner
b5d808887a fastcc -> fastcall
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34747 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-28 18:21:50 +00:00
Chris Lattner
08553f9a33 fastcc -> fastcall
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34746 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-28 17:42:50 +00:00
Chris Lattner
6c0880c624 new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34622 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-26 03:16:20 +00:00
Chris Lattner
df6b57ad48 new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34614 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-25 23:08:29 +00:00
Chris Lattner
f82435d4d7 new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34612 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-25 22:23:15 +00:00
Chris Lattner
113296ba51 verify that double is returned in XMM0 if the function is fastcc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34591 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-25 09:30:03 +00:00
Chris Lattner
f4acec1be8 new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34583 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-25 08:23:01 +00:00
Chris Lattner
4283c118cf verify i128 return on x86-64 continues to codegen optimally.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34575 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-25 06:06:49 +00:00
Evan Cheng
85f00083f5 Added test case for PR1207.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34429 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-19 21:53:59 +00:00
Dale Johannesen
6b896cec8b Fixes PR 1200
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34359 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-17 00:44:34 +00:00
Chris Lattner
727c235840 new testcase, by Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34255 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-13 23:41:24 +00:00
Evan Cheng
1cbd333618 i64 setcc tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34067 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-08 22:27:55 +00:00
Reid Spencer
9a01353e73 Make the RUN: line readable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33906 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-05 10:09:41 +00:00
Reid Spencer
1853da3f22 For PR411:
Don't re-use var names.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33899 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-05 04:00:04 +00:00
Chris Lattner
2b5d75c35b new testcase for x86 backend miscompilation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33883 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-04 20:15:15 +00:00
Reid Spencer
832254e1c2 Changes to support making the shift instructions be true BinaryOperators.
This feature is needed in order to support shifts of more than 255 bits
on large integer types.  This changes the syntax for llvm assembly to
make shl, ashr and lshr instructions look like a binary operator:
   shl i32 %X, 1
instead of
   shl i32 %X, i8 1
Additionally, this should help a few passes perform additional optimizations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33776 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-02 02:16:23 +00:00
Reid Spencer
908504347b For PR411:
Update these tests to not use the same name even though the type of the
value differs. After PR411 hits, type planes will be gone and it will be
illegal for a name to be used twice, regardless of type.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33660 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-30 16:16:01 +00:00
Chris Lattner
f6310ab771 test that the 'ir' constraint works.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33646 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-29 23:55:20 +00:00
Reid Spencer
e3ff5ada8a For PR761:
Remove "target endian/pointersize" or add "target datalayout" to make
the test parse properly or set the datalayout because defaults changes.

For PR645:
Make global names use the @ prefix.

For llvm-upgrade changes:
Fix test cases or completely remove use of llvm-upgrade for test cases
that cannot survive the new renaming or upgrade capabilities.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33533 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-26 08:25:06 +00:00
Anton Korobeynikov
5032e5a613 * Fix one more bug in PIC codegen: extra load is needed for *all*
non-statics.
* Introduce new option to output zero-initialized data to .bss section.
This can reduce size of binaries. Enable it by default for ELF &
Cygwin/Mingw targets. Probably, Darwin should be also added.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33299 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-17 10:33:08 +00:00
Chris Lattner
def2760d00 test darwin too! :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33241 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-15 18:32:24 +00:00
Chris Lattner
65339307a5 new testcase for pr1103
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33188 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-14 00:12:50 +00:00
Reid Spencer
737ec5130e For PR1043:
Bye, Bye Booly. Remove the use of the bool type from non-upgraded test
cases and from grep expressions. The parser doesn't accept it and the
asm writer doesn't produce it any more.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33183 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-13 05:06:52 +00:00
Chris Lattner
bcaae8d8a4 update this to work with recent asmprinter change
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33143 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-12 21:16:56 +00:00
Anton Korobeynikov
7f70559bc4 * PIC codegen for X86/Linux has been implemented
* PIC-aware internal structures in X86 Codegen have been refactored
* Visibility (default/weak) has been added
* Docs fixes (external weak linkage, visibility, formatting)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33136 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-12 19:20:47 +00:00
Chris Lattner
857a35d230 Add PR number for future reference
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33031 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-09 00:31:52 +00:00
Evan Cheng
fd842082f3 Fix test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33030 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-09 00:09:34 +00:00
Evan Cheng
b17ef458a0 Added a test case from PR1075.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33028 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-08 23:58:27 +00:00
Evan Cheng
d7fbbb7c08 Undo xfail now scheduler deficiency has been fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33027 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-08 23:57:40 +00:00
Evan Cheng
bafe19d595 Update test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32936 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-05 21:53:15 +00:00
Reid Spencer
e5fe98cbb0 Global variables are not renamed by llvm-upgrade any more.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32925 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-05 18:37:18 +00:00
Reid Spencer
98ed6963e3 Update for change in parameter attribute syntax.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32924 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-05 18:35:52 +00:00
Reid Spencer
bdcb9dfc3a Give the assembler some input.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32903 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-05 16:45:06 +00:00
Evan Cheng
00c29703fe Add a test case for SSE fcopysign using SSE bitwise operations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32901 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-05 08:12:59 +00:00
Reid Spencer
f6dc65f672 Update test cases that grepped for register names that have now changed
as a result of llvm-upgrade handling collapsed type planes better.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32849 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-03 23:47:29 +00:00
Reid Spencer
0a516f926f It is no longer permissible to have undefined types in function parameters.
Just fix it by defining the type as opaque.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32838 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-03 17:03:48 +00:00
Reid Spencer
8aabc9eb23 For PR1070:
Revert previous patch now that llvm-upgrade can handle collapsed type
plane conversion properly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32814 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-02 05:53:06 +00:00
Reid Spencer
eacb7020ec For PR950:
Update the test suite to accommodate the change from signed integer types
to signless integer types. The changes were of only a few kinds:

1. Make sure llvm-upgrade is run on the source which does the bulk of the
   changes automatically.

2. Change things like "grep 'int'" to "grep 'i32'"

3. In several tests bitcasting caused the same name to be reused in the
   same type plane. These had to be manually fixed. The fix was (generally)
   to leave the bitcast and provide the instruction with a new name. This
   should not affect the semantics of the test. In a few cases, the
   bitcasts were known to be superfluous and irrelevant to the test case
   so they were removed.

4. One test case uses a bytecode file which needed to be updated to the
   latest bytecode format.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32789 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-31 06:02:00 +00:00
Reid Spencer
73e70822ae Update tests that need to be run through llvm-upgrade. This is necessary
for upcoming changes to the llvm assembly grammar.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32768 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-29 20:01:32 +00:00
Reid Spencer
787bfe654c Integer constants now print out as signed values in the assembly,
regardless of the signedness of the associated type.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32734 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-21 19:14:49 +00:00
Chris Lattner
cbac0aa9eb testcase for pr1061
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32674 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-19 19:29:50 +00:00