- Apr 28, 2010
-
-
Fariborz Jahanian authored
ivar class objects (NeXt runtime). (radar 7900343). llvm-svn: 102533
-
David Chisnall authored
Changed signature of GenerateMessageSend() function to pass the ObjCInterfaceDecl for class messages and removed the boolean IsClassMessage argument, which wasn't used anywhere. Emitted some metadata on message sends to allow a later pass to do some speculative inlining of class methods (GNU runtime). Speculative inlining of instance methods requires type feedback to be useful (work in progress), but for class methods it works quite nicely. llvm-svn: 102514
-
Benjamin Kramer authored
llvm-svn: 102499
-
David Chisnall authored
llvm-svn: 102497
-
Douglas Gregor authored
T::template apply<U>), handling a few cases where we previously failed and performing substitutions on such dependent names. Fixes a crash in Boost.PropertyTree. llvm-svn: 102490
-
John McCall authored
incomplete type. Fixes PR6911. llvm-svn: 102473
-
- Apr 27, 2010
-
-
David Chisnall authored
llvm-svn: 102459
-
David Chisnall authored
This works around stack corruption / crashes resulting from PR6944, and also works around people who expect 'what works on my machine' to work everywhere (GCC crashes in a number of cases on SPARC that should now work correctly with clang). llvm-svn: 102430
-
Daniel Dunbar authored
llvm-svn: 102429
-
John McCall authored
of a class template or class template partial specialization. That is to say, in template <class T> class A { ... }; or template <class T> class B<const T*> { ... }; make 'A<T>' and 'B<const T*>' sugar for the corresponding InjectedClassNameType when written inside the appropriate context. This allows us to track the current instantiation appropriately even inside AST routines. It also allows us to compute a DeclContext for a type much more efficiently, at some extra cost every time we write a template specialization (which can be optimized, but I've left it simple in this patch). llvm-svn: 102407
-
Devang Patel authored
llvm-svn: 102398
-
- Apr 26, 2010
-
-
Chris Lattner authored
mode. llvm-svn: 102377
-
Douglas Gregor authored
@catch a VarDecl. The dynamic type is still a ParmVarDecl, but that will change soon. No effective functionality change. llvm-svn: 102341
-
- Apr 25, 2010
-
-
Daniel Dunbar authored
- Fix some places that had the alignment hard coded. - Use ABI type alignment, not preferred type alignment -- neither of this is exactly right, as we really want the C type alignment as required by the runtime, but the ABI alignment is a more correct choice. This should be equivalent for x86_64, but fixes the alignment for ARM. llvm-svn: 102314
-
Daniel Dunbar authored
IRgen/NeXT: Reuse EmitImageInfo for both fragile and non-fragile ABI. This fixes Clang to correctly emit the "CorrectedSynthesize" bit when using the non-fragile ABI. llvm-svn: 102312
-
Anders Carlsson authored
llvm-svn: 102293
-
Anders Carlsson authored
llvm-svn: 102289
-
Anders Carlsson authored
llvm-svn: 102286
-
Anders Carlsson authored
llvm-svn: 102285
-
Anders Carlsson authored
RenameGetAddressOfBaseOfCompleteClass to GetAddressOfDirectBaseInCompleteClass to reflect that it only handles direct bases. llvm-svn: 102284
-
Anders Carlsson authored
llvm-svn: 102282
-
Anders Carlsson authored
llvm-svn: 102281
-
Anders Carlsson authored
DefineImplicitCopyConstructor now uses SetBaseOrMemberInitializers to create implicit base initializers. (Member initializers are still handled by CodeGenFunction::SynthesizeCXXCopyConstructor for now). llvm-svn: 102279
-
- Apr 24, 2010
-
-
Anders Carlsson authored
llvm-svn: 102275
-
Anders Carlsson authored
llvm-svn: 102274
-
Anders Carlsson authored
llvm-svn: 102273
-
Anders Carlsson authored
llvm-svn: 102272
-
Anders Carlsson authored
Add a new GetAddressOfBaseClass overload that takes a base path and. Use it for derived-to-base casts. llvm-svn: 102270
-
Benjamin Kramer authored
llvm-svn: 102263
-
Benjamin Kramer authored
llvm-svn: 102262
-
Daniel Dunbar authored
- Replace -cc1 level -fobjc-legacy-dispatch with -fobjc-dispatch-method={legacy,non-legacy,mixed}. - Lift "mixed" vs "non-mixed" policy choice up to driver level, instead of being buried in CGObjCMac.cpp. - No intended functionality change. llvm-svn: 102255
-
Anders Carlsson authored
llvm-svn: 102249
-
Dan Gohman authored
pointer operand. This fixes an abort on MultiSource/Applications/ClamAV/libclamav_mbox.c. llvm-svn: 102238
-
Devang Patel authored
llvm-svn: 102226
-
Devang Patel authored
llvm-svn: 102224
-
Douglas Gregor authored
statements. Instead of the @try having a single @catch, where all of the @catch's were chained (using an O(n^2) algorithm nonetheless), @try just holds an array of its @catch blocks. The resulting AST is slightly more compact (not important) and better represents the actual language semantics (good). llvm-svn: 102221
-
Fariborz Jahanian authored
llvm-svn: 102219
-
Anders Carlsson authored
llvm-svn: 102218
-
- Apr 23, 2010
-
-
Daniel Dunbar authored
chain outwards when inside a nested exception scope. - A real test for this is going into LLVM test-suite. llvm-svn: 102204
-
Daniel Dunbar authored
llvm-svn: 102203
-