| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 96484
|
|
|
|
|
|
| |
a __weak block. Fixes radar 7628591.
llvm-svn: 95822
|
|
|
|
|
|
|
|
|
|
|
|
| |
follows (as conservatively as possible) gcc's current behavior: attributes
written on return types that don't apply there are applied to the function
instead, etc. Only parse CC attributes as type attributes, not as decl attributes;
don't accepet noreturn as a decl attribute on ValueDecls, either (it still
needs to apply to other decls, like blocks). Consistently consume CC/noreturn
information throughout codegen; enforce this by removing their default values
in CodeGenTypes::getFunctionInfo().
llvm-svn: 95436
|
|
|
|
|
|
|
| |
now that the "InBytes" part of the name is implied by the return type, rename
it to getDeclAlign().
llvm-svn: 94681
|
|
|
|
| |
llvm-svn: 94571
|
|
|
|
|
|
| |
of LLVM types in character units.
llvm-svn: 94542
|
|
|
|
| |
llvm-svn: 94401
|
|
|
|
| |
llvm-svn: 94175
|
|
|
|
|
|
|
|
|
|
| |
"ASTContext::getTypeSize() / 8". Replace [u]int64_t variables with CharUnits
ones as appropriate.
Also rename RawType, fromRaw(), and getRaw() in CharUnits to QuantityType,
fromQuantity(), and getQuantity() for clarity.
llvm-svn: 93153
|
|
|
|
| |
llvm-svn: 92145
|
|
|
|
| |
llvm-svn: 92138
|
|
|
|
|
|
| |
Template instantiation can re-use DeclRefExprs.
llvm-svn: 90848
|
|
|
|
| |
llvm-svn: 90657
|
|
|
|
| |
llvm-svn: 90098
|
|
|
|
|
|
| |
DeclRefExprs
llvm-svn: 89649
|
|
|
|
|
|
| |
As per Fariborz's suggestion, committed now but can be reverted later if the used flag is problematic for Apple.
llvm-svn: 89134
|
|
|
|
| |
llvm-svn: 84823
|
|
|
|
|
|
| |
the copy/dispose helpers as appropriate.
llvm-svn: 84817
|
|
|
|
| |
llvm-svn: 84789
|
|
|
|
| |
llvm-svn: 84787
|
|
|
|
| |
llvm-svn: 84770
|
|
|
|
| |
llvm-svn: 84769
|
|
|
|
|
|
|
| |
generate the debug information for the first parameter to the block
invoke functions. WIP.
llvm-svn: 84737
|
|
|
|
|
|
| |
it was. Fixes codegen bug introduced yesterday.
llvm-svn: 84668
|
|
|
|
|
|
|
| |
WIP. I have yet to find the magic incantation to get the structure
type to be defined. If someone has a pointer, love to hear it.
llvm-svn: 84590
|
|
|
|
| |
llvm-svn: 83964
|
|
|
|
| |
llvm-svn: 83221
|
|
|
|
|
|
| |
BlockDeclRefDecls.
llvm-svn: 83185
|
|
|
|
|
|
|
| |
scheme, we can switch the previous scheme over to using this code
path. There's a bit of simplifications yet to do as well.
llvm-svn: 83138
|
|
|
|
| |
llvm-svn: 82725
|
|
|
|
| |
llvm-svn: 82508
|
|
|
|
|
|
|
|
|
|
|
| |
Several of the existing methods were identical to their respective
specializations, and so have been removed entirely. Several more 'leaf'
optimizations were introduced.
The getAsFoo() methods which imposed extra conditions, like
getAsObjCInterfacePointerType(), have been left in place.
llvm-svn: 82501
|
|
|
|
|
|
| |
which will be going away (ie. it's becoming a required parameter) later today.
llvm-svn: 82323
|
|
|
|
| |
llvm-svn: 81602
|
|
|
|
|
|
| |
where the variable is stored.
llvm-svn: 81599
|
|
|
|
| |
llvm-svn: 81346
|
|
|
|
| |
llvm-svn: 81337
|
|
|
|
| |
llvm-svn: 81315
|
|
|
|
| |
llvm-svn: 79916
|
|
|
|
|
|
| |
DeclaratorInfo to get this information.
llvm-svn: 79584
|
|
|
|
|
|
|
|
|
|
|
|
| |
interfaces.
DeclaratorDecl contains a DeclaratorInfo* to keep type source info.
Subclasses of DeclaratorDecl are FieldDecl, FunctionDecl, and VarDecl.
EnumConstantDecl still inherits from ValueDecl since it has no need for DeclaratorInfo.
Decl/Sema interfaces accept a DeclaratorInfo as parameter but no DeclaratorInfo is created yet.
llvm-svn: 79392
|
|
|
|
| |
llvm-svn: 78946
|
|
|
|
| |
llvm-svn: 78259
|
|
|
|
| |
llvm-svn: 77722
|
|
|
|
| |
llvm-svn: 77688
|
|
|
|
| |
llvm-svn: 77629
|
|
|
|
| |
llvm-svn: 77514
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Type::getAsReferenceType() -> Type::getAs<ReferenceType>()
Type::getAsRecordType() -> Type::getAs<RecordType>()
Type::getAsPointerType() -> Type::getAs<PointerType>()
Type::getAsBlockPointerType() -> Type::getAs<BlockPointerType>()
Type::getAsLValueReferenceType() -> Type::getAs<LValueReferenceType>()
Type::getAsRValueReferenceType() -> Type::getAs<RValueReferenceType>()
Type::getAsMemberPointerType() -> Type::getAs<MemberPointerType>()
Type::getAsReferenceType() -> Type::getAs<ReferenceType>()
Type::getAsTagType() -> Type::getAs<TagType>()
And remove Type::getAsReferenceType(), etc.
This change is similar to one I made a couple weeks ago, but that was partly
reverted pending some additional design discussion. With Doug's pending smart
pointer changes for Types, it seemed natural to take this approach.
llvm-svn: 77510
|
|
|
|
| |
llvm-svn: 77492
|
|
|
|
| |
llvm-svn: 77267
|