| #
4f24225e |
| 06-Nov-2009 |
Chris Lattner <[email protected]> |
indirectbr seems to work! Rip out the old code.
llvm-svn: 86256
|
| #
09bd8656 |
| 29-Oct-2009 |
Nuno Lopes <[email protected]> |
make clang emit undefs for padding of structs and unions instead of zeros. this enables constant compaction optimizations.
llvm-svn: 85504
|
| #
6c4d255b |
| 28-Oct-2009 |
Chris Lattner <[email protected]> |
Implement clang support for indirect branch and address of label using the new LLVM support for this. This is temporarily hiding behind horrible and ugly #ifdefs until the time when the optimizer is
Implement clang support for indirect branch and address of label using the new LLVM support for this. This is temporarily hiding behind horrible and ugly #ifdefs until the time when the optimizer is stable (hopefully a week or so). Until then, lets make it "opt in" :)
llvm-svn: 85446
show more ...
|
|
Revision tags: llvmorg-2.6.0 |
|
| #
4bd90e53 |
| 23-Oct-2009 |
Douglas Gregor <[email protected]> |
Eliminate QualifiedDeclRefExpr, which captured the notion of a qualified reference to a declaration that is not a non-static data member or non-static member function, e.g.,
namespace N { int i;
Eliminate QualifiedDeclRefExpr, which captured the notion of a qualified reference to a declaration that is not a non-static data member or non-static member function, e.g.,
namespace N { int i; } int j = N::i;
Instead, extend DeclRefExpr to optionally store the qualifier. Most clients won't see or care about the difference (since QualifierDeclRefExpr inherited DeclRefExpr). However, this reduces the number of top-level expression types that clients need to cope with, brings the implementation of DeclRefExpr into line with MemberExpr, and simplifies and unifies our handling of declaration references.
Extended DeclRefExpr to (optionally) store explicitly-specified template arguments. This occurs when naming a declaration via a template-id (which will be stored in a TemplateIdRefExpr) that, following template argument deduction and (possibly) overload resolution, is replaced with a DeclRefExpr that refers to a template specialization but maintains the template arguments as written.
llvm-svn: 84962
show more ...
|
| #
9500ad13 |
| 18-Oct-2009 |
Anders Carlsson <[email protected]> |
Use CK_BitCast for member function pointer casts. Fixes PR5138.
llvm-svn: 84438
|
| #
a2f9bd53 |
| 13-Oct-2009 |
Chris Lattner <[email protected]> |
fix test/CodeGen/statements.c on 32-bit hosts.
llvm-svn: 84039
|
| #
abd5b90e |
| 13-Oct-2009 |
Benjamin Kramer <[email protected]> |
Simplify pointer creation with the new Type::getInt*Ptr methods.
llvm-svn: 83964
|
| #
3eb172a0 |
| 13-Oct-2009 |
Chris Lattner <[email protected]> |
Teach sema and codegen about the difference between address of labels, which is a common idiom to improve PIC'ness of code using the addr of label extension. This implementation is a gross hack, but
Teach sema and codegen about the difference between address of labels, which is a common idiom to improve PIC'ness of code using the addr of label extension. This implementation is a gross hack, but the only other alternative would be to teach evalutate about this horrid combination. While GCC allows things like "&&foo - &&bar + 1", people don't use this in practice. This implements PR5131.
llvm-svn: 83957
show more ...
|
| #
2bb27f53 |
| 11-Oct-2009 |
Anders Carlsson <[email protected]> |
Move the vtable builder to CGVtable.cpp, general cleanup.
llvm-svn: 83798
|
| #
d5931cd2 |
| 03-Oct-2009 |
Anders Carlsson <[email protected]> |
Pass the canonical method decl to GetVtableIndex. Fixes PR5120.
llvm-svn: 83272
|
| #
3162e494 |
| 03-Oct-2009 |
Anders Carlsson <[email protected]> |
Handle base-to-derived casts of member function pointers in CGExprConstant.cpp
llvm-svn: 83265
|
| #
128a5d51 |
| 03-Oct-2009 |
Anders Carlsson <[email protected]> |
Handle members to function pointers in CGExprConstant.
llvm-svn: 83264
|
| #
8a744ad8 |
| 02-Oct-2009 |
Anders Carlsson <[email protected]> |
Don't update the struct alignment when adding fields to a packed struct. Fixes PR5118.
llvm-svn: 83235
|
| #
39e3eb12 |
| 02-Oct-2009 |
Anders Carlsson <[email protected]> |
When building constant structs, check if the resulting LLVM struct will be bigger than the record layout size and use a packed struct if that's the case. Fixes PR5108.
llvm-svn: 83230
|
| #
b05a3e55 |
| 29-Sep-2009 |
Anders Carlsson <[email protected]> |
Improve support for member function pointers.
llvm-svn: 83039
|
| #
41eaf0ac |
| 19-Sep-2009 |
Nick Lewycky <[email protected]> |
Make clang stop relying on ConstantStruct::get's default value for isPacked which will be going away (ie. it's becoming a required parameter) later today.
llvm-svn: 82323
|
| #
ecf9bf01 |
| 10-Sep-2009 |
Anders Carlsson <[email protected]> |
GlobalDecl doesn't have an explicit constructor anymore.
llvm-svn: 81481
|
| #
11289f42 |
| 09-Sep-2009 |
Mike Stump <[email protected]> |
Remove tabs, and whitespace cleanups.
llvm-svn: 81346
|
| #
95f89638 |
| 26-Aug-2009 |
Eli Friedman <[email protected]> |
Make address-space qualification work correctly for compound literals. Issue reported on cfe-dev.
Also fixed the code to use isConstant to determine whether to generate a constant global, to be c
Make address-space qualification work correctly for compound literals. Issue reported on cfe-dev.
Also fixed the code to use isConstant to determine whether to generate a constant global, to be consistent with CodeGenModule. This probably needs to be refactored to deal with C++, though.
llvm-svn: 80131
show more ...
|
| #
867b48f7 |
| 24-Aug-2009 |
Anders Carlsson <[email protected]> |
More member pointer work.
llvm-svn: 79922
|
| #
622ddae9 |
| 23-Aug-2009 |
Anders Carlsson <[email protected]> |
Whoops, comment this out for now. I'll fix it shortly.
llvm-svn: 79806
|
| #
d606de72 |
| 23-Aug-2009 |
Anders Carlsson <[email protected]> |
More work towards zero-initializing structs that contain member pointers in constant expressions.
llvm-svn: 79805
|
| #
faeccc62 |
| 23-Aug-2009 |
Anders Carlsson <[email protected]> |
Handle CK_NullToMemberPointer casts in the constant expr emitter.
llvm-svn: 79790
|
| #
3b0c5dcd |
| 22-Aug-2009 |
Anders Carlsson <[email protected]> |
Change the constant expression emitter to look at the cast kind for to-union casts.
llvm-svn: 79789
|
| #
41a75027 |
| 13-Aug-2009 |
Owen Anderson <[email protected]> |
Update for LLVM API change.
llvm-svn: 78946
|