Ted Kremenek
e5c315826e
Fix unused variable warning
...
llvm-svn: 70946
2009-05-05 00:06:16 +00:00
Ted Kremenek
6ae5615d80
Remove possibly incorrect assertion that doesn't matter.
...
llvm-svn: 70943
2009-05-05 00:02:18 +00:00
Ted Kremenek
bbec22d2b2
Rename attribute 'ns_ownership_returns' to 'ns_returns_ownership'.
...
llvm-svn: 70941
2009-05-04 23:52:59 +00:00
Ted Kremenek
6bdfcf47ad
Remove experimental attribute 'ns_ownership_make_collectable.'
...
llvm-svn: 70940
2009-05-04 23:46:06 +00:00
Fariborz Jahanian
32ff7aeefa
Provide basic support for generation of objc2's
...
objc_assign_global API when assigning to global
objective-c object pointer.
llvm-svn: 70939
2009-05-04 23:27:20 +00:00
Daniel Dunbar
9b042e06ee
Fix the field count in interface record layout (it was incorrectly
...
compensating for super classes). This was making the reported class
sizes for empty classes very, very wrong.
- Also, we now report the size info for an empty class like gcc (as
the offset of the start, not as 0, 0).
- Add a few more test cases we were mishandling before (padding bit
field at end of struct, for example).
llvm-svn: 70938
2009-05-04 23:23:09 +00:00
Evan Cheng
dbfb102523
Do forward and backward substitution to eliminate loads and stores when possible.
...
llvm-svn: 70937
2009-05-04 23:13:13 +00:00
Evan Cheng
09bd0b1bd2
Default llc / lli optimization to "Default", which corresponds to -O1 / -O2.
...
llvm-svn: 70934
2009-05-04 23:05:19 +00:00
Evan Cheng
c298ccb998
- Avoid the longer SIB encoding on x86_64 when it's not needed.
...
- Synchronize instruction length computation code in X86InstrInfo with code in X86CodeEmitter.cpp
Patch by Zoltan Varga.
llvm-svn: 70929
2009-05-04 22:49:16 +00:00
Dan Gohman
48f8222293
Re-apply 70645, converting ScalarEvolution to use
...
CallbackVH, with fixes. allUsesReplacedWith need to
walk the def-use chains and invalidate all users of a
value that is replaced. SCEVs of users need to be
recalcualted even if the new value is equivalent. Also,
make forgetLoopPHIs walk def-use chains, since any
SCEV that depends on a PHI should be recalculated when
more information about that PHI becomes available.
llvm-svn: 70927
2009-05-04 22:30:44 +00:00
Dan Gohman
fc2a8d1eb0
Fix an 80-column violation.
...
llvm-svn: 70925
2009-05-04 22:23:18 +00:00
Dan Gohman
4b56fab92b
Fix doxygen comment syntax.
...
llvm-svn: 70924
2009-05-04 22:20:30 +00:00
Chris Lattner
354b12259f
Make DBG_STOPPOINT nodes, and therefore DBG_LABEL labels, get a DebugLoc, so that it
...
shows up in -print-machineinstrs. This doesn't appear to affect anything, but it was
weird for some DBG_LABELs to have DebugLocs but not all of them.
llvm-svn: 70921
2009-05-04 22:10:05 +00:00
Dan Gohman
a30370bc33
Constify a bunch of SCEV-using code.
...
llvm-svn: 70919
2009-05-04 22:02:23 +00:00
Fariborz Jahanian
c46fff0f5f
Adding more test to ivar-layout-64.m.
...
llvm-svn: 70918
2009-05-04 21:46:27 +00:00
Daniel Dunbar
9252ee1779
Compute interface instanceStart and instanceSize using the record
...
layout.
- This is much simpler / more efficient.
- This also properly computes the size in the presence of bit-fields.
llvm-svn: 70916
2009-05-04 21:26:30 +00:00
Daniel Dunbar
a8aa586a72
Add ASTRecordLayout::getFieldCount accessor, change NextOffset field to 64-bits.
...
llvm-svn: 70914
2009-05-04 21:10:32 +00:00
Daniel Dunbar
228895d56a
Add ASTRecordLayout::getNextOffset accessor, and some doxygen comments.
...
llvm-svn: 70909
2009-05-04 21:00:40 +00:00
Daniel Dunbar
45bfd982f1
Initialize NextOffset correctly, otherwise tight layout fails for
...
empty classes.
llvm-svn: 70905
2009-05-04 20:52:37 +00:00
Dan Gohman
bb525f7e02
X86FastISel doesn't support the -tailcallopt ABI.
...
llvm-svn: 70902
2009-05-04 19:50:33 +00:00
Fariborz Jahanian
60637985de
ignore weak_import attribute on objc method decls.
...
llvm-svn: 70901
2009-05-04 19:35:12 +00:00
Argyrios Kyrtzidis
71fb950b73
Restore a comment.
...
llvm-svn: 70900
2009-05-04 19:23:45 +00:00
Anton Korobeynikov
2d1e7321f6
Fix code emission for conditional branches.
...
Patch by Collin Winter!
llvm-svn: 70898
2009-05-04 19:10:38 +00:00
Ted Kremenek
0836a19931
Rename attributes 'objc_ownership...' to 'ns_ownership...'.
...
llvm-svn: 70897
2009-05-04 19:10:19 +00:00
Ted Kremenek
a4a81c0ac7
Increase scan-view max timeout to 1 minute.
...
llvm-svn: 70896
2009-05-04 19:02:41 +00:00
Chris Lattner
23d5a39195
"Fix" a problem with debug info in the presence of always_inline
...
function calls. For a program like this:
#include <stdio.h>
static __inline__ __attribute__((always_inline))
int bar(int x) { return 4; }
int main() {
int X = bar(4);
printf("%d\n", X);
}
clang was not outputing any debug info for the body of main(). This is
because the backend is getting confused by the region_start/end that clang
is emitting for block scopes. For now, just disable these (matching llvm-gcc),
this stuff is in progress of rework anyway.
llvm-svn: 70889
2009-05-04 18:27:04 +00:00
Ted Kremenek
e396f72ec7
BugReporter (extensive diagnostics): don't mark location contexts that are
...
control-flow expressions as dead.
llvm-svn: 70887
2009-05-04 18:15:17 +00:00
Bill Wendling
357e03cede
Use %llvmgcc instead of llvm-gcc.
...
llvm-svn: 70886
2009-05-04 18:00:27 +00:00
Ted Kremenek
250d59f33f
Fix false positive null dereference by unifying code paths in GRSimpleVals for
...
'==' and '!=' (some code in the '!=' was not replicated in the '==' code,
causing some constraints to get lost).
llvm-svn: 70885
2009-05-04 17:53:11 +00:00
Ted Kremenek
5dbfa3fadd
Rename attributes:
...
'objc_ownership_cfretain' -> 'cf_ownership_retain'
'objc_ownership_cfrelease' -> 'cf_ownership_release'
Motivation: Core Foundation objects can be used in isolation from Objective-C,
and this forces users to reason about the separate semantics of CF objects. More
Sema support pending.
llvm-svn: 70884
2009-05-04 17:29:57 +00:00
Ted Kremenek
0b0ee3c49d
Update test case.
...
llvm-svn: 70883
2009-05-04 17:27:32 +00:00
Dan Gohman
3f02595048
Use true instead of 1 for a boolean value. And fix a copy+pasto
...
in a comment.
llvm-svn: 70882
2009-05-04 17:25:21 +00:00
Dan Gohman
d05ae1af8a
Add an svn:ignore property.
...
llvm-svn: 70881
2009-05-04 17:12:00 +00:00
Dan Gohman
630f4e1eb3
Trim unnecessary #includes.
...
llvm-svn: 70880
2009-05-04 17:11:06 +00:00
Dan Gohman
cfd6941cf9
Quotes are used for including llvm headers, rather than angles.
...
llvm-svn: 70879
2009-05-04 17:09:51 +00:00
Ted Kremenek
bc76c72f94
Remove support for ObjCMethodDecl attributes that appear between the
...
return type and the selector. This is inconsistent with C functions
(where such attributes would be placed on the return type, not the the
FunctionDecl), and is inconsistent with what people are use to seeing.
llvm-svn: 70878
2009-05-04 17:04:30 +00:00
Chris Lattner
bef2ee4322
"The attached diff fixes the //FIXME in message send to super. This should now be faster, and works in the presence of class posing. This is now the same approach as used in GCC (the earlier code was a quick hack to get something working)."
...
Patch by David Chisnall!
llvm-svn: 70877
2009-05-04 16:56:33 +00:00
Duncan Sands
50c70336b0
Teach capture tracking that readonly functions can
...
only capture their arguments by returning them or
throwing an exception or not based on the argument
value. Patch essentially by Frits van Bommel.
llvm-svn: 70876
2009-05-04 16:50:29 +00:00
Duncan Sands
b88227ef4c
Check that pure/const functions are marked nounwind.
...
llvm-svn: 70875
2009-05-04 16:47:11 +00:00
Ted Kremenek
49a844e1a6
retain checker: Add checker support for FunctionDecl ownership annotations. Need to add Sema support.
...
llvm-svn: 70873
2009-05-04 16:43:50 +00:00
Chris Lattner
fa552d728d
fix some problems spotted by Duncan and Nicolas Geoffray
...
llvm-svn: 70872
2009-05-04 16:29:24 +00:00
Argyrios Kyrtzidis
9ae29b2d8f
-Remove the DwarfWriter::RecordSourceLine calls from the instruction selectors.
...
-Depend on DebugLocs for source line info.
(Comes with Regression-Be-Gone(tm))
llvm-svn: 70871
2009-05-04 16:23:49 +00:00
Ted Kremenek
863f68aa06
retain checker: Pull out logic for parameter annotations into a
...
separate method.
llvm-svn: 70870
2009-05-04 15:40:58 +00:00
Ted Kremenek
df76e6d09d
retain checker: Don't treat function's declared in macros differently.
...
llvm-svn: 70869
2009-05-04 15:34:07 +00:00
Daniel Dunbar
566421c8a3
Patch from David Chisnall:
...
The attached diff fixes the //FIXME in message send to super. This
should now be faster, and works in the presence of class posing. This
is now the same approach as used in GCC (the earlier code was a quick
hack to get something working).
llvm-svn: 70868
2009-05-04 15:31:17 +00:00
Ted Kremenek
a68556c4cc
Add array index assertion: BasicStore should not expect any fancy
...
ElementRegions that have non-zero array indices.
llvm-svn: 70867
2009-05-04 15:25:46 +00:00
Daniel Dunbar
c1fd2284c1
Update test case... the location given for this error makes it look
...
rather odd when truncated.
llvm-svn: 70866
2009-05-04 15:18:44 +00:00
Ted Kremenek
d795b02be7
Rename 'makeZeroIndex' to 'makeZeroArrayIndex'.
...
llvm-svn: 70865
2009-05-04 15:17:38 +00:00
Ted Kremenek
629a43ffa1
Zhongxing already implemented this FIXME.
...
llvm-svn: 70864
2009-05-04 15:14:27 +00:00
Ted Kremenek
238d0b6ecd
Rename no-outofbounds.c to xfail-no-outofbounds.c and split off that
...
test into a separate file to monitor the fact that BasicStoreManager
passes the test.
llvm-svn: 70859
2009-05-04 14:31:19 +00:00