| #
c55042c2 |
| 10-Feb-2010 |
Chris Lattner <[email protected]> |
hopefully silence a warning on the clang-i386-darwin9 tester.
llvm-svn: 95812
|
| #
6d0e5bd8 |
| 07-Feb-2010 |
Anders Carlsson <[email protected]> |
Use the right type when taking the address of a non-virtual member function pointer. Fixes PR6258.
llvm-svn: 95524
|
| #
cb86e108 |
| 05-Feb-2010 |
Anders Carlsson <[email protected]> |
Fix the bug that was breaking self-host, and re-land the static ctor fixes.
llvm-svn: 95400
|
| #
af77cd22 |
| 05-Feb-2010 |
Douglas Gregor <[email protected]> |
Revert r95363 and r95375, which broke self-host.
llvm-svn: 95389
|
| #
893555ce |
| 05-Feb-2010 |
Anders Carlsson <[email protected]> |
Fix array initialization test.
llvm-svn: 95375
|
| #
ecac409c |
| 05-Feb-2010 |
Anders Carlsson <[email protected]> |
If a global initializer has a non-trivial destructor it can't be emitted as a constant (even if it has a trivial constructor).
llvm-svn: 95363
|
| #
7914dad7 |
| 04-Feb-2010 |
Anders Carlsson <[email protected]> |
Calculate offset correctly when taking the address of a virtual member function.
llvm-svn: 95305
|
| #
45858d2d |
| 03-Feb-2010 |
Daniel Dunbar <[email protected]> |
Revert "Numerous changes to selector handling:", this breaks a whole bunch of working code, for no apparent reason.
llvm-svn: 95244
|
| #
92b762e2 |
| 03-Feb-2010 |
David Chisnall <[email protected]> |
Numerous changes to selector handling:
- Don't use GlobalAliases with non-0 GEPs (GNU runtime) - this was unsupported and LLVM will be generating errors if you do it soon. This also simplifies the
Numerous changes to selector handling:
- Don't use GlobalAliases with non-0 GEPs (GNU runtime) - this was unsupported and LLVM will be generating errors if you do it soon. This also simplifies the code generated by the GNU runtime a bit.
- Make GetSelector() return a constant (GNU runtime), not a load of a store of a constant.
- Recognise @selector() expressions as valid static initialisers (as GCC does).
- Add methods to GCObjCRuntime to emit selectors as constants (needed for using @selector() expressions as constants. These need implementing for the Mac runtimes - I couldn't figure out how to do this, they seem to require a load.
- Store an ObjCMethodDecl in an ObjCSelectorExpr so that we can get at the type information for the selector. This is needed for generating typed selectors from @selector() expressions (as GCC does). Ideally, this information should be stored in the Selector, but that would be an invasive change. We should eventually add checks for common uses of @selector() expressions. Possibly adding an attribute that can be applied to method args providing the types of a selector so, for example, you'd do something like this:
- (id)performSelector: __attribute__((selector_types(id, SEL, id)))(SEL) withObject: (id)object;
Then, any @selector() expressions passed to the method will be check to ensure that it conforms to this signature. We do this at run time on the GNU runtime already, but it would be nice to do it at compile time on all runtimes.
- Made @selector() expressions emit type info if available and the runtime supports it.
Someone more familiar with the Mac runtime needs to implement the GetConstantSelector() function in CGObjCMac. This currently just assert()s.
llvm-svn: 95189
show more ...
|
| #
173bfe47 |
| 02-Feb-2010 |
Chandler Carruth <[email protected]> |
Use the Arg variable rather than re-computing it. This also silences GCC's unused variable warning.
llvm-svn: 95085
|
| #
49786a6c |
| 02-Feb-2010 |
John McCall <[email protected]> |
Codegen CXXConstructExprs with trivial constructors as constants. Eliminates a lot of spurious global initializers, fixing PR6205.
llvm-svn: 95077
|
| #
e8bfe412 |
| 02-Feb-2010 |
Anders Carlsson <[email protected]> |
Improve handling of emitting 'null' pointers to data members.
llvm-svn: 95066
|
| #
259688ce |
| 02-Feb-2010 |
Anders Carlsson <[email protected]> |
Move pointer to data member emission to CodeGenModule and use it in CGExprConstant. Fixes PR5674.
llvm-svn: 95063
|
| #
84673e20 |
| 31-Jan-2010 |
Anders Carlsson <[email protected]> |
Some class related cleanup.
llvm-svn: 94938
|
| #
481e3a87 |
| 23-Jan-2010 |
David Chisnall <[email protected]> |
Created __builtin___NSStringMakeConstantString() builtin, which generates constant Objective-C strings.
llvm-svn: 94274
|
| #
02990837 |
| 15-Jan-2010 |
Ken Dyck <[email protected]> |
Convert the type of the LValue offset variable in APValue to CharUnits, moving the LValue-related methods of APValue out of line to avoid header file leaching.
llvm-svn: 93512
|
| #
a0b025e4 |
| 05-Jan-2010 |
Anders Carlsson <[email protected]> |
When emitting member function pointers, use the canonical decl if the member function is virtual. Fixes PR5940.
llvm-svn: 92680
|
| #
c52a9367 |
| 02-Jan-2010 |
Eli Friedman <[email protected]> |
Get rid of some unnecessary code.
llvm-svn: 92432
|
| #
17c4f8d7 |
| 08-Dec-2009 |
Daniel Dunbar <[email protected]> |
Update CGExprConstant for change to emit padding values as undef. - This fixes 2003-05-21-BitfieldHandling.
llvm-svn: 90876
|
| #
337e3a5f |
| 28-Nov-2009 |
Benjamin Kramer <[email protected]> |
Remove remaining VISIBILITY_HIDDEN from anonymous namespaces.
llvm-svn: 90044
|
| #
f942ee02 |
| 27-Nov-2009 |
Anders Carlsson <[email protected]> |
Don't build the entire vtable when all we want is the index of a virtual method.
llvm-svn: 90017
|
| #
e18e29ee |
| 21-Nov-2009 |
Anders Carlsson <[email protected]> |
Support emitting aggregate class initializers. Fixes PR5581.
llvm-svn: 89569
|
| #
274ab904 |
| 14-Nov-2009 |
Eli Friedman <[email protected]> |
Avoid assert-crash in a case where the expression passed to EmitConstantExpr legitimately has side-effects (and needs to be generated as a non-constant).
llvm-svn: 88767
|
| #
b210fc59 |
| 14-Nov-2009 |
Eli Friedman <[email protected]> |
Make __func__ and friends work correctly within the initializer for a static local variable.
llvm-svn: 88766
|
| #
6f04b1e6 |
| 13-Nov-2009 |
Eli Friedman <[email protected]> |
Obvious fix for PR5474.
llvm-svn: 88696
|