| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
| |
-disable-free).
snaroff% time ../../Release-Asserts/bin/clang INPUTS/Cocoa_h.m
0.179u 0.051s 0:00.23 95.6% 0+0k 0+0io 0pf+0w
snaroff% time ../../Release-Asserts/bin/clang INPUTS/Cocoa_h.m -disable-free
0.169u 0.052s 0:00.22 95.4% 0+0k 0+0io 0pf+0w
llvm-svn: 63153
|
| |
|
|
|
|
| |
Also changed FunctionTypeProto to be allocated with 8-byte alignment (noticed by Doug). I couldn't think of any reason to allocate on 16-byte boundaries. If anyone remembers why we were doing this, let me know!
llvm-svn: 63137
|
| |
|
|
|
|
|
|
| |
calls to the recently added placement new (which uses ASTContext's allocator for memory). Also added ASTContext::Deallocate().
This will simplify runtime replacement of ASTContext's allocator. Keeping the allocator private (and removing getAllocator() entirely) is also goodness.
llvm-svn: 63135
|
| |
|
|
| |
llvm-svn: 63116
|
| |
|
|
|
|
|
|
|
| |
.def file for each library. This means that adding a diagnostic
to sema doesn't require all the other libraries to be rebuilt.
Patch by Anders Johnsen!
llvm-svn: 63111
|
| |
|
|
|
|
|
| |
of a type. The implementation is currently something of a hack, but is
sufficient for now and allows clients to be built on it.
llvm-svn: 63108
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
as reported to the user and as manipulated by #line. This is what __FILE__,
__INCLUDE_LEVEL__, diagnostics and other things should follow (but not
dependency generation!).
This patch also includes several cleanups along the way:
- SourceLocation now has a dump method, and several other places
that did similar things now use it.
- I cleaned up some code in AnalysisConsumer, but it should probably be
simplified further now that NamedDecl is better.
- TextDiagnosticPrinter is now simplified and cleaned up a bit.
This patch is a prerequisite for #line, but does not actually provide
any #line functionality.
llvm-svn: 63098
|
| |
|
|
| |
llvm-svn: 62959
|
| |
|
|
|
|
| |
everything that we aren't intending to implement in Expr::Evaluate.
llvm-svn: 62953
|
| |
|
|
|
|
| |
cases it couldn't deal with before.
llvm-svn: 62952
|
| |
|
|
|
|
|
|
| |
accurately states what the function is trying to do and how it is
different from Expr::isEvaluatable. Also get rid of a parameter that is both
unused and inaccurate.
llvm-svn: 62951
|
| |
|
|
|
|
|
| |
__builtin___CFStringMakeConstantString. (We get into trouble in
GenerateStaticBlockVarDecl if the constant folder isn't accurate.)
llvm-svn: 62949
|
| |
|
|
|
|
| |
constant.
llvm-svn: 62948
|
| |
|
|
|
|
| |
pointed out by Doug.
llvm-svn: 62944
|
| |
|
|
|
|
| |
sizeof expressions.
llvm-svn: 62941
|
| |
|
|
|
|
|
| |
not the type" semantics. This can definitely be improved, but is better than
what we had.
llvm-svn: 62939
|
| |
|
|
|
|
| |
Add serialization support for ReferenceType.
llvm-svn: 62934
|
| |
|
|
| |
llvm-svn: 62932
|
| |
|
|
|
|
|
| |
mismatched semantics).
- Enforce this in APValue.
llvm-svn: 62924
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
designated initializers. This implementation should cover all of the
constraints in C99 6.7.8, including long, complex designations and
computing the size of incomplete array types initialized with a
designated initializer. Please see the new test-case and holler if you
find cases where this doesn't work.
There are still some wrinkles with GNU's anonymous structs and
anonymous unions (it isn't clear how these should work; we'll just
follow GCC's lead) and with designated initializers for the members of a
union. I'll tackle those very soon.
CodeGen is still nonexistent, and there's some leftover code in the
parser's representation of designators that I'll also need to clean up.
llvm-svn: 62737
|
| |
|
|
|
|
| |
plist file per translation unit that contains all of the diagnostics.
llvm-svn: 62647
|
| |
|
|
| |
llvm-svn: 62611
|
| |
|
|
|
|
| |
case.
llvm-svn: 62607
|
| |
|
|
|
|
| |
Add debug hook to DeclContext.
llvm-svn: 62605
|
| |
|
|
| |
llvm-svn: 62601
|
| |
|
|
|
|
| |
document both it and DeclContext::addDecl properly
llvm-svn: 62581
|
| |
|
|
|
|
|
|
| |
builtins.
Also, a minor tweak to va_copy for consistency.
llvm-svn: 62574
|
| |
|
|
|
|
| |
owned by the ASTContext's TranslationUnitDecl. There are definitely some leaking Decls now that I'll tackle tomorrow
llvm-svn: 62568
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
that every declaration lives inside a DeclContext.
Moved several things that don't have names but were ScopedDecls (and,
therefore, NamedDecls) to inherit from Decl rather than NamedDecl,
including ObjCImplementationDecl and LinkageSpecDecl. Now, we don't
store empty DeclarationNames for these things, nor do we try to insert
them into DeclContext's lookup structure.
The serialization tests are temporarily disabled. We'll re-enable them
once we've sorted out the remaining ownership/serialiazation issues
between DeclContexts and TranslationUnion, DeclGroups, etc.
llvm-svn: 62562
|
| |
|
|
|
|
| |
when say that a store is dead even though the computed value is used in the enclosing expression.
llvm-svn: 62552
|
| |
|
|
|
|
| |
The QualType smart pointer assumes we have 3 flag bits available.
llvm-svn: 62540
|
| |
|
|
| |
llvm-svn: 62530
|
| |
|
|
|
|
| |
with @synthesize being illegal.
llvm-svn: 62515
|
| |
|
|
| |
llvm-svn: 62469
|
| |
|
|
| |
llvm-svn: 62458
|
| |
|
|
| |
llvm-svn: 62455
|
| |
|
|
| |
llvm-svn: 62443
|
| |
|
|
| |
llvm-svn: 62440
|
| |
|
|
| |
llvm-svn: 62438
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
even when we are still defining the TagDecl. This is required so that
qualified name lookup of a class name within its definition works (see
the new bits in test/SemaCXX/qualified-id-lookup.cpp).
As part of this, move the nested redefinition checking code into
ActOnTag. This gives us diagnostics earlier (when we try to perform
the nested redefinition, rather than when we try to complete the 2nd
definition) and removes some code duplication.
llvm-svn: 62386
|
| |
|
|
|
|
| |
Issue diagnostics instead if types do not match.
llvm-svn: 62349
|
| |
|
|
|
|
| |
escapes.
llvm-svn: 62337
|
| |
|
|
|
|
|
|
| |
analysis and AST-building for the cases where we have N != 1
arguments. For N == 1 arguments, we need to finish the C++
implementation of explicit type casts (C++ [expr.cast]).
llvm-svn: 62329
|
| |
|
|
| |
llvm-svn: 62315
|
| |
|
|
|
|
|
| |
the "physical" location of tokens, refer to the "spelling" location.
This is more concrete and useful, tokens aren't really physical objects!
llvm-svn: 62309
|
| |
|
|
| |
llvm-svn: 62306
|
| |
|
|
| |
llvm-svn: 62292
|
| |
|
|
|
|
| |
and uninitialized use options.
llvm-svn: 62270
|
| |
|
|
| |
llvm-svn: 62205
|
| |
|
|
|
|
| |
to allocate the array of ParmVarDecl*'s.
llvm-svn: 62203
|