Nadav Rotem
2130a07687
Remove the the test which checks the saving of a vector of booleans into memory.
...
The decision was to pack the bits. Currently no codegen supports this.
Currently, all of the bits in the vector are saved into the same address
in memory.
llvm-svn: 142149
2011-10-16 19:06:06 +00:00
David Meyer
b1fbf9ff26
PR11004: Inline memcpy to avoid generating nested call sequence. Un-XFAIL 2011-06-09-TailCallByVal and 2010-11-04-BigByval
...
llvm-svn: 140516
2011-09-26 06:13:20 +00:00
Bill Wendling
36faa4d49c
This test is completely invalid with the modern EH model. Delete.
...
llvm-svn: 140213
2011-09-20 23:52:09 +00:00
Nadav Rotem
e114ba4465
This test is already covered by llvm/trunk/test/CodeGen/X86/vsel.ll
...
llvm-svn: 139288
2011-09-08 08:43:23 +00:00
Nadav Rotem
2550ba2a27
Add X86-SSE4 codegen support for vector-select.
...
llvm-svn: 139285
2011-09-08 08:11:19 +00:00
Dan Gohman
5423017526
Revert r129875, XFAILing this test for arm, since the fix was reverted.
...
llvm-svn: 139058
2011-09-03 00:14:24 +00:00
Bill Wendling
4aa2573748
Try to eliminate the use of the 'unwind' instruction.
...
llvm-svn: 139046
2011-09-02 22:41:11 +00:00
Benjamin Kramer
c032617581
XFAIL this test on arm until the backend is fixed.
...
llvm-svn: 138955
2011-09-01 18:40:03 +00:00
Bill Wendling
c4c24f03e9
Revert r138894. This was failing on cmake-clang-i686-msvc10.
...
llvm-svn: 138900
2011-08-31 21:20:25 +00:00
Bill Wendling
e6174a2c85
Update more tests to the new EH scheme.
...
llvm-svn: 138894
2011-08-31 21:04:11 +00:00
Bill Wendling
ac88ab7cce
Revert r138606 until LowerInvoke has been converted to the new EH scheme.
...
llvm-svn: 138656
2011-08-26 21:11:23 +00:00
Bill Wendling
62fe9e9aa6
Update to the new EH scheme.
...
llvm-svn: 138606
2011-08-25 23:48:37 +00:00
Bill Wendling
3fb137f7ef
LSR wants to split the landing pad's critical edge. Let it do it, but use the
...
proper function to do it.
llvm-svn: 138550
2011-08-25 05:55:40 +00:00
Andrew Trick
1b9d9b6b7a
Comment correction.
...
llvm-svn: 134958
2011-07-12 03:39:22 +00:00
Chris Lattner
b1ed91f397
Land the long talked about "type system rewrite" patch. This
...
patch brings numerous advantages to LLVM. One way to look at it
is through diffstat:
109 files changed, 3005 insertions(+), 5906 deletions(-)
Removing almost 3K lines of code is a good thing. Other advantages
include:
1. Value::getType() is a simple load that can be CSE'd, not a mutating
union-find operation.
2. Types a uniqued and never move once created, defining away PATypeHolder.
3. Structs can be "named" now, and their name is part of the identity that
uniques them. This means that the compiler doesn't merge them structurally
which makes the IR much less confusing.
4. Now that there is no way to get a cycle in a type graph without a named
struct type, "upreferences" go away.
5. Type refinement is completely gone, which should make LTO much MUCH faster
in some common cases with C++ code.
6. Types are now generally immutable, so we can use "Type *" instead
"const Type *" everywhere.
Downsides of this patch are that it removes some functions from the C API,
so people using those will have to upgrade to (not yet added) new API.
"LLVM 3.0" is the right time to do this.
There are still some cleanups pending after this, this patch is large enough
as-is.
llvm-svn: 134829
2011-07-09 17:41:24 +00:00
Chris Lattner
2522d2df06
more tests not making the jump into the brave new world.
...
llvm-svn: 134820
2011-07-09 16:57:10 +00:00
Lang Hames
2bbdc0bcda
Added a testcase for PR10220.
...
llvm-svn: 134573
2011-07-07 00:36:02 +00:00
Jakub Staszak
3f158fdf6e
Introduce "expect" intrinsic instructions.
...
llvm-svn: 134516
2011-07-06 18:22:43 +00:00
Devang Patel
f071d72c44
Handle debug info for i128 constants.
...
llvm-svn: 133821
2011-06-24 20:46:11 +00:00
Chris Lattner
80ed9dc9e5
rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is
...
for pre-2.9 bitcode files. We keep x86 unaligned loads, movnt, crc32, and the
target indep prefetch change.
As usual, updating the testsuite is a PITA.
llvm-svn: 133337
2011-06-18 06:05:24 +00:00
Chris Lattner
59345c8b65
remove asmparser support for the old getresult instruction, which has been subsumed by extractvalue.
...
llvm-svn: 133247
2011-06-17 06:57:15 +00:00
Chris Lattner
def1949c00
Remove support for using "foo" as symbols instead of %"foo". This is ancient
...
syntax and has been long obsolete. As usual, updating the tests is the nasty
part of this.
llvm-svn: 133242
2011-06-17 06:36:20 +00:00
Chris Lattner
b90ed2233c
manually upgrade a bunch of tests to modern syntax, and remove some that
...
are either unreduced or only test old syntax.
llvm-svn: 133228
2011-06-17 03:14:27 +00:00
Anna Zaks
a56e84e439
Rename the test. Thanks Cameron! Use shorter/generic names.
...
llvm-svn: 133115
2011-06-16 00:34:10 +00:00
Anna Zaks
2c2aa9a9be
Function::getNumBlockIDs() should be used instead of Function::size() to set the upper limit on the block IDs since basic blocks might get removed (simplified away) after being initially numbered. Plus the test case, in which SelectionDAGBuilder::visitBr() calls llvm::MachineFunction::removeFromMBBNumbering(), which introduces the hole in numbering leading to an assert in llc (prior to the fix).
...
llvm-svn: 133113
2011-06-16 00:03:21 +00:00
Nadav Rotem
d1e8f9a1e0
Move the legalizer tests to the X86 directory because the test uses the x86
...
codegen. Thanks Galina.
llvm-svn: 132706
2011-06-07 05:23:58 +00:00
Nadav Rotem
c807fa5687
Add methods to support the integer-promotion of vector types. Methods to
...
legalize SDNodes such as BUILD_VECTOR, EXTRACT_VECTOR_ELT, etc.
llvm-svn: 132689
2011-06-06 20:55:56 +00:00
Nadav Rotem
06bd6d304e
TypeLegalizer: Add support for passing of vector-promoted types in registers (copyFromParts/copyToParts).
...
llvm-svn: 132649
2011-06-04 20:58:08 +00:00
Nadav Rotem
8b24a731f2
This patch is another step in the direction of adding vector select. In this
...
patch we add a flag to enable a new type legalization decision - to promote
integer elements in vectors. Currently, the rest of the codegen does not support
this kind of legalization. This flag will be removed when the transition is
complete.
llvm-svn: 132394
2011-06-01 12:51:46 +00:00
Galina Kistanova
dd45646a47
Move test for appropriate directory.
...
llvm-svn: 131477
2011-05-17 19:06:43 +00:00
Rafael Espindola
e53b7d1a11
Make codegen able to handle values of empty types. This is one way
...
to fix PR9900. I will keep it open until sable is able to comment on it.
llvm-svn: 131294
2011-05-13 15:18:06 +00:00
Stuart Hastings
1b06a10d62
Un-XFAIL this test for ARM. <rdar://problem/7662569>
...
llvm-svn: 129875
2011-04-20 21:47:45 +00:00
Chris Lattner
af1bccec68
Fix a bug where RecursivelyDeleteTriviallyDeadInstructions could
...
delete the instruction pointed to by CGP's current instruction
iterator, leading to a crash on the testcase. This fixes PR9578.
llvm-svn: 129200
2011-04-09 07:05:44 +00:00
Stuart Hastings
345094777f
ARM doesn't support byval yet. XFAIL this test until it does.
...
llvm-svn: 128891
2011-04-05 17:16:21 +00:00
Duncan Sands
feb9926a59
Make this test x86 specific because the ARM backend can't handle it.
...
llvm-svn: 126650
2011-02-28 12:30:47 +00:00
Duncan Sands
f571290d1e
Legalize support for fpextend of vector. PR9309.
...
llvm-svn: 126574
2011-02-27 14:41:27 +00:00
Nadav Rotem
db2f54811d
A fix for 9165.
...
The DAGCombiner created illegal BUILD_VECTOR operations.
The patch added a check that either illegal operations are
allowed or that the created operation is legal.
llvm-svn: 125435
2011-02-12 14:40:33 +00:00
Chris Lattner
86d56c651d
fix rdar://8878965, a regression I introduced with the recent
...
llvm.objectsize changes.
llvm-svn: 123771
2011-01-18 20:53:04 +00:00
Duncan Sands
64b75da088
Add a testcase for PR8582, which mysteriously fixed itself, in case the problem
...
comes back some day.
llvm-svn: 122982
2011-01-06 23:04:29 +00:00
Andrew Trick
033efdf4d7
Fixes PR8823: add-with-overflow-128.ll
...
In the bottom-up selection DAG scheduling, handle two-address
instructions that read/write unspillable registers. Treat
the entire chain of two-address nodes as a single live range.
llvm-svn: 122472
2010-12-23 03:15:51 +00:00
Chris Lattner
17a06b7efa
temporarily disable this: PR8823.
...
llvm-svn: 122222
2010-12-20 02:11:23 +00:00
Chris Lattner
405c28bc7d
add a general coverage test for overflow intrinsics.
...
llvm-svn: 122185
2010-12-19 20:01:13 +00:00
Andrew Trick
cf7fefb25c
Removing the useless test that I added recently. It was meant as an example, but not complicated enough to merit another test.
...
llvm-svn: 119898
2010-11-20 07:26:51 +00:00
Andrew Trick
b709ec6345
Emacs auto-fill bug.
...
llvm-svn: 118908
2010-11-12 18:17:46 +00:00
Andrew Trick
ff5f8680d8
Test case for PR8287: SD scheduling time. Fixed in r118904.
...
llvm-svn: 118906
2010-11-12 17:57:22 +00:00
Duncan Sands
98512315f7
When passing a huge parameter using the byval mechanism, a long
...
sequence of loads and stores was being generated to perform the
copy on the x86 targets if the parameter was less than 4 byte
aligned, causing llc to use up vast amounts of memory and time.
Use a "rep movs" form instead. PR7170.
llvm-svn: 118260
2010-11-04 21:16:46 +00:00
Nate Begeman
317b969ac5
Fix a crash in the dag combiner caused by ConstantFoldBIT_CONVERTofBUILD_VECTOR calling itself
...
recursively and returning a SCALAR_TO_VECTOR node, but assuming the input was always a BUILD_VECTOR.
llvm-svn: 109519
2010-07-27 18:02:18 +00:00
Eric Christopher
2ad0c779c3
Fix up -fstack-protector on linux to use the segment
...
registers. Split out testcases per architecture and os
now.
Patch from Nelson Elhage.
llvm-svn: 107640
2010-07-06 05:18:56 +00:00
Mon P Wang
825639e849
Move v-binop-widen tests to X86 since they don't work on all platforms
...
llvm-svn: 106562
2010-06-22 19:40:50 +00:00
Rafael Espindola
29dda21e96
Remove arm_apcscc from the test files. It is the default and doing this
...
matches what llvm-gcc and clang now produce.
llvm-svn: 106221
2010-06-17 15:18:27 +00:00