23663 Commits

Author SHA1 Message Date
Dan Gohman
54ec4bfa5f 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.

llvm-svn: 40648
2007-07-31 20:11:57 +00:00
Chris Lattner
03708acd4e new testcase
llvm-svn: 40636
2007-07-31 16:18:25 +00:00
Evan Cheng
12c6be84ff Redo and generalize previously removed opt for pinsrw: (vextract (v4i32 bc (v4f32 s2v (f32 load ))), 0) -> (i32 load )
llvm-svn: 40628
2007-07-31 08:04:03 +00:00
Dan Gohman
4ff9fb14f6 Fix a bug in getCopyFromParts turned up in the testcase for PR1132.
llvm-svn: 40598
2007-07-30 19:09:17 +00:00
Evan Cheng
c8780b0ae9 New test case.
llvm-svn: 40587
2007-07-30 07:52:03 +00:00
Dan Gohman
4788552deb 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.

llvm-svn: 40555
2007-07-27 17:16:43 +00:00
Evan Cheng
931de40afa Reverting 40504 for now. It's breaking oggenc.
llvm-svn: 40547
2007-07-27 01:37:47 +00:00
Evan Cheng
dfa5d283fd Test case for PR1573.
llvm-svn: 40539
2007-07-26 17:45:57 +00:00
Evan Cheng
e9ba8e0765 Fix test.
llvm-svn: 40536
2007-07-26 17:07:03 +00:00
Dan Gohman
8455bd3fae 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.

llvm-svn: 40504
2007-07-26 00:31:09 +00:00
Dan Gohman
f906c7286f Use movaps to load a v4f32 build_vector of all-constant values into a
register instead of loading each element individually.

llvm-svn: 40478
2007-07-24 22:55:08 +00:00
Duncan Sands
b063fa59d3 The Ada f-e produces various auxiliary output files
that cannot be suppressed and cannot be redirected:
they are dumped in the current working directory.
When running the testsuite this means that these
files do not end up in the Output directory.  The
best solution I could find is to change directory
into Output before running tests.

llvm-svn: 40437
2007-07-23 15:23:35 +00:00
Dan Gohman
45863cc202 Update these regression tests to accomodate X86InstrSSE.td now using movups/movaps
for everything.

llvm-svn: 40101
2007-07-20 16:31:26 +00:00
Evan Cheng
f195429a0e New test.
llvm-svn: 40077
2007-07-20 00:27:56 +00:00
Evan Cheng
a39fd10e32 New test.
llvm-svn: 40073
2007-07-19 23:53:50 +00:00
Evan Cheng
8ab393548f Try fixing it again.
llvm-svn: 40072
2007-07-19 23:53:29 +00:00
Reid Spencer
314e1cb7ee 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.

llvm-svn: 40069
2007-07-19 23:13:04 +00:00
Bill Wendling
dd96b98bf6 Don't need the "&&" to glue lines together.
llvm-svn: 40063
2007-07-19 18:06:26 +00:00
Bill Wendling
e8ea3303ce Testcase for PR1549
llvm-svn: 40041
2007-07-19 06:31:11 +00:00
Evan Cheng
dcc3451f8a New test.
llvm-svn: 40020
2007-07-18 21:39:16 +00:00
Dan Gohman
776962a97a 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.

llvm-svn: 40015
2007-07-18 20:23:34 +00:00
Dan Gohman
a7b65c30a3 It's not necessary to do rounding for alloca operations when the requested
alignment is equal to the stack alignment.

llvm-svn: 40004
2007-07-18 16:29:46 +00:00
Evan Cheng
5184c9d787 Fix test.
llvm-svn: 39976
2007-07-17 18:16:09 +00:00
Tanya Lattner
8817a170f7 Don't use * in XFAIL line unless you want it to XFAIL on everything. I don't believe you can use true regular expressions here. It will just look for those keywords. Please test this on sparc and see if they still are xfailed.
llvm-svn: 39975
2007-07-17 18:08:32 +00:00
Gabor Greif
6881ace037 XFAIL these on sparc-solaris
llvm-svn: 39969
2007-07-17 10:25:31 +00:00
Evan Cheng
9ae2eb43d8 Use push / pop for prologues and epilogues.
llvm-svn: 39967
2007-07-17 07:59:08 +00:00
Reid Spencer
5bc753e26b For PR1558:
Move tests that have C/C++ sources into the appropriate directory. This
allows them to be selected for testing based on whether llvm-gcc is
present or not.

llvm-svn: 39963
2007-07-17 06:20:38 +00:00
Reid Spencer
f54537370a Remove insignificant test no longer needed.
llvm-svn: 39931
2007-07-16 22:03:36 +00:00
Dan Gohman
c6e67a6126 Remove the trailing semicolon from function declarations in LLVM,
where it's interpreted as a comment, not part of the syntax.

llvm-svn: 39920
2007-07-16 13:37:30 +00:00
Evan Cheng
07bc082891 Added test case from PR1540.
llvm-svn: 39845
2007-07-13 23:57:33 +00:00
Dale Johannesen
2182f06f2d Skeleton of post-RA scheduler; doesn't do anything yet.
Change name of -sched option and DEBUG_TYPE to
pre-RA-sched; adjust testcases.

llvm-svn: 39816
2007-07-13 17:13:54 +00:00
Gabor Greif
42d12da712 these tests do not need a triple on Solaris. Thanks sabre!
llvm-svn: 39803
2007-07-13 10:08:18 +00:00
Gabor Greif
1ef777cbb4 fix the remaining 3 testcases that missed a target triple
llvm-svn: 39773
2007-07-12 13:21:08 +00:00
Lauro Ramos Venancio
3d70855dd2 Handle packed structs in the CBackend.
llvm-svn: 39752
2007-07-11 19:56:53 +00:00
Evan Cheng
ade8183fe8 Add test case for PR1545.
llvm-svn: 39749
2007-07-11 19:29:05 +00:00
Dan Gohman
60d6f96da3 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.

llvm-svn: 38503
2007-07-10 18:20:44 +00:00
Dan Gohman
4bd45b3d53 Add a regression test for folding spill code into scalar min and max.
llvm-svn: 38492
2007-07-10 15:34:29 +00:00
Dan Gohman
f8f531bf69 Change getCopyToParts and getCopyFromParts to always use target-endian
register ordering, for both physical and virtual registers. Update the PPC
target lowering for calls to expect registers for the call result to
already be in target order.

llvm-svn: 38471
2007-07-09 20:59:04 +00:00
Chris Lattner
318ff8dd94 force a cpu without SSE
llvm-svn: 38466
2007-07-09 17:35:18 +00:00
Chris Lattner
0937478073 allow this to work on ppc-darwin
llvm-svn: 38465
2007-07-09 17:32:28 +00:00
Chris Lattner
0e623de40d remove this bogus t-t
llvm-svn: 38464
2007-07-09 17:31:07 +00:00
Chris Lattner
6fec9a91b7 add target triple to fix PR1546
llvm-svn: 38462
2007-07-09 17:14:58 +00:00
Dan Gohman
5740239998 Add explicit triples to these tests so that llc behaves as expected on
non-Apple hosts.

llvm-svn: 38455
2007-07-09 13:42:32 +00:00
Dan Gohman
bab5355ff4 Add an explicit triple to the big-endian tests so that the assembly
output format is always consistent with what the greps are looking for.

llvm-svn: 37943
2007-07-06 13:15:51 +00:00
Duncan Sands
6ddf75174a Test that byte offsets are used to index into the list
of filter ids, and not simply the id index.  Testing
this requires at least 128 type infos!

llvm-svn: 37941
2007-07-06 12:38:27 +00:00
Evan Cheng
da784693c3 Fix test.
llvm-svn: 37928
2007-07-05 23:00:50 +00:00
Chris Lattner
feba62c719 avoid ambiguity in target selection
llvm-svn: 37927
2007-07-05 22:16:19 +00:00
Dan Gohman
d258e80583 Add a parameter to getCopyToParts and getCopyFromParts to specify whether
endian swapping should be done, and update the code to use it. This fixes
some register ordering issues on big-endian systems, such as PowerPC,
introduced by the recent illegal by-val arguments changes.

llvm-svn: 37921
2007-07-05 20:12:34 +00:00
Bill Wendling
3053244b27 Allow a GR64 to be moved into an MMX register via the "movd" instruction.
Still need to have JIT generate this code.

llvm-svn: 37863
2007-07-04 00:19:54 +00:00
Dale Johannesen
a8bf39ee31 New testcases for rev 37847 (PR's 1489 and 1505).
llvm-svn: 37848
2007-07-03 00:58:37 +00:00