Duncan Sands
2e59fc5c5a
Run the functionattrs pass after the inliner, and not before.
...
This makes both logical sense (see below) and increases the
number of functions marked readnone/readonly by about 1-2%
in practice. The number of functions marked nocapture goes
up by about 5-10%. The reason it makes sense is shown by
the following example: if you run -functionattrs -inline on
it, then no attributes are assigned. But if you instead run
-inline -functionattrs then @f is marked readnone because the
simplifications produced by the inliner eliminate the store.
@x = external global i32
define void @w(i1 %b) {
br i1 %b, label %write, label %return
write:
store i32 1, i32 *@x
br label %return
return:
ret void
}
define void @f() {
call void @w(i1 0)
ret void
}
llvm-svn: 85893
2009-11-03 09:40:08 +00:00
Daniel Dunbar
865418a462
Add link to FatELF project.
...
llvm-svn: 85888
2009-11-03 08:18:34 +00:00
Ted Kremenek
18c7ceee16
Implement: <rdar://problem/6250216> Warn against using -[NSAutoreleasePool release] in GC mode
...
llvm-svn: 85887
2009-11-03 08:03:59 +00:00
Ted Kremenek
924316d7d7
Move 'static inline' functions GetNullarySelector() and GetUnarySelector() from CFRefCount.cpp to ASTContext.h. These functions are likely to be generally useful.
...
llvm-svn: 85886
2009-11-03 08:00:42 +00:00
Daniel Dunbar
83e3714902
XFAIL Driver/hello.c on Windows.
...
llvm-svn: 85885
2009-11-03 07:49:31 +00:00
Daniel Dunbar
7e4a9e18c4
Speculatively redisable IPSCCP, I think its still breaking things.
...
llvm-svn: 85884
2009-11-03 07:49:22 +00:00
Zhongxing Xu
9b9d731a8b
Pull AttrNonNullChecker into its own files.
...
llvm-svn: 85883
2009-11-03 07:35:33 +00:00
Daniel Dunbar
12454b8e0f
lit: Update Clang's test style to use XFAIL: and XTARGET: lines that match
...
LLVM's tests.
llvm-svn: 85882
2009-11-03 07:26:38 +00:00
Daniel Dunbar
a3b52d7fb4
Add target_triple to Clang site configuration.
...
llvm-svn: 85881
2009-11-03 07:25:53 +00:00
Daniel Dunbar
a530841b4f
Switch XFAIL format to match LLVM.
...
llvm-svn: 85880
2009-11-03 07:25:45 +00:00
Zhongxing Xu
b42929d773
Update CMake file.
...
llvm-svn: 85879
2009-11-03 07:14:39 +00:00
Evan Cheng
31c2f4701b
Trim unnecessary include.
...
llvm-svn: 85878
2009-11-03 07:08:08 +00:00
Ted Kremenek
df8016aabb
Rename NSErrorCheck to NSErrorChecker.
...
llvm-svn: 85877
2009-11-03 06:59:59 +00:00
Ted Kremenek
3684c65ded
Update CMake file.
...
llvm-svn: 85876
2009-11-03 06:46:41 +00:00
Zhongxing Xu
ab162e1873
Pull UndefinedArgChecker into its own files.
...
llvm-svn: 85875
2009-11-03 06:46:03 +00:00
Bob Wilson
064c5fef11
For Thumb indirect branches, use "mov pc, reg" which does not switch
...
between ARM/Thumb modes and does not require the low bit of the target
address to be set for Thumb.
llvm-svn: 85874
2009-11-03 06:29:56 +00:00
Jeffrey Yasskin
6235b19d7b
Fix a funky "declared with greater visibility than the type of its field"
...
warning from gcc by removing VISIBILITY_HIDDEN attributes.
llvm-svn: 85873
2009-11-03 06:29:36 +00:00
Ted Kremenek
66791d5dc5
Fix buffer overflow in PrintMacroDefinition() by inverting the check to see if the target buffer needs to be resized. Fixes <rdar://problem/7255377>.
...
llvm-svn: 85872
2009-11-03 06:18:05 +00:00
Evan Cheng
8d681f0471
Fix PR5367. QPR_8 is the super regclass of DPR_8 and SPR_8.
...
llvm-svn: 85871
2009-11-03 05:52:54 +00:00
Evan Cheng
23c009f125
Clean up copyRegToReg.
...
llvm-svn: 85870
2009-11-03 05:51:39 +00:00
Evan Cheng
9e9079371c
Add QPR_8 as a superreg class of SPR_8 and DPR_8.
...
llvm-svn: 85869
2009-11-03 05:50:57 +00:00
Zhongxing Xu
0deca3486e
Pull BadCallChecker into its own files.
...
llvm-svn: 85868
2009-11-03 05:48:04 +00:00
Ted Kremenek
43edaa8432
retain/release checker: CGBitmapContextCreateWithData() returns an owned object.
...
llvm-svn: 85867
2009-11-03 05:39:12 +00:00
Chris Lattner
03d1bca60a
remove unneeded checks of isFreeCall
...
llvm-svn: 85866
2009-11-03 05:35:19 +00:00
Chris Lattner
e9dccd4934
remove a check of isFreeCall: the argument to free is already nocapture so the generic call code works fine.
...
llvm-svn: 85865
2009-11-03 05:34:51 +00:00
Ted Kremenek
d1b67db2e8
retain/release checker: Add special handling of CGBitmapContextCreateWithData().
...
Fixes: <rdar://problem/7358899>
llvm-svn: 85864
2009-11-03 05:34:07 +00:00
Chris Lattner
5a3832496a
remove a isFreeCall check: it is a callinst that can write to memory already.
...
llvm-svn: 85863
2009-11-03 05:33:46 +00:00
Chris Lattner
3deabca934
pr5371 likely has nothing to do with this.
...
llvm-svn: 85862
2009-11-03 05:11:39 +00:00
Ted Kremenek
187cb4f493
Update CMake file.
...
llvm-svn: 85861
2009-11-03 04:14:12 +00:00
Ted Kremenek
a6484f4208
Support updating 'llvm_add_target' lists as well.
...
llvm-svn: 85860
2009-11-03 04:06:58 +00:00
Ted Kremenek
2124f0d43f
Alphabetize.
...
llvm-svn: 85859
2009-11-03 04:01:53 +00:00
Chris Lattner
fb14181b18
turn IPSCCP back on now that the iterator invalidation bug is fixed.
...
llvm-svn: 85858
2009-11-03 03:42:51 +00:00
Nate Begeman
26bb8a730d
Add a couple more target nodes
...
llvm-svn: 85857
2009-11-03 03:30:51 +00:00
Mike Stump
92e5f8cb39
Refine codegen for non-virtual this adjustments for thunks.
...
llvm-svn: 85856
2009-11-03 03:16:46 +00:00
John McCall
cfefb6d197
Switch ParseStructDeclaration to a callback-based API. This will make
...
it easier to track within Sema whether the parser is parsing a declaration.
llvm-svn: 85855
2009-11-03 02:38:08 +00:00
John Thompson
616798c31f
Fixed for running on Windows.
...
llvm-svn: 85854
2009-11-03 02:36:47 +00:00
Nate Begeman
a21bc75d78
Declare sin & cos as readonly so they match the code in SelectionDAGBuild
...
llvm-svn: 85853
2009-11-03 02:19:31 +00:00
Mike Stump
f358972fdc
Add virtual adjustments for this for thunks.
...
llvm-svn: 85852
2009-11-03 02:12:59 +00:00
Douglas Gregor
7861a80346
Introduce a new class, UnqualifiedId, that provides a parsed
...
representation of a C++ unqualified-id, along with a single parsing
function (Parser::ParseUnqualifiedId) that will parse all of the
various forms of unqualified-id in C++.
Replace the representation of the declarator name in Declarator with
the new UnqualifiedId class, simplifying declarator-id parsing
considerably and providing more source-location information to
Sema. In the future, I hope to migrate all of the other
unqualified-id-parsing code over to this single representation, then
begin to merge actions that are currently only different because we
didn't have a unqualified notion of the name in the parser.
llvm-svn: 85851
2009-11-03 01:35:08 +00:00
Anton Korobeynikov
d195f9e5c3
Turn neon reg-reg moves fixup code into separate pass. This should reduce the compile time.
...
llvm-svn: 85850
2009-11-03 01:04:26 +00:00
Anton Korobeynikov
2c2dc9f64f
Temporary xfail until PR5367 will be resolved
...
llvm-svn: 85848
2009-11-03 00:37:36 +00:00
Anton Korobeynikov
fbe0256b23
Revert r85049, it is causing PR5367
...
llvm-svn: 85847
2009-11-03 00:24:48 +00:00
Bob Wilson
b389f2a04d
Revert previous change to a comment. The BlockAddresses go in the
...
constant pool so they don't get wrapped separately.
llvm-svn: 85844
2009-11-03 00:02:05 +00:00
Fariborz Jahanian
a386d9533b
Assortment of property attributes declared in continuation
...
class must match those of same property declared
in its primary class. (Fixes radar 7352425)
llvm-svn: 85843
2009-11-03 00:01:38 +00:00
Mike Stump
31e1d43729
Add basic codegen for thunks that return values.
...
llvm-svn: 85842
2009-11-02 23:47:45 +00:00
Chris Lattner
b70ef3c8c7
fix a nasty iterator invalidation bug from my conversion from
...
std::map to DenseMap, exposed on release llvm-gcc bootstrap.
llvm-svn: 85840
2009-11-02 23:25:39 +00:00
Mike Stump
33ccd9e354
Refine codegen for thunks.
...
llvm-svn: 85839
2009-11-02 23:22:01 +00:00
Ted Kremenek
fac290d359
Remove GRExprEngine::CheckerVisitLocation(). It was only called in one place, so we inlined it in to GRExprEngine::EvalLocation().
...
llvm-svn: 85838
2009-11-02 23:19:29 +00:00
Fariborz Jahanian
de8db16a7d
Property declared in continuation class can only be used to
...
change a readonly property declared in the class (and its inherited protocols)
to writable property. (Fixes radar 7350645).
llvm-svn: 85836
2009-11-02 22:45:15 +00:00
John Thompson
ac0b098d4d
Added __has_include and __has_include_next.
...
llvm-svn: 85834
2009-11-02 22:28:12 +00:00