| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 68300
|
|
|
|
|
|
|
|
|
|
| |
- Finish up support for converting UTF8->UTF16 to support ObjC @"string" constants.
Remove warning from CheckObjCString.
As the FIXME in the test case indicates, I still have a bug to work out (apparently with \u handling).
llvm-svn: 68245
|
|
|
|
|
|
|
|
|
|
| |
#ifdef'd out the 5 conversion routines that we don't currently need.
Still need a bit more work in GetAddrOfConstantCFString(). Added a FIXME to indicate this.
Expect to remove the FIXME today...
llvm-svn: 68208
|
|
|
|
|
|
| |
Patch by Jean-Daniel Dupas. Thanks!
llvm-svn: 68203
|
|
|
|
|
|
|
| |
types get completed when their definition is seen if previously laid out by
the code generator.
llvm-svn: 68177
|
|
|
|
| |
llvm-svn: 68176
|
|
|
|
| |
llvm-svn: 68170
|
|
|
|
|
|
|
|
|
|
|
| |
- Notably, set section on cfstring literal string data (for now, this
is done everywhere because it matches what we were already doing
for the CFString data itself)
- <rdar://problem/6599098> [irgen] linker requires objc string data
to go into cstring
llvm-svn: 68160
|
|
|
|
|
|
|
|
| |
that occurs when
attribute(used) and asm renaming are used together.
llvm-svn: 68155
|
|
|
|
| |
llvm-svn: 68151
|
|
|
|
|
|
| |
remove a redundant error in CodeGen.
llvm-svn: 67868
|
|
|
|
|
|
| |
ir gen. No intended change in functionality.
llvm-svn: 67857
|
|
|
|
|
|
|
| |
CodeGenModule. Once there, add a new NoCommon option to
it and implement -fno-common.
llvm-svn: 67735
|
|
|
|
|
|
|
|
| |
functionality, fixing a crash on the attached testcase. Eliminate the
BuiltinFunctions cache, as it can contain dangling pointers. This fixes
a bunch of valgrind errors on test/CodeGen/builtins.c
llvm-svn: 67484
|
|
|
|
|
|
| |
the end of the module.
llvm-svn: 67482
|
|
|
|
| |
llvm-svn: 67481
|
|
|
|
|
|
| |
some tests into the alias.c file.
llvm-svn: 67479
|
|
|
|
|
|
|
|
| |
variables.
No intended functionality change.
llvm-svn: 67478
|
|
|
|
|
|
|
|
|
| |
to something like:
define void @bar(%struct.foo* noalias sret %agg.result) nounwind {
instead of:
define void @bar(%struct.foo* noalias sret %agg.result, ...) nounwind {
llvm-svn: 67475
|
|
|
|
|
|
|
| |
ctor function. This avoids creating a temporary std::string for the name,
speeding up the testcase in PR3810 by 3.8%
llvm-svn: 67457
|
|
|
|
|
|
| |
category or protocol.
llvm-svn: 67450
|
|
|
|
|
|
|
| |
very simple places, reimplement the deferred decl emission logic to not be O(N^2),
fixing PR3810.
llvm-svn: 67447
|
|
|
|
|
|
| |
function definition.
llvm-svn: 67446
|
|
|
|
|
|
| |
code path.
llvm-svn: 67445
|
|
|
|
|
|
| |
GetAddrOfFunction. This is simpler and more efficient.
llvm-svn: 67444
|
|
|
|
|
|
|
| |
CreateFunctionPrototypeIR, though my next patch will eliminate
it entirely.
llvm-svn: 67443
|
|
|
|
|
|
|
|
| |
1. it wasn't applying to definitions, only declarations, e.g. int x __asm("foo")
2. multiple definitions were conflicting, they weren't getting merged.
3. the code was duplicated in several places.
llvm-svn: 67442
|
|
|
|
| |
llvm-svn: 67441
|
|
|
|
| |
llvm-svn: 67440
|
|
|
|
| |
llvm-svn: 67439
|
|
|
|
|
|
| |
more optimistic that it will work (optimizing for the common case).
llvm-svn: 67438
|
|
|
|
| |
llvm-svn: 67437
|
|
|
|
|
|
| |
type).
llvm-svn: 67436
|
|
|
|
|
|
|
|
| |
speeding up PR3810
by ~2%.
llvm-svn: 67434
|
|
|
|
|
|
| |
speeding up the testcase in PR3810 by 60%.
llvm-svn: 67431
|
|
|
|
|
|
| |
- PR3818.
llvm-svn: 67297
|
|
|
|
|
|
| |
whose sema decl is at the translation unit.
llvm-svn: 67249
|
|
|
|
| |
llvm-svn: 66691
|
|
|
|
| |
llvm-svn: 66652
|
|
|
|
|
|
|
| |
module symbol table. The root problem inspiring this was fixed in
r66316 (and again in r66506).
llvm-svn: 66512
|
|
|
|
|
|
| |
reuse the prior one.
llvm-svn: 66408
|
|
|
|
|
|
|
| |
This is a bit cleaner, and also "fixes" bad code that compares the
addresses of the string constants.
llvm-svn: 66346
|
|
|
|
|
|
|
|
| |
they are all
correct, but an extra set of ObjC eyes would be good.
llvm-svn: 66342
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
CodeGenModule::CreateRuntimeVariable.
- No real functionality change; although we now assert on silly
things like:
--
int objc_exception_throw;
void f0() { @throw(@"A"); }
--
instead of accepting it.
llvm-svn: 66292
|
|
|
|
|
|
| |
- <rdar://problem/6652110> clang should support weak_import
llvm-svn: 66270
|
|
|
|
|
|
|
|
| |
- For one thing, this adds unneeded overhead; for another, this
routine can be used to emit unnamed decls which we shouldn't try to
mangle.
llvm-svn: 66212
|
|
|
|
|
|
|
| |
return/argument types. (The generated IR isn't ideal, but we can't
really do better in general.)
llvm-svn: 66132
|
|
|
|
| |
llvm-svn: 66046
|
|
|
|
|
|
|
|
|
| |
BlockModule. No functionality change. This should help people that
don't want to know anything about blocks not be confused by the
overloaded use of the term block or nor want to see all the blocks
goop.
llvm-svn: 66042
|
|
|
|
|
|
| |
- PR3698.
llvm-svn: 66038
|