Commit Graph

16992 Commits

Author SHA1 Message Date
Anton Korobeynikov 029ea7ee74 Fix test
llvm-svn: 35673
2007-04-04 21:28:36 +00:00
Anton Korobeynikov 915e61736b Properly emit range comparisons for switch cases, where neighbour cases
go to the same destination. Now we're producing really good code for
switch-lower-feature.ll testcase

llvm-svn: 35672
2007-04-04 21:14:49 +00:00
Evan Cheng 8f61b79d60 Better still.
llvm-svn: 35663
2007-04-04 08:49:40 +00:00
Evan Cheng 06df995e9f Fix test case.
llvm-svn: 35662
2007-04-04 07:41:33 +00:00
Evan Cheng ee06655d6b These got better.
llvm-svn: 35661
2007-04-04 07:41:15 +00:00
Evan Cheng 07d353c9d7 New asm test case.
llvm-svn: 35641
2007-04-04 00:15:17 +00:00
Evan Cheng 10a25d43fa New test case.
llvm-svn: 35636
2007-04-03 23:40:54 +00:00
Evan Cheng 2c2ec5f138 New test case.
llvm-svn: 35628
2007-04-03 21:38:03 +00:00
Chris Lattner 67f99e955b new testcase, where we should use a negative stride
llvm-svn: 35608
2007-04-03 00:13:16 +00:00
Chris Lattner d9eb0d9f5a Add a regtest for cases we now recognize as rotates, thanks to Scott Michel's
recent dagcombine patch

llvm-svn: 35606
2007-04-02 22:08:54 +00:00
Chris Lattner dd59227a73 fix this testcase on ppc hosts
llvm-svn: 35603
2007-04-02 20:39:48 +00:00
Evan Cheng f7f8e349d6 New test case.
llvm-svn: 35599
2007-04-02 18:47:13 +00:00
Chris Lattner be96c646dc new testcase.
llvm-svn: 35591
2007-04-02 06:33:10 +00:00
Chris Lattner 745f59bfde new testcase
llvm-svn: 35589
2007-04-02 05:57:59 +00:00
Chris Lattner 0a844d8df1 my patch fixed the fixme.
llvm-svn: 35582
2007-04-02 05:08:54 +00:00
Chris Lattner 4cb30067c2 new testcase for PR1296
llvm-svn: 35574
2007-04-02 01:32:59 +00:00
Lauro Ramos Venancio 6be85337b0 - Divides the comparisons in two types: comparisons that only use N and Z
flags (ARMISD::CMPNZ) and comparisons that use all flags (ARMISD::CMP).
- Defines the instructions: TST, TEQ (ARM) and TST (Thumb).

llvm-svn: 35573
2007-04-02 01:30:03 +00:00
Reid Spencer 84c90a9431 Let llvm-upgrade upgrade the bswap intrinsic.
llvm-svn: 35569
2007-04-02 01:09:19 +00:00
Reid Spencer 0b544372d4 Let llvm-upgrade upgrade bswap intrinsic.
llvm-svn: 35568
2007-04-02 01:08:02 +00:00
Reid Spencer a5f996bd27 Revert the name changes for llvm.bswap to allow (and test) llvm-upgrade of
this intrinsic.

llvm-svn: 35566
2007-04-02 00:51:15 +00:00
Reid Spencer c3d87685ad 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.

llvm-svn: 35548
2007-04-01 07:36:28 +00:00
Evan Cheng 67a49736af Missing '&&'
llvm-svn: 35519
2007-03-30 22:03:49 +00:00
Chris Lattner d1440c429f add a testcase for x86
llvm-svn: 35516
2007-03-30 21:22:46 +00:00
Evan Cheng 1d78d3deeb New test case.
llvm-svn: 35515
2007-03-30 20:41:18 +00:00
Evan Cheng 9ca63d605c Test case for PR1279 (part 2).
llvm-svn: 35511
2007-03-30 20:15:22 +00:00
Chris Lattner 17331da6bd new testcases
llvm-svn: 35433
2007-03-28 18:11:17 +00:00
Chris Lattner 66cb5db76f new testcase
llvm-svn: 35432
2007-03-28 18:03:14 +00:00
Reid Spencer 44259a29c0 Remove use of implementation keyword.
llvm-svn: 35412
2007-03-28 02:38:26 +00:00
Evan Cheng 1f4acbfea9 Added a test case for PR1279.
llvm-svn: 35398
2007-03-28 01:32:57 +00:00
Chris Lattner ae0f8dcd61 upgrade a random test
llvm-svn: 35395
2007-03-28 01:27:12 +00:00
Evan Cheng 44a7f3a65d Test case for PR1266.
llvm-svn: 35367
2007-03-26 22:58:35 +00:00
Anton Korobeynikov 6e30008249 Add "feature" testcase for new switch lowering code
llvm-svn: 35345
2007-03-25 22:01:14 +00:00
Chris Lattner 25f82845b3 new testcase
llvm-svn: 35331
2007-03-25 05:00:23 +00:00
Chris Lattner 31b80d55ee test that the ppc backend can do 64-bit cntlz
llvm-svn: 35328
2007-03-25 04:43:51 +00:00
Chris Lattner 6089146aa3 new testcase
llvm-svn: 35326
2007-03-25 04:35:23 +00:00
Chris Lattner f4579c7872 new testcase
llvm-svn: 35323
2007-03-25 02:17:58 +00:00
Chris Lattner 421ac38bd6 new testcase
llvm-svn: 35317
2007-03-25 01:44:40 +00:00
Evan Cheng 9a95c6e7db Another test case.
llvm-svn: 35255
2007-03-22 01:55:16 +00:00
Evan Cheng 51ace3b1f6 Test case for PR1257
llvm-svn: 35253
2007-03-22 01:52:57 +00:00
Evan Cheng a7f81f29ce New test case.
llvm-svn: 35240
2007-03-21 20:14:56 +00:00
Lauro Ramos Venancio a88c4a74f3 bugfix: When the source register of CALL_NOLINK was LR, the following code was emitted:
mov lr, pc
    bx lr
So, the function was not called.

llvm-svn: 35218
2007-03-20 17:57:23 +00:00
Chris Lattner d95d748a4d These functions should use shll, not lea.
llvm-svn: 35203
2007-03-20 06:01:41 +00:00
Reid Spencer 7953b683fc For PR1258:
Revise numeric value references to accommodate collapsed type planes.

llvm-svn: 35170
2007-03-19 18:27:35 +00:00
Evan Cheng bbe11722e2 GEP index sink test case.
llvm-svn: 35131
2007-03-17 03:18:32 +00:00
Devang Patel ac1f488548 Test case for X86 inline asm constraint 'I'
llvm-svn: 35130
2007-03-17 00:14:52 +00:00
Bill Wendling 144b8bbf17 And now support for MMX logical operations.
llvm-svn: 35125
2007-03-16 09:44:46 +00:00
Bill Wendling e31034125c Multiplication support for MMX.
llvm-svn: 35118
2007-03-15 21:24:36 +00:00
Evan Cheng 70e16d5e17 ARM isel should match ldr x +/- x * (2^n) to ldr [x, +/- x, lsl #log2(n)].
llvm-svn: 35114
2007-03-14 23:26:40 +00:00
Evan Cheng b59d60da40 New test.
llvm-svn: 35091
2007-03-13 23:31:47 +00:00
Evan Cheng ca6fab953f This got better.
llvm-svn: 35090
2007-03-13 23:26:41 +00:00
Bill Wendling e9b81f5366 Adding more arithmetic operators to MMX. This is an almost exact copy of
the addition. Please let me know if you have suggestions.

llvm-svn: 35055
2007-03-10 09:57:05 +00:00
Evan Cheng fe7b8a7c68 Test inline asm modifier 'c'.
llvm-svn: 35036
2007-03-08 22:45:31 +00:00
Chris Lattner 577e8b4ed8 upgrade this testcase, add test for fp immediate to memory operand.
llvm-svn: 35034
2007-03-08 22:33:06 +00:00
Bill Wendling c8eb6b1b15 Add MMX arithmetic testcase.
llvm-svn: 35032
2007-03-08 22:14:51 +00:00
Evan Cheng f4d1ee7ff2 Fix test case.
llvm-svn: 35029
2007-03-08 19:27:32 +00:00
Evan Cheng a5c7f5d622 New test case.
llvm-svn: 35006
2007-03-07 08:12:39 +00:00
Evan Cheng bd88f2ebde New test case.
llvm-svn: 34991
2007-03-07 00:13:48 +00:00
Bill Wendling b1c86b49ea Add the emms intrinsic for MMX support.
llvm-svn: 34938
2007-03-05 23:09:45 +00:00
Lauro Ramos Venancio f10769dda7 Use init_array/fini_array sections for static contructors/destructors when the ABI is AAPCS.
Fix SingleSource/Regression/C/ConstructorDestructorAttributes test on arm-linux-gnueabi.

llvm-svn: 34931
2007-03-05 17:59:58 +00:00
Chris Lattner 4bdd578f8a new testcase, corresponds to:
long long test(long long A, unsigned B) {
  return (A + ((long long)B << 32));
}

llvm-svn: 34911
2007-03-04 20:39:47 +00:00
Chris Lattner 6053ad4252 New testcase for PR1239
llvm-svn: 34892
2007-03-03 23:42:50 +00:00
Evan Cheng b7bef1bc74 Add a new test case.
llvm-svn: 34842
2007-03-02 10:37:19 +00:00
Anton Korobeynikov af8be4458f Ensure that fastcall'ed function is correctly mangled & stack is
properly aligned

llvm-svn: 34788
2007-03-01 16:29:22 +00:00
Chris Lattner debe91c78a Eliminate enable-x86-fastcc
llvm-svn: 34753
2007-02-28 18:38:58 +00:00
Chris Lattner cbb545158b fastcc -> fastcall
llvm-svn: 34749
2007-02-28 18:35:36 +00:00
Chris Lattner 559b60da64 fastcc -> fastcall
llvm-svn: 34747
2007-02-28 18:21:50 +00:00
Chris Lattner 6fa4086649 fastcc -> fastcall
llvm-svn: 34746
2007-02-28 17:42:50 +00:00
Evan Cheng add648e3e5 Fix test case.
llvm-svn: 34710
2007-02-28 00:36:33 +00:00
Reid Spencer ca8c58f8b7 This test passes on x86/Linux now.
llvm-svn: 34686
2007-02-27 20:46:44 +00:00
Reid Spencer 8cd69de23e XFAIL this on x86-Linux until its fixed.
llvm-svn: 34651
2007-02-27 02:45:12 +00:00
Chris Lattner 900b4f62be new testcase
llvm-svn: 34622
2007-02-26 03:16:20 +00:00
Chris Lattner c864f6a786 new testcase
llvm-svn: 34614
2007-02-25 23:08:29 +00:00
Chris Lattner 39a72143cb new testcase
llvm-svn: 34612
2007-02-25 22:23:15 +00:00
Jim Laskey 619d4bddc7 Test for PR1224.
llvm-svn: 34609
2007-02-25 21:43:21 +00:00
Chris Lattner 2b8b520e53 verify that double is returned in XMM0 if the function is fastcc.
llvm-svn: 34591
2007-02-25 09:30:03 +00:00
Chris Lattner 26ef86b6fe new testcase
llvm-svn: 34583
2007-02-25 08:23:01 +00:00
Chris Lattner 64b8352586 verify i128 return on x86-64 continues to codegen optimally.
llvm-svn: 34575
2007-02-25 06:06:49 +00:00
Chris Lattner 5af36e7e7c testcase for PR1219
llvm-svn: 34550
2007-02-24 02:08:00 +00:00
Bill Wendling a33fd51520 Make the testcase correct.
llvm-svn: 34543
2007-02-23 23:23:41 +00:00
Bill Wendling 9d9e5e2b34 Testcase for PR1164
llvm-svn: 34542
2007-02-23 23:19:32 +00:00
Bill Wendling 77a345f000 PR1164:
Generate local names with a "llvm_cbe_" prefix using the actual name of the
variable instead of a temporary name.

llvm-svn: 34540
2007-02-23 22:45:08 +00:00
Jim Laskey 4938bb7268 New test - practically wrote itself.
llvm-svn: 34538
2007-02-23 22:12:08 +00:00
Lauro Ramos Venancio 0eb70ebbe5 bugfix: SP wasn't updated for varargs when frame pointer was eliminated.
llvm-svn: 34537
2007-02-23 21:53:48 +00:00
Lauro Ramos Venancio 3e906c48d3 Fix stack alignment in functions with varargs.
llvm-svn: 34532
2007-02-23 20:32:57 +00:00
Evan Cheng fa6532a3b9 -march=arm -enable-thumb => -march=thumb
llvm-svn: 34522
2007-02-23 03:15:39 +00:00
Evan Cheng 0c99b096c5 Added test case for PR1207.
llvm-svn: 34429
2007-02-19 21:53:59 +00:00
Evan Cheng d5cfe7d004 Fix test case.
llvm-svn: 34427
2007-02-19 21:47:02 +00:00
Chris Lattner 3723c90455 new test
llvm-svn: 34372
2007-02-17 06:57:11 +00:00
Chris Lattner 2be2ab59d5 Test that large absolute addresses are properly folded into addr modes on
both ppc32 and ppc64.

llvm-svn: 34370
2007-02-17 06:41:57 +00:00
Chris Lattner bc9111e290 new testcase that crashes llc
llvm-svn: 34367
2007-02-17 05:59:01 +00:00
Dale Johannesen 0552e3b580 adding PR 1200 comment by request
llvm-svn: 34360
2007-02-17 01:12:15 +00:00
Dale Johannesen 12920dda9e Fixes PR 1200
llvm-svn: 34359
2007-02-17 00:44:34 +00:00
Chris Lattner e19f84cf28 testcase for recent targetdata regression
llvm-svn: 34355
2007-02-16 23:11:43 +00:00
Reid Spencer 9a3e3222e9 Update this test to compile properly and check against the correct
string generated by the CBE. This is no longer an XFAIL.

llvm-svn: 34327
2007-02-15 21:01:58 +00:00
Chris Lattner 20abdffa00 sanity check for *basic* i128 arithmetic on all hosts.
llvm-svn: 34259
2007-02-13 23:59:21 +00:00
Chris Lattner 9b600ab5a6 new testcase, by Dan Gohman
llvm-svn: 34255
2007-02-13 23:41:24 +00:00
Lauro Ramos Venancio 048e16ff8f Add ABI information to ARM subtarget.
llvm-svn: 34245
2007-02-13 19:52:28 +00:00
Lauro Ramos Venancio 603f201cba According to ARM EABI, 8-bytes function arguments must be 8-bytes aligned.
llvm-svn: 34241
2007-02-13 14:07:13 +00:00
Chris Lattner 72df49f506 new testcase for PR1197
llvm-svn: 34215
2007-02-13 01:05:10 +00:00
Chris Lattner 133ae0b2a6 Add ppc-specific test for better i64 compare codegen.
llvm-svn: 34082
2007-02-09 04:49:46 +00:00
Evan Cheng 815c25d191 i64 setcc tests.
llvm-svn: 34067
2007-02-08 22:27:55 +00:00
Evan Cheng 08dfee58d9 New test case.
llvm-svn: 34001
2007-02-07 09:24:03 +00:00
Evan Cheng 5a165de53c Add a DYNAMIC_STACKALLOC test case.
llvm-svn: 33959
2007-02-06 07:18:27 +00:00
Chris Lattner 07e13789e5 testcase for pr1181
llvm-svn: 33956
2007-02-06 06:07:34 +00:00
Lauro Ramos Venancio 809cbf527f Fix unord test.
llvm-svn: 33910
2007-02-05 16:33:56 +00:00
Reid Spencer 61ae7b7869 Make the RUN: line readable.
llvm-svn: 33906
2007-02-05 10:09:41 +00:00
Reid Spencer 4e76c3a482 For PR411:
Don't re-use var names.

llvm-svn: 33899
2007-02-05 04:00:04 +00:00
Chris Lattner 03503b5e31 new testcase for x86 backend miscompilation
llvm-svn: 33883
2007-02-04 20:15:15 +00:00
Evan Cheng 9d851fca1e Add a test case.
llvm-svn: 33833
2007-02-03 09:14:10 +00:00
Evan Cheng bcc6db26e1 __builtin_isunordered test case.
llvm-svn: 33808
2007-02-03 00:50:45 +00:00
Lauro Ramos Venancio 1a0ae50528 Improves alloca test. Verifies SP restoration.
llvm-svn: 33802
2007-02-03 00:16:21 +00:00
Reid Spencer 2341c22ec7 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.

llvm-svn: 33776
2007-02-02 02:16:23 +00:00
Reid Spencer 26cc265311 My mistake, my environment wasn't up to date. This passes now.
llvm-svn: 33769
2007-02-01 22:26:42 +00:00
Reid Spencer a5dc052682 XFAIL this on x86 linux as it continues to fail.
llvm-svn: 33768
2007-02-01 22:10:46 +00:00
Evan Cheng 210cbc43a8 Add a test case.
llvm-svn: 33742
2007-02-01 02:27:24 +00:00
Evan Cheng c79b96b00d Added a thumb vararg test.
llvm-svn: 33740
2007-02-01 01:56:43 +00:00
Chris Lattner 667ff4832e new testcase
llvm-svn: 33731
2007-02-01 00:38:56 +00:00
Evan Cheng b7a08adae6 Fix test case.
llvm-svn: 33730
2007-01-31 23:51:35 +00:00
Evan Cheng 53ac41cd54 Fix test cases.
llvm-svn: 33725
2007-01-31 22:27:07 +00:00
Lauro Ramos Venancio 7ae4f5599e ARM fix: Miscompilation when frame pointer can't be eliminated. Uninitialized frame pointer register is used.
llvm-svn: 33703
2007-01-31 13:12:46 +00:00
Evan Cheng 421fdb2a7e Combine two tests.
llvm-svn: 33668
2007-01-30 23:06:22 +00:00
Reid Spencer af6a408117 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.

llvm-svn: 33660
2007-01-30 16:16:01 +00:00
Reid Spencer 6ebc06f702 Make the input legal.
llvm-svn: 33655
2007-01-30 06:32:25 +00:00
Evan Cheng fcb9b8b0b7 Add / merge tests.
llvm-svn: 33654
2007-01-30 03:06:19 +00:00
Chris Lattner 6acab41ede test that the 'ir' constraint works.
llvm-svn: 33646
2007-01-29 23:55:20 +00:00
Chris Lattner 9699e54088 new testcase
llvm-svn: 33642
2007-01-29 23:45:03 +00:00
Evan Cheng 9f82ccb01f Thumb tests.
llvm-svn: 33561
2007-01-27 00:05:14 +00:00
Evan Cheng df446c6f72 Merge tests.
llvm-svn: 33560
2007-01-27 00:04:57 +00:00
Reid Spencer ce380568b5 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.

llvm-svn: 33533
2007-01-26 08:25:06 +00:00
Evan Cheng b03e9118be Fix test case.
llvm-svn: 33507
2007-01-25 22:28:32 +00:00
Lauro Ramos Venancio b5c595c568 fix fcopysign test
llvm-svn: 33503
2007-01-25 22:11:02 +00:00
Evan Cheng dda311a784 Added some load from stack frames test cases.
llvm-svn: 33473
2007-01-24 02:27:03 +00:00
Evan Cheng 029a72b9fa Thumb test cases.
llvm-svn: 33471
2007-01-23 23:28:50 +00:00
Evan Cheng 36b74471c8 Thumb test cases.
llvm-svn: 33468
2007-01-23 22:47:58 +00:00
Evan Cheng 76231aad45 Make it work for both Linux and Mac OS.
llvm-svn: 33451
2007-01-22 23:18:10 +00:00
Evan Cheng 136cf76a27 Pasto
llvm-svn: 33444
2007-01-22 23:01:22 +00:00
Evan Cheng 527faab942 Fix test case.
llvm-svn: 33432
2007-01-22 18:57:39 +00:00
Evan Cheng fec133d2d1 Add test case extracted from lencod. Spiller was infinite looping in GetRegForReload().
llvm-svn: 33383
2007-01-19 22:43:14 +00:00
Evan Cheng a5007faaa6 ARM test cases contributed by Apple.
llvm-svn: 33354
2007-01-19 09:20:23 +00:00
Reid Spencer 062a3b8241 For PR1028:
Ensure the CBE generates calls to GCC builtins for stack_save and
stack_restore when it encounters the corresponding intrinsics.

Patch by Gordon Henriksen.

llvm-svn: 33312
2007-01-17 23:20:43 +00:00
Anton Korobeynikov 3f6d52834b * 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.

llvm-svn: 33299
2007-01-17 10:33:08 +00:00
Reid Spencer 83b3d82672 Regression is gone, don't try to find it on clean target.
llvm-svn: 33296
2007-01-17 07:59:14 +00:00