Christopher Lamb
1a80201426
Teach BasicAA about noalias parameter attributes, but do it correctly this time.
...
llvm-svn: 40711
2007-08-02 01:18:14 +00:00
Reid Spencer
ae4675226e
Make sure these tests pass for the right reasons (verifier error, rather than
...
failure to assemble).
llvm-svn: 40696
2007-08-01 23:07:36 +00:00
Devang Patel
561b0c29a3
Update dominator info for the middle blocks created while spliting
...
exit edge to preserve LCSSA.
Fix dominance frontier update during loop unswitch. This fixes PR 1589.
llvm-svn: 40695
2007-08-01 22:23:50 +00:00
Evan Cheng
41ccce7169
New test. Bogus implicit-def prevented a copy from being coalesced.
...
llvm-svn: 40690
2007-08-01 20:26:40 +00:00
Lauro Ramos Venancio
e2e7e384e3
Add a test for the load/store alignment.
...
llvm-svn: 40687
2007-08-01 20:07:59 +00:00
Lauro Ramos Venancio
0db4418a5f
Expand unaligned loads/stores when the target doesn't support them. (PR1548)
...
llvm-svn: 40682
2007-08-01 19:34:21 +00:00
Christopher Lamb
3567bd863f
Clean up C++ restrict test cases and add a test for restrict qualified methods.
...
llvm-svn: 40681
2007-08-01 18:48:29 +00:00
Chris Lattner
bc1a69684c
these tests aren't xfailed.
...
llvm-svn: 40680
2007-08-01 18:37:44 +00:00
Chris Lattner
9182684222
we're now handling this right :)
...
llvm-svn: 40675
2007-08-01 17:10:30 +00:00
Owen Anderson
4d34e40c6d
Forgot to update these files for the FastDSE changes.
...
llvm-svn: 40674
2007-08-01 16:53:51 +00:00
Owen Anderson
10e52eddb3
Rename FastDSE to just DSE.
...
llvm-svn: 40668
2007-08-01 06:36:51 +00:00
Evan Cheng
09a141df31
Requires SSE2.
...
llvm-svn: 40657
2007-08-01 00:10:12 +00:00
Owen Anderson
2464f4f048
Fix a failure I accidentally caused in my last commit by mishandling the
...
removal of redundant phis.
llvm-svn: 40650
2007-07-31 20:18:28 +00:00
Lauro Ramos Venancio
549e775e67
Fix a bug in GetKnownAlignment of packed structs.
...
llvm-svn: 40649
2007-07-31 20:13:21 +00:00
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
Owen Anderson
d58fa6b09f
Fix a misoptimization in aha.
...
llvm-svn: 40642
2007-07-31 17:43:14 +00:00
Chris Lattner
03708acd4e
new testcase
...
llvm-svn: 40636
2007-07-31 16:18:25 +00:00
Christopher Lamb
283152404d
Revert overly aggressive interpretation of noalias
...
llvm-svn: 40635
2007-07-31 16:18:07 +00:00
Devang Patel
dd34d91e1a
Bunch of tests to check loop passes.
...
llvm-svn: 40629
2007-07-31 08:04:17 +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
Christopher Lamb
b08423b36e
Teach BasicAA about noalias function parameters. Passes all of DejaGNU and test-suite.
...
llvm-svn: 40624
2007-07-31 07:04:51 +00:00
Christopher Lamb
fc1bd87814
Un-XFAIL these tests after r40622 fixed them.
...
llvm-svn: 40623
2007-07-31 07:03:24 +00:00
Reid Spencer
d45d07ac72
For PR1553:
...
Make the AsmParser auto-upgrade the old zext and sext
keywords for parameter attributes and handle the
end-of-line ambiguity.
llvm-svn: 40610
2007-07-31 02:57:37 +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
Owen Anderson
d66e285b2e
Fix a bug caused by indiscriminantly asking for the dominators of a predecessor.
...
llvm-svn: 40595
2007-07-30 16:57:08 +00:00
Evan Cheng
c8780b0ae9
New test case.
...
llvm-svn: 40587
2007-07-30 07:52:03 +00:00
Christopher Lamb
3fbfad3547
Add tests for generating noalias parameter attribute from __restrict qualified function parameters. C++ tests are currently XFAILing see PR1582.
...
llvm-svn: 40583
2007-07-29 23:29:16 +00:00
Reid Spencer
7717ff5368
Be explicit about which level of optimization is being asked for. The -O option
...
is equivalent to -O1.
llvm-svn: 40581
2007-07-29 18:23:22 +00:00
Nick Lewycky
62989d6775
Make this explictly signed. Fixes PR1571.
...
llvm-svn: 40569
2007-07-28 16:43:10 +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
Owen Anderson
0f692f27a3
Fix a bug introduced in my last commit.
...
llvm-svn: 40542
2007-07-26 18:57:04 +00:00
Owen Anderson
dbf23ccaa0
Fix a couple more bugs in the phi construction by pulling in code that does
...
almost the same things from LCSSA.
llvm-svn: 40540
2007-07-26 18:26:51 +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
Owen Anderson
3b8cc30a61
Fix what is _hopefully_ the last corner case for loops.
...
llvm-svn: 40503
2007-07-25 23:54:42 +00:00
Owen Anderson
8707412593
My last commit was not correct for nested loops. Fix it, and add a testcase for it.
...
llvm-svn: 40498
2007-07-25 22:19:40 +00:00
Owen Anderson
3c67004d47
Fix an infinite loop on 300.twolf.
...
llvm-svn: 40497
2007-07-25 22:03:06 +00:00
Owen Anderson
9b796348bd
Fix a bug in non-local memdep that was causing an infinite loop on 175.vpr.
...
llvm-svn: 40495
2007-07-25 21:26:36 +00:00
Owen Anderson
7bf26ee444
Fix a bug that was causing GVN to crash on 252.eon.
...
llvm-svn: 40494
2007-07-25 21:13:41 +00:00
Owen Anderson
5e5599b7ce
Add basic support for performing whole-function RLE.
...
Note: This has not yet been thoroughly tested. Use at your own risk.
llvm-svn: 40489
2007-07-25 19:57:03 +00:00
Chandler Carruth
fb95b0ea19
Moving regression test to reflect move in source and headers to Bitcode.
...
llvm-svn: 40488
2007-07-25 19:47:31 +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
Owen Anderson
ab6ec2eac2
Add a GVN pass, using the value numbering code I developed for GVNPRE and the
...
load elimination code from RedundantLoadElimination.
llvm-svn: 40469
2007-07-24 17:55:58 +00:00
Devang Patel
13b25df0e9
Unreachable block is not a root node in post dominator tree.
...
llvm-svn: 40458
2007-07-24 01:02:25 +00:00
Owen Anderson
9baaaa52e6
Rename a lot of things to change FastDLE to RedundantLoadElimination.
...
llvm-svn: 40457
2007-07-24 00:17:04 +00:00
Chandler Carruth
1b37d5b019
Fix for PR1567, which involves a weird bug on non-32bit architectures and silly C type sizes.
...
llvm-svn: 40451
2007-07-23 22:42:15 +00:00
Owen Anderson
0a75315d35
Add testcases for FastDLE.
...
llvm-svn: 40449
2007-07-23 22:18:05 +00:00
Owen Anderson
59a6840d47
Move these tests to use FastDSE instead of old DSE.
...
llvm-svn: 40444
2007-07-23 20:49:13 +00:00