| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
| |
of CodeGenTypes, to per-record CGRecordLayout structures.
- I did a cursory check that this was perf neutral, FWIW.
llvm-svn: 99978
|
| |
|
|
|
|
|
|
| |
field and bit-field info as structs.
- Anders, please check.
llvm-svn: 99977
|
| |
|
|
| |
llvm-svn: 99975
|
| |
|
|
| |
llvm-svn: 99974
|
| |
|
|
| |
llvm-svn: 99973
|
| |
|
|
| |
llvm-svn: 99972
|
| |
|
|
|
|
|
|
| |
the existing (and already well-tested) linkage computation for types,
with minor tweaks for dynamic classes and (pointers to) incomplete
types. Fixes PR6597.
llvm-svn: 99968
|
| |
|
|
| |
llvm-svn: 99967
|
| |
|
|
| |
llvm-svn: 99964
|
| |
|
|
|
|
|
| |
null checks, and make sure we elide null checks when accessing base class
members.
llvm-svn: 99963
|
| |
|
|
|
|
| |
instruction.
llvm-svn: 99962
|
| |
|
|
| |
llvm-svn: 99960
|
| |
|
|
| |
llvm-svn: 99959
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
the storage of !dbg metadata kinds in the instruction themselves.
The on-the-side hash table works great for metadata that not-all
instructions get, or for metadata that only exists when optimizing.
But when compile-time is everything, it isn't great.
I'm not super thrilled with the fact that this plops a TrackingVH in
Instruction, because it grows it by 3 words. I'm investigating
alternatives, but this should be a step in the right direction in any
case.
llvm-svn: 99957
|
| |
|
|
| |
llvm-svn: 99954
|
| |
|
|
|
|
|
| |
Since it is just a pxor in disguise, we should probably expand it to a full
polymorphic triple.
llvm-svn: 99953
|
| |
|
|
|
|
|
|
| |
SSEDomainFix will collapse to the domain with the lower number when it has a
choice. The SSEPackedSingle domain often has smaller instructions, so prefer
that.
llvm-svn: 99952
|
| |
|
|
|
|
| |
on retain properties. (radar 7809468).
llvm-svn: 99951
|
| |
|
|
| |
llvm-svn: 99949
|
| |
|
|
| |
llvm-svn: 99948
|
| |
|
|
| |
llvm-svn: 99947
|
| |
|
|
| |
llvm-svn: 99946
|
| |
|
|
| |
llvm-svn: 99945
|
| |
|
|
| |
llvm-svn: 99944
|
| |
|
|
| |
llvm-svn: 99942
|
| |
|
|
|
|
| |
Fixes PR3782.
llvm-svn: 99940
|
| |
|
|
|
|
|
|
|
|
|
|
| |
may be tokens left in the token stream
that will interfere (they will be parsed as if they are after the class' '}') and a crash will occur because
the CachedTokens that holds them will be deleted while the lexer is still using them.
Make sure that the tokens of default args are removed from the token stream.
Fixes PR6647.
llvm-svn: 99939
|
| |
|
|
| |
llvm-svn: 99938
|
| |
|
|
|
|
|
|
| |
name in the outermost block of a if/else that declares the same name
is ill-formed. Turns out that Clang and MSVC were right about PR6739;
GCC is too lax.
llvm-svn: 99937
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
the underlying/instantiated decl) through a lot of API, including "intermediate"
MemberExprs required for (e.g.) template instantiation. This is necessary
because of the access semantics of member accesses to using declarations:
only the base class *containing the using decl* need be accessible from the
naming class.
This allows us to complete an access-controlled selfhost, if there are no
recent regressions.
llvm-svn: 99936
|
| |
|
|
|
|
| |
Not running 'make check-all' before committing is a bad idea.
llvm-svn: 99933
|
| |
|
|
|
|
|
|
| |
double 0.000000e+000
instead of
double 0.000000e+00
llvm-svn: 99932
|
| |
|
|
| |
llvm-svn: 99931
|
| |
|
|
|
|
| |
memmove, and memset
llvm-svn: 99930
|
| |
|
|
|
|
|
|
|
| |
memmove, and memset,
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)
A update of langref will occur in a subsequent checkin.
llvm-svn: 99928
|
| |
|
|
| |
llvm-svn: 99927
|
| |
|
|
|
|
|
|
|
|
| |
involving substitution of deduced template arguments into a class
template partial specialization or function template, or when
substituting explicitly-specific template arguments into a function
template. We now print the actual deduced argument bindings so the
user can see what got deduced.
llvm-svn: 99923
|
| |
|
|
|
|
|
|
| |
'const'.
Fixes a false positive reported in PR 6288.
llvm-svn: 99922
|
| |
|
|
| |
llvm-svn: 99921
|
| |
|
|
|
|
|
|
| |
This introduces FunctionType::ExtInfo to hold the calling convention and the
noreturn attribute. The next patch will extend it to include the regparm
attribute and fix the bug.
llvm-svn: 99920
|
| |
|
|
|
|
|
| |
only a single type of object to be allocated. Use it to make VNInfo destruction
typesafe.
llvm-svn: 99919
|
| |
|
|
| |
llvm-svn: 99918
|
| |
|
|
| |
llvm-svn: 99917
|
| |
|
|
| |
llvm-svn: 99916
|
| |
|
|
| |
llvm-svn: 99915
|
| |
|
|
|
|
|
|
| |
the InvokeInst
spotted by baldrick -- thanks\!
llvm-svn: 99914
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
dyn_cast) invocations for C++ and Objective-C types, declarations,
expressions, and statements. The statistics will be printed when
-print-stats is provided to Clang -cc1, with results such as:
277073 clang - Number of checks for C++ declaration nodes
13311 clang - Number of checks for C++ expression nodes
18 clang - Number of checks for C++ statement nodes
174182 clang - Number of checks for C++ type nodes
92300 clang - Number of checks for Objective-C declaration nodes
9800 clang - Number of checks for Objective-C expression nodes
7 clang - Number of checks for Objective-C statement nodes
65733 clang - Number of checks for Objective-C type nodes
The statistics are only gathered when NDEBUG is not defined, since
they introduce potentially-expensive operations into very low-level
routines (isa).
llvm-svn: 99912
|
| |
|
|
|
|
|
| |
Rewrite the pmulld patterns, and make sure that they fold in loads of
arguments into the instruction.
llvm-svn: 99910
|
| |
|
|
|
|
| |
6302.
llvm-svn: 99904
|
| |
|
|
|
|
| |
objective-c methods. (radar 7418262).
llvm-svn: 99903
|