| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 100007
|
| |
|
|
|
|
|
|
| |
This introduces FunctionType::ExtInfo to hold the calling convention and the
noreturn attribute. The next patch will extend it to include the regparm
attribute and fix the bug.
llvm-svn: 99920
|
| |
|
|
|
|
| |
alternate struct return ABI
llvm-svn: 97775
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
of the block descriptor field. This field is the ObjC style @encode
signature of the implementation function, and was to this point
conditionally provided in the block literal data structure. That
provisional support is removed.
Additionally, eliminate unused enumerations for the block literal flags field.
The first shipping ABI unconditionally set (1<<29) but this bit is unused
by the runtime, so the second ABI will unconditionally have (1<<30) set so
that the runtime can in fact distinguish whether the additional data is
present or not.
llvm-svn: 96989
|
| |
|
|
| |
llvm-svn: 96635
|
| |
|
|
|
|
|
|
| |
a block without it being used. This causes over release
of objects in certain runtime-senitive apps.
(fixes radar 7581175).
llvm-svn: 96501
|
| |
|
|
| |
llvm-svn: 96486
|
| |
|
|
| |
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
|