| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
(C) API, and will likely grow further in this direction in the future.
llvm-svn: 102779
|
| |
|
|
|
|
| |
fatal error has occurred.
llvm-svn: 102778
|
| |
|
|
|
|
|
|
|
| |
parameter with pointer-to-member type, we may have to perform a
qualification conversion, since the pointee type of the parameter
might be more qualified than the pointee type of the argument we form
from the declaration. Fixes PR6986.
llvm-svn: 102777
|
| |
|
|
|
|
|
|
| |
access. Fixes an assertion.
Fixes rdar://problem/7927811. Too lazy to reduce a test case.
llvm-svn: 102776
|
| |
|
|
|
|
|
| |
instruction selection is done; it's confusing to see parts of it printed,
while other parts are omitted, along the way.
llvm-svn: 102771
|
| |
|
|
|
|
|
|
|
|
| |
call that might throw. The landing pad assumes that all registers are in stack
slots.
We used to spill those dirty CSRs after the call, and the stack slots would be
wrong when arriving at the landing pad.
llvm-svn: 102770
|
| |
|
|
|
|
| |
and fix a bug in BitVector's reference proxy class which this exposed.
llvm-svn: 102768
|
| |
|
|
|
|
| |
(and wrong).
llvm-svn: 102763
|
| |
|
|
|
|
| |
constant expression in C.
llvm-svn: 102762
|
| |
|
|
|
|
|
|
| |
argument.
Radar 7927803
llvm-svn: 102760
|
| |
|
|
|
|
|
| |
on the original variables, so it's easier to see what is being done
to which blocks.
llvm-svn: 102759
|
| |
|
|
| |
llvm-svn: 102752
|
| |
|
|
| |
llvm-svn: 102751
|
| |
|
|
| |
llvm-svn: 102748
|
| |
|
|
| |
llvm-svn: 102747
|
| |
|
|
| |
llvm-svn: 102746
|
| |
|
|
| |
llvm-svn: 102743
|
| |
|
|
| |
llvm-svn: 102742
|
| |
|
|
| |
llvm-svn: 102741
|
| |
|
|
| |
llvm-svn: 102740
|
| |
|
|
|
|
|
| |
for unsigned purposes, so >64-bit integer values get a full all-ones
value.
llvm-svn: 102739
|
| |
|
|
| |
llvm-svn: 102734
|
| |
|
|
| |
llvm-svn: 102733
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
of the mapping from local declarations to their instantiated
counterparts during template instantiation. Previously, we tried to do
some unholy merging of local instantiation scopes that involved
storing a single hash table along with an "undo" list on the
side... which was ugly, and never handled function parameters
properly.
Now, we just keep separate hash tables for each local instantiation
scope, and "combining" two scopes means that we'll look in each of the
combined hash tables. The combined scope stack is rarely deep, and
this makes it easy to avoid the "undo" issues we were hitting. Also,
I've simplified the logic for function parameters: if we're declaring
a function and we need the function parameters to live longer, we just
push them back into the local instantiation scope where we need them.
Fixes PR6990.
llvm-svn: 102732
|
| |
|
|
| |
llvm-svn: 102731
|
| |
|
|
| |
llvm-svn: 102730
|
| |
|
|
|
|
| |
Rounding differences causes tests to fail on Linux.
llvm-svn: 102729
|
| |
|
|
| |
llvm-svn: 102728
|
| |
|
|
|
|
|
|
| |
instead of at the top-level.
Also, don't set NO_INSTALL=1 for c-index-test.
llvm-svn: 102724
|
| |
|
|
| |
llvm-svn: 102722
|
| |
|
|
|
|
|
| |
comparisons sign-extended to a different bitwidth than the
comparison operands.
llvm-svn: 102721
|
| |
|
|
| |
llvm-svn: 102720
|
| |
|
|
|
|
| |
folks. LLVM/Clang is miscompiled by the standard GCC at -O3.
llvm-svn: 102719
|
| |
|
|
|
|
| |
least on 64 bit platforms).
llvm-svn: 102712
|
| |
|
|
| |
llvm-svn: 102711
|
| |
|
|
|
|
| |
attributes invalid on type related checking so to add them to declarations only when everything is ok.
llvm-svn: 102710
|
| |
|
|
| |
llvm-svn: 102709
|
| |
|
|
|
|
| |
- We can't use PointerIntPair here since we require the discrimination bit to be in the LSB.
llvm-svn: 102707
|
| |
|
|
|
|
| |
warning generation.
llvm-svn: 102705
|
| |
|
|
|
|
|
|
|
|
|
| |
if *none* of the successors of the call expression is the exit block.
This matters when a call of bool type is the condition of (say) a while
loop in a function with no statements after the loop. This *can* happen
in C, but it's much more common in C++ because of overloaded operators.
Suppresses some substantial number of spurious -Wmissing-noreturn warnings.
llvm-svn: 102696
|
| |
|
|
| |
llvm-svn: 102695
|
| |
|
|
| |
llvm-svn: 102694
|
| |
|
|
|
|
|
|
|
|
|
| |
specializations, which keeps track of the order in which they were
originally declared. We use this number so that we can always walk the
list of partial specializations in a predictable order during matching
or template instantiation. This also fixes a failure in Boost.Proto,
where SourceManager::isBeforeInTranslationUnit was behaving
poorly in inconsistent ways.
llvm-svn: 102693
|
| |
|
|
|
|
|
|
|
| |
a class with virtual bases. Just a patch until Sema starts (correctly) doing
most of this analysis.
Fixes PR 6622.
llvm-svn: 102692
|
| |
|
|
|
|
|
|
|
| |
InjectedClassNameType's Decl to point at the definition. It's a little
messy, but we do the same thing with classes and their record types,
since much of Clang expects that the TagDecl* one gets out of a type
is the definition. Fixes several Boost.Proto failures.
llvm-svn: 102691
|
| |
|
|
| |
llvm-svn: 102690
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
translation unit is parsed. This enables us to inline some calls when still
analyzing one function at a time.
Actions are classified into Function, CXXMethod, ObjCMethod,
ObjCImplementation.
This does not hurt performance much. The analysis time for sqlite3.c:
before:
real 17m52.440s
user 17m49.460s
sys 0m2.010s
after:
real 18m0.500s
user 17m56.900s
sys 0m2.330s
DisplayProgress option is broken now. -inine-call action is removed. It
will be reenabled in another form, perhaps as an indenpendant option.
llvm-svn: 102689
|
| |
|
|
|
|
| |
Also resolve a long-working FIXME in the test case I modified.
llvm-svn: 102688
|
| |
|
|
| |
llvm-svn: 102687
|
| |
|
|
| |
llvm-svn: 102686
|