- May 05, 2009
-
-
Chris Lattner authored
to go back and clean up existing uses of the bitcasted function. This is not just an optimization: it is required for correctness to get always inline functions to work, see testcases in function-attributes.c. llvm-svn: 70971
-
Chris Lattner authored
types. In this case, it was objc_selector and objc_class. This fixes rdar://6852754 - clang sometimes generates incorrect/unknown file/line info for DW_TAG__structure_type dies llvm-svn: 70969
-
Chris Lattner authored
DIEs. We were generating a loc with line of 0 and a file. These tags do not need locations at all, just remove it. this fixes rdar://6852792 - Clang generates incorrect (and unnecessary) file and line info for DW_TAG_inheritance dies llvm-svn: 70966
-
Chris Lattner authored
in ObjC) to not emit file/line location information. Previously we would output a file with bogus line information. This fixes: rdar://6852814 - Clang generates incorrect file & line info for automatic/understood formal parameters for objc-programs llvm-svn: 70965
-
Douglas Gregor authored
composite pointer type, and his is better! Updated relational- and equality-operator checking accordingly. llvm-svn: 70963
-
Anders Carlsson authored
Refactor global decls to hold either a regular Decl or a CXXConstructorDecl + ctor type or a CXXDestructorDecl + dtor type. llvm-svn: 70962
-
Ted Kremenek authored
llvm-svn: 70952
-
Daniel Dunbar authored
llvm-svn: 70951
-
Ted Kremenek authored
ns_ownership_returns -> ns_returns_owned ns_ownership_retain -> ns_retains ns_ownership_release -> ns_releases cf_ownership_retain -> cf_retains cf_ownership_release -> cf_releases llvm-svn: 70949
-
Ted Kremenek authored
llvm-svn: 70946
-
Ted Kremenek authored
llvm-svn: 70943
-
Ted Kremenek authored
llvm-svn: 70941
-
Ted Kremenek authored
llvm-svn: 70940
-
Fariborz Jahanian authored
objc_assign_global API when assigning to global objective-c object pointer. llvm-svn: 70939
-
Daniel Dunbar authored
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
-
- May 04, 2009
-
-
Daniel Dunbar authored
layout. - This is much simpler / more efficient. - This also properly computes the size in the presence of bit-fields. llvm-svn: 70916
-
Fariborz Jahanian authored
llvm-svn: 70901
-
Ted Kremenek authored
llvm-svn: 70897
-
Chris Lattner authored
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
-
Ted Kremenek authored
control-flow expressions as dead. llvm-svn: 70887
-
Ted Kremenek authored
'==' and '!=' (some code in the '!=' was not replicated in the '==' code, causing some constraints to get lost). llvm-svn: 70885
-
Ted Kremenek authored
'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
-
Ted Kremenek authored
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
-
Chris Lattner authored
"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
-
Ted Kremenek authored
retain checker: Add checker support for FunctionDecl ownership annotations. Need to add Sema support. llvm-svn: 70873
-
Ted Kremenek authored
separate method. llvm-svn: 70870
-
Ted Kremenek authored
llvm-svn: 70869
-
Daniel Dunbar authored
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
-
Ted Kremenek authored
ElementRegions that have non-zero array indices. llvm-svn: 70867
-
Ted Kremenek authored
llvm-svn: 70865
-
Ted Kremenek authored
llvm-svn: 70864
-
Zhongxing Xu authored
no-outofbounds.c still fails. Previously it passed because the array index is mistakenly a loc::ConcreteInt. llvm-svn: 70844
-
Ted Kremenek authored
StoreManager: Handle casts from one element region to another. Update test cases. llvm-svn: 70836
-
Daniel Dunbar authored
llvm-svn: 70835
-
Douglas Gregor authored
Simplify the interesting-region code by assimmilating blocks of non-whitespace text with each expansion step. It's easier and seems to have better results. llvm-svn: 70833
-
Ted Kremenek authored
'ElementRegion' on top of the VarRegion for 'x'. This causes the test case xfail_wine_crash.c to now pass for BasicStoreManager. It doesn't crash for RegionStoreManager either, but reports a bogus unintialized value warning. llvm-svn: 70832
-
Douglas Gregor authored
1) First of all, we treat _ as part of an identifier and not as punctuation (oops). 2) Second of all, always make sure that the token that the ^ is pointing at is fully within the "interesting" part of the range. llvm-svn: 70831
-
Ted Kremenek authored
ElementRegion. I also removed 'ElementRegion::getArrayRegion', although we may need to add this back. This breaks a few test cases with RegionStore: - 'array-struct.c' triggers an infinite recursion in RegionStoreManager. Need to investigate. - misc-ps.m triggers a failure with RegionStoreManager as we now get the diagnostic: 'Line 159: Uninitialized or undefined return value returned to caller.' There were a bunch of places that needed to be edit RegionStoreManager, and we may not be passing all the correct 'element types' down from GRExprEngine. Zhongxing: When you get a chance, could you review this? I could have easily screwed up something basic in RegionStoreManager. llvm-svn: 70830
-
Douglas Gregor authored
in C++, taking into account conversions to the "composite pointer type" so that we can compare, e.g., a pointer to a derived class to a pointer to a base class. Also, upgrade the "comparing distinct pointer types" from a warning to an error for C++, since this is clearly an error. Turns out that we hadn't gone through and audited this code for C++, ever. Fixes <rdar://problem/6816420>. llvm-svn: 70829
-
Ted Kremenek authored
- Fix retain checker test failures. - Update retain checker to have annotations override default summary effects, not completely redefine them. llvm-svn: 70828
-