Sebastian Redl
7379577ab0
Lay the groundwork for converting the entire parser-sema chain to smart pointers.
...
llvm-svn: 60782
2008-12-09 19:36:21 +00:00
Steve Naroff
b0498eebc2
Sema::ActOnMethodDeclaration(): Make sure we perform the default function/array conversion for parameter types.
...
This fixes <rdar://problem/6424064> checker on xcode: (possible bad AST) can the type of a method parameter really have "isFunctionType() == true"?
and http://llvm.org/bugs/show_bug.cgi?id=2997 .
llvm-svn: 60781
2008-12-09 19:36:17 +00:00
Chris Lattner
b6fc4b8d92
Switch GVN::processNonLocalLoad to using the new
...
MemDep::getNonLocalPointerDependency method. There are
some open issues with this (missed optimizations) and
plenty of future work, but this does allow GVN to eliminate
*slightly* more loads (49246 vs 49033).
Switching over now allows simplification of the other code
path in memdep.
llvm-svn: 60780
2008-12-09 19:25:07 +00:00
Chris Lattner
0a5a8d54a9
random cleanups, no functionality change.
...
llvm-svn: 60779
2008-12-09 19:21:47 +00:00
Chris Lattner
2e41b0e6e7
Fix a serious null termination bug found by David Chisnall!
...
llvm-svn: 60778
2008-12-09 19:10:54 +00:00
Evan Cheng
058522f1da
xfail this for now.
...
llvm-svn: 60777
2008-12-09 18:43:00 +00:00
Evan Cheng
8f81e4e31b
Back out 60748 for now. It's breaking SPASS, 254.gap, and 464.h264ref.
...
llvm-svn: 60776
2008-12-09 18:21:49 +00:00
Evan Cheng
74a24b260e
Cosmetic changes.
...
llvm-svn: 60771
2008-12-09 17:56:30 +00:00
Nuno Lopes
10ab44a3a2
remove unused var
...
llvm-svn: 60770
2008-12-09 17:04:06 +00:00
Dan Gohman
7d32974069
Whitespace cleanups.
...
llvm-svn: 60769
2008-12-09 16:37:48 +00:00
Mikhail Glushenkov
e001666100
Remove Clang tests since clang is not installed on the buildbots.
...
llvm-svn: 60767
2008-12-09 15:11:45 +00:00
Mikhail Glushenkov
5752117a5b
Add some rudimentary tests for .
...
llvm-svn: 60766
2008-12-09 14:41:27 +00:00
Mikhail Glushenkov
e5cd77150e
Man page typo fix.
...
llvm-svn: 60765
2008-12-09 14:41:00 +00:00
Mikhail Glushenkov
65b0b2bf28
Support -emit-llvm properly (with -S and -c).
...
llvm-svn: 60764
2008-12-09 14:40:18 +00:00
Sebastian Redl
e0c2affc5e
Fill in C++ status table for expressions.
...
llvm-svn: 60763
2008-12-09 14:40:01 +00:00
Sebastian Redl
17f2c7d251
Consistently use smart pointers for stmt and expr nodes in parser local variables.
...
llvm-svn: 60761
2008-12-09 13:15:23 +00:00
Steve Naroff
08628db9d2
Fix <rdar://problem/6429113> clang ObjC rewriter: crash rewriting file with Blocks and properties
...
More fancy footwork to cope with rewriting property 'setters'.
llvm-svn: 60760
2008-12-09 12:56:34 +00:00
Zhongxing Xu
2a46a8ef52
initialize member variable.
...
llvm-svn: 60759
2008-12-09 12:26:46 +00:00
Zhongxing Xu
2e8123e5bb
Add utility method. Remove an unused method.
...
llvm-svn: 60758
2008-12-09 10:51:19 +00:00
Duncan Sands
3812542a2c
Handle a compiler warning.
...
llvm-svn: 60755
2008-12-09 09:58:11 +00:00
Chris Lattner
4f10733cf3
fix typos gabor noticed
...
llvm-svn: 60754
2008-12-09 08:38:36 +00:00
Bill Wendling
e25d3417f5
Correct my English.
...
llvm-svn: 60753
2008-12-09 07:55:31 +00:00
Chris Lattner
75510d8d5c
restructure the top level non-local ptr dep query to handle
...
the first block of a query specially. This makes the "complete query
caching" subsystem more effective, avoiding predecessor queries. This
speeds up GVN another 4%.
llvm-svn: 60752
2008-12-09 07:52:59 +00:00
Chris Lattner
f903fe1df0
rename getNonLocalPointerDepInternal -> getNonLocalPointerDepFromBB
...
and split its inner loop out into a new GetNonLocalInfoForBlock
function. No functionality change.
llvm-svn: 60751
2008-12-09 07:47:11 +00:00
Evan Cheng
75900bf5cd
DisableGVCompilation should not abort on internal GlobalValue's.
...
llvm-svn: 60750
2008-12-09 07:31:49 +00:00
Mon P Wang
8a5366332f
In LegalizeOp, don't change the result type of CONVERT_RNDSAT when promoting
...
one of its operand.
llvm-svn: 60749
2008-12-09 07:27:39 +00:00
Nick Lewycky
f545749f2b
It's easy to handle SLE/SGE when the loop has a unit stride.
...
llvm-svn: 60748
2008-12-09 07:25:04 +00:00
Chris Lattner
aeaec0838b
if we have two elements, insert both, don't use std::sort.
...
This speeds up the new GVN by another 3%
llvm-svn: 60747
2008-12-09 07:05:45 +00:00
Chris Lattner
4d1281cdf2
If we're only adding one new element to 'Cache', insert it into its known
...
position instead of using a full sort. This speeds up GVN by ~4% with the
new memdep stuff.
llvm-svn: 60746
2008-12-09 06:58:04 +00:00
Chris Lattner
e8113a70fa
convert a couple other places that use pred_iterator to use the caching
...
pred iterator.
llvm-svn: 60745
2008-12-09 06:44:17 +00:00
Chris Lattner
18e1da3e80
newline at end of phile
...
llvm-svn: 60744
2008-12-09 06:32:32 +00:00
Chris Lattner
768e5bcafc
use hte new pred cache to speed up the new non-local memdep
...
queries. This speeds up GVN using the new queries (not yet
checked in) by just over 10%.
llvm-svn: 60743
2008-12-09 06:28:49 +00:00
Chris Lattner
4c9bb5336a
pred_iterator got a lot slower since use-diet landed. This is a
...
really simple cache class for these queries. Hopefully this can
be removed if pred_iterator speeds back up.
llvm-svn: 60742
2008-12-09 06:27:07 +00:00
Scott Michel
02e2c2450e
CellSPU:
...
- Fix call.ll and call_indirect.ll expected results, now that it's using a
different pre-register allocation scheduler.
llvm-svn: 60741
2008-12-09 06:12:03 +00:00
Mon P Wang
4dd832d241
Fix getNode to allow a vector for the shift amount for shifts of vectors.
...
Fix the shift amount when unrolling a vector shift into scalar shifts.
Fix problem in getShuffleScalarElt where it assumes that the input of
a bit convert must be a vector.
llvm-svn: 60740
2008-12-09 05:46:39 +00:00
Chris Lattner
56b20ffc5f
Fix a really subtle off-by-one bug that Duncan noticed with valgrind
...
on test/CodeGen/Generic/2007-06-06-CriticalEdgeLandingPad.
llvm-svn: 60739
2008-12-09 04:47:21 +00:00
Scott Michel
8deac5db5a
CellSPU:
...
- Change default scheduling preference to list-burr, which produces somewhat
better code than the default. Could also use list-tdrr, but need to ask
dev list about the appropriate handy mnemonic before commiting.
llvm-svn: 60738
2008-12-09 03:37:19 +00:00
Bill Wendling
80b34b3f47
Add initial support for fast-isel of the [SU]ADDO intrinsics. It isn't
...
complete. For instance, it lowers the common case into this less-than-optimal
code:
addl %ecx, %eax
seto %cl
testb %cl, %cl
jne LBB1_2 ## overflow
instead of:
addl %ecx, %eax
jo LBB1_2 ## overflow
That will come in a future commit.
llvm-svn: 60737
2008-12-09 02:42:50 +00:00
Dan Gohman
16516ba7b3
Fix the name of ISD::TokenFactor in a comment. Thanks Gabor!
...
llvm-svn: 60736
2008-12-09 02:18:52 +00:00
Chris Lattner
c3fbda4d19
remove two unneeded forward declarations, pointed out by Gabor.
...
llvm-svn: 60735
2008-12-09 02:10:10 +00:00
Ted Kremenek
c28ce29a12
[static analyzer] Extend VLA size checking to look for undefined sizes.
...
llvm-svn: 60734
2008-12-09 00:44:16 +00:00
Dan Gohman
37c496979c
Don't charge full latency for an anti-dependence, in this simplistic
...
pipeline model.
llvm-svn: 60733
2008-12-09 00:26:46 +00:00
Ted Kremenek
08134c984b
Update Driver to new interface for LiveVariables.
...
llvm-svn: 60732
2008-12-09 00:17:51 +00:00
Ted Kremenek
d7266bf20a
Add zero-sized VLA check test case.
...
llvm-svn: 60731
2008-12-09 00:14:48 +00:00
Ted Kremenek
6ee0a11814
Fixed LiveVariables bug where we didn't consider block-level expressions that functioned as the size of a VLA to be live.
...
llvm-svn: 60730
2008-12-09 00:14:14 +00:00
Fariborz Jahanian
8e0079c787
Change condition under which 'retain'/'copy' are directly evaluated.
...
llvm-svn: 60729
2008-12-08 23:56:17 +00:00
Dan Gohman
bc55c2a18f
Fix a couple of mistaken switch case fall-throughs. Thanks to Bill
...
for spotting these!
llvm-svn: 60728
2008-12-08 23:50:06 +00:00
Devang Patel
5f769e2d40
Actually test something. Use PR3170 test case.
...
llvm-svn: 60727
2008-12-08 23:44:46 +00:00
Ted Kremenek
8f7afdd21e
Add checking for zero-sized VLAs.
...
llvm-svn: 60726
2008-12-08 22:47:34 +00:00
Chris Lattner
e598370ae9
remove DebugIterations option. Despite the accusations,
...
jump threading has been shown to only expose problems not
have bugs itself. I'm sure it's completely bug free! ;-)
llvm-svn: 60725
2008-12-08 22:44:07 +00:00