- Mar 22, 2009
-
-
Chris Lattner authored
the end of the module. llvm-svn: 67482
-
Chris Lattner authored
llvm-svn: 67481
-
Chris Lattner authored
some tests into the alias.c file. llvm-svn: 67479
-
Chris Lattner authored
No intended functionality change. llvm-svn: 67478
-
Eli Friedman authored
llvm-svn: 67477
-
Chris Lattner authored
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
-
Chris Lattner authored
build. This shaves another 3% off. llvm-svn: 67460
-
Chris Lattner authored
in release-assert builds. For automatic variables, explicitly set a name with setName that does not make a temporary std::string. This speeds up -emit-llvm-only -disable-free on PR3810 by 4.6% llvm-svn: 67459
-
Chris Lattner authored
ctor function. This avoids creating a temporary std::string for the name, speeding up the testcase in PR3810 by 3.8% llvm-svn: 67457
-
- Mar 21, 2009
-
-
Mike Stump authored
copy_helpers and dispose_helpers as necessary for them. llvm-svn: 67453
-
Fariborz Jahanian authored
category or protocol. llvm-svn: 67450
-
Chris Lattner authored
very simple places, reimplement the deferred decl emission logic to not be O(N^2), fixing PR3810. llvm-svn: 67447
-
Chris Lattner authored
function definition. llvm-svn: 67446
-
Chris Lattner authored
code path. llvm-svn: 67445
-
Chris Lattner authored
GetAddrOfFunction. This is simpler and more efficient. llvm-svn: 67444
-
Chris Lattner authored
CreateFunctionPrototypeIR, though my next patch will eliminate it entirely. llvm-svn: 67443
-
Chris Lattner authored
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
-
Chris Lattner authored
llvm-svn: 67441
-
Chris Lattner authored
llvm-svn: 67440
-
Chris Lattner authored
llvm-svn: 67439
-
Chris Lattner authored
more optimistic that it will work (optimizing for the common case). llvm-svn: 67438
-
Chris Lattner authored
llvm-svn: 67437
-
Chris Lattner authored
llvm-svn: 67436
-
Chris Lattner authored
by ~2%. llvm-svn: 67434
-
Chris Lattner authored
speeding up the testcase in PR3810 by 60%. llvm-svn: 67431
-
Chris Lattner authored
This speeds up a testcase in 3810 by ~16%. llvm-svn: 67429
-
- Mar 20, 2009
-
-
Mike Stump authored
llvm-svn: 67406
-
Fariborz Jahanian authored
llvm-svn: 67402
-
Fariborz Jahanian authored
when there is actually a property declaration used in the dot-syntax. llvm-svn: 67391
-
Devang Patel authored
llvm-svn: 67389
-
Fariborz Jahanian authored
in a property dot-syntax notation. llvm-svn: 67382
-
- Mar 19, 2009
-
-
Daniel Dunbar authored
- PR3818. llvm-svn: 67297
-
Devang Patel authored
llvm-svn: 67267
-
Douglas Gregor authored
qualified name, e.g., foo::x so that we retain the nested-name-specifier as written in the source code and can reproduce that qualified name when printing the types back (e.g., in diagnostics). This is PR3493, which won't be complete until finished the other tasks mentioned near the end of this commit. The parser's representation of nested-name-specifiers, CXXScopeSpec, is now a bit fatter, because it needs to contain the scopes that precede each '::' and keep track of whether the global scoping operator '::' was at the beginning. For example, we need to keep track of the leading '::', 'foo', and 'bar' in ::foo::bar::x The Action's CXXScopeTy * is no longer a DeclContext *. It's now the opaque version of the new NestedNameSpecifier, which contains a single component of a nested-name-specifier (either a DeclContext * or a Type *, bitmangled). The new sugar type QualifiedNameType composes a sequence of NestedNameSpecifiers with a representation of the type we're actually referring to. At present, we only build QualifiedNameType nodes within Sema::getTypeName. This will be extended to other type-constructing actions (e.g., ActOnClassTemplateId). Also on the way: QualifiedDeclRefExprs will also store a sequence of NestedNameSpecifiers, so that we can print out the property nested-name-specifier. I expect to also use this for handling dependent names like Fibonacci<I - 1>::value. llvm-svn: 67265
-
- Mar 18, 2009
-
-
Fariborz Jahanian authored
whose sema decl is at the translation unit. llvm-svn: 67249
-
Daniel Dunbar authored
readnone/readonly attributes. llvm-svn: 67224
-
Chris Lattner authored
llvm-svn: 67219
-
Chris Lattner authored
There are some more complex cases (_Complex and structs) that I'm still working on. llvm-svn: 67218
-
Mike Stump authored
llvm-svn: 67207
-
Chris Lattner authored
llvm-svn: 67165
-