- May 12, 2009
-
-
Chris Lattner authored
llvm-svn: 71590
-
Chris Lattner authored
llvm-svn: 71586
-
Chris Lattner authored
llvm-svn: 71585
-
Chris Lattner authored
llvm-svn: 71583
-
Fariborz Jahanian authored
selectors which need use Nonfrgile API for message dispatch. llvm-svn: 71578
-
Fariborz Jahanian authored
only and used in class imllementations (objc2 Nonfragile ABI specific). llvm-svn: 71571
-
Daniel Dunbar authored
don't need special treatment for unions. llvm-svn: 71559
-
Daniel Dunbar authored
register. - Merge algorithm was returning MEMORY as it should. llvm-svn: 71556
-
Anders Carlsson authored
Factor code that's common to EmitCXXMemberCallExpr and EmitCXXConstructorCall out into a EmitCXXMemberCall function. llvm-svn: 71514
-
Daniel Dunbar authored
spotted by Eli! llvm-svn: 71490
-
- May 11, 2009
-
-
Fariborz Jahanian authored
message dispage API for all but a few messages. This is a runtime performance improvement and there is not meant to be a functional change. llvm-svn: 71467
-
Daniel Dunbar authored
llvm-svn: 71461
-
Chris Lattner authored
llvm-svn: 71451
-
- May 10, 2009
-
-
Sebastian Redl authored
llvm-svn: 71405
-
- May 09, 2009
-
-
Duncan Sands authored
LLVM. llvm-svn: 71350
-
Daniel Dunbar authored
- {return-types,single-args}-{32,64} pass the first 1k ABI tests with bit-fields enabled. llvm-svn: 71272
-
- May 08, 2009
-
-
Daniel Dunbar authored
to use a wide enough type. This might be wider than the "single element"'s type in the presence of padding bit-fields. - Darwin x86_32 now passes the first 1k ABI tests with bit-field generation enabled. llvm-svn: 71270
-
Daniel Dunbar authored
element" structures. llvm-svn: 71266
-
Daniel Dunbar authored
- This turns out to be a no-op now that most of the handling for everything else is in place. llvm-svn: 71261
-
Daniel Dunbar authored
- This eliminates 5/1000 failures on return-types-32, on the current ABITest config. llvm-svn: 71250
-
Chris Lattner authored
llvm-svn: 71227
-
Chris Lattner authored
"This patch fixes message sends to super in categories for the GNU runtime. This used to work, but I broke it when I modified the code to emit the same thing as GCC for message sends to super in classes." Patch by David Chisnall! llvm-svn: 71220
-
Chris Lattner authored
semantic rules that gcc and icc use. This implements the variadic and concrete versions as builtins and has sema do the disambiguation. There are probably a bunch of details to finish up but this seems like a large monotonic step forward :) llvm-svn: 71212
-
Chris Lattner authored
"This patch is a first pass at adding support for exceptions for the GNU runtime. There are a few limitations at present: - @synchronized() is not yet supported at all. gcc currently emits calls to runtime library functions that don't exist for this directive. - Only id @catch statements are currently working. This is enough for NS_DURING and friends, but I need to spend more time reading the output from gcc -S to work out how it finds the class pointer to make arbitrary class type catch statements work. - I've tested it with a few common cases[1] and the clang test suite (which doesn't test exceptions for the GNU runtime, but shows I haven't broken anything else), but there are probably a lot of cases I've missed." Patch by David Chisnall! llvm-svn: 71198
-
Eli Friedman authored
llvm-svn: 71194
-
- May 05, 2009
-
-
Fariborz Jahanian authored
Patch by David Chisnall. llvm-svn: 71023
-
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
-
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
-
Daniel Dunbar authored
llvm-svn: 70951
-
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
-
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
-
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
-
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
-
Daniel Dunbar authored
llvm-svn: 70835
-
Eli Friedman authored
llvm-svn: 70825
-