| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 65611
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
giving them rough classifications (normal types, never-canonical
types, always-dependent types, abstract type representations) and
making it far easier to make sure that we've hit all of the cases when
decoding types.
Switched some switch() statements on the type class over to using this
mechanism, and filtering out those things we don't care about. For
example, CodeGen should never see always-dependent or non-canonical
types, while debug info generation should never see always-dependent
types. More switch() statements on the type class need to be moved
over to using this approach, so that we'll get warnings when we add a
new type then fail to account for it somewhere in the compiler.
As part of this, some types have been renamed:
TypeOfExpr -> TypeOfExprType
FunctionTypeProto -> FunctionProtoType
FunctionTypeNoProto -> FunctionNoProtoType
There shouldn't be any functionality change...
llvm-svn: 65591
|
| |
|
|
| |
llvm-svn: 65582
|
| |
|
|
| |
llvm-svn: 65578
|
| |
|
|
|
|
| |
(This is not yet used.)
llvm-svn: 65573
|
| |
|
|
|
|
|
|
|
| |
- For types whose native representation is a pointer.
- Use to replace ExprConstant.cpp:HasPointerEvalType,
CodeGenFunction::isObjCPointerType.
llvm-svn: 65569
|
| |
|
|
|
|
|
| |
- Having pointers and references share a base was not a useful
notion.
llvm-svn: 65567
|
| |
|
|
|
|
|
|
| |
pointer type.
- Drops use of PointerLikeType.
- No intended functionality change.
llvm-svn: 65566
|
| |
|
|
|
|
| |
- No functionality change.
llvm-svn: 65560
|
| |
|
|
|
|
| |
the symbol for the root meta-data.
llvm-svn: 65548
|
| |
|
|
| |
llvm-svn: 65533
|
| |
|
|
|
|
| |
- <rdar://problem/6622451> Bad x86_64 code gen for message call taking one argument.
llvm-svn: 65510
|
| |
|
|
| |
llvm-svn: 65487
|
| |
|
|
|
|
|
| |
code) when calling noreturn functions; general expression emission
isn't ready to do the right thing in all cases.
llvm-svn: 65473
|
| |
|
|
|
|
| |
- PR3662.
llvm-svn: 65472
|
| |
|
|
|
|
| |
- No functionality change.
llvm-svn: 65470
|
| |
|
|
|
|
|
|
| |
global variable) out of GenerateStaticBlockVarDecl.
- No intended functionality change.
- Prep for some mild cleanups and PR3662.
llvm-svn: 65466
|
| |
|
|
| |
llvm-svn: 65423
|
| |
|
|
| |
llvm-svn: 65422
|
| |
|
|
|
|
|
| |
make sure objc2's nonfragile abi is enacted for Leopard too.
add -fobjc-gc-only flag to the image_info symbol.
llvm-svn: 65413
|
| |
|
|
|
|
| |
unit.
llvm-svn: 65403
|
| |
|
|
|
|
|
| |
The big difference here is that (like string literal) @encode has
array type, not pointer type.
llvm-svn: 65391
|
| |
|
|
| |
llvm-svn: 65387
|
| |
|
|
|
|
|
| |
variables.
- PR3657.
llvm-svn: 65381
|
| |
|
|
|
|
|
|
|
| |
- Only handles cases with @try with no @catch blocks, and there are a
number of problems with the implementation. Nevertheless, this is
good enough to handled @synchronized correctly, and some other
basic uses.
llvm-svn: 65378
|
| |
|
|
| |
llvm-svn: 65376
|
| |
|
|
| |
llvm-svn: 65372
|
| |
|
|
|
|
|
|
| |
(which will call the copy constructor).
Also, since we're creating a new CodeGenFunction object for each block function, we don't need to clear the BreakContinueStack.
llvm-svn: 65371
|
| |
|
|
| |
llvm-svn: 65370
|
| |
|
|
|
|
|
|
|
| |
on should only be evaluated once, and it is evaluated outside the cleanup scope.
Also, lift SyncEnter and SyncExit up in nervous anticipation of x86-64
zero cost EH.
llvm-svn: 65362
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- When we are declaring a function in local scope, we can merge with
a visible declaration from an outer scope if that declaration
refers to an entity with linkage. This behavior now works in C++
and properly ignores entities without linkage.
- Diagnose the use of "static" on a function declaration in local
scope.
- Diagnose the declaration of a static function after a non-static
declaration of the same function.
- Propagate the storage specifier to a function declaration from a
prior declaration (PR3425)
- Don't name-mangle "main"
llvm-svn: 65360
|
| |
|
|
|
|
|
| |
of a pointer to object; This patch does this odd behavior according to
gcc.
llvm-svn: 65334
|
| |
|
|
|
|
| |
- No functionality change.
llvm-svn: 65325
|
| |
|
|
|
|
| |
statement. Fixes PR3649.
llvm-svn: 65291
|
| |
|
|
|
|
|
| |
true a local pointer to objective-c object in generating
write barriers.
llvm-svn: 65290
|
| |
|
|
| |
llvm-svn: 65286
|
| |
|
|
| |
llvm-svn: 65285
|
| |
|
|
|
|
|
| |
memory using Indirect; this was a holdover from when CGCall wasn't as
robust.
llvm-svn: 65278
|
| |
|
|
| |
llvm-svn: 65267
|
| |
|
|
|
|
|
|
|
| |
as byval. Otherwise LLVM will have its own opinion about where to put
things.
We now pass all gcc dg.compat tests on x86_64.
llvm-svn: 65266
|
| |
|
|
|
|
| |
about these much but <2 x i16> shows up in the gcc test suite.
llvm-svn: 65264
|
| |
|
|
|
|
|
| |
Also, make sure to pass <1 x i64> as i64 (not <1 x i64>, which doesn't
quite work yet in the backend).
llvm-svn: 65262
|
| |
|
|
|
|
|
| |
CodeGen. I'm not sure whether this actually makes any visible
difference, but it's better to be consistent anyway.
llvm-svn: 65259
|
| |
|
|
| |
llvm-svn: 65251
|
| |
|
|
|
|
| |
This is necessary 'plumbing' to fix <rdar://problem/6497631> Message lookup is sometimes different than gcc's.
llvm-svn: 65248
|
| |
|
|
| |
llvm-svn: 65243
|
| |
|
|
|
|
| |
stuff is mostly done. Move BlockHasCopyDispose up.
llvm-svn: 65242
|
| |
|
|
|
|
| |
type.
llvm-svn: 65205
|
| |
|
|
|
|
| |
- PR3629.
llvm-svn: 65203
|
| |
|
|
|
|
|
| |
system header.
- Prevents a codegen crash when anything used anything in tgmath! :)
llvm-svn: 65200
|