| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 120902
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
used in a constructor initializer list:
struct X {
X() : au_i1(123) {}
union {
int au_i1;
float au_f1;
};
};
clang will now deal with au_i1 explicitly as an IndirectFieldDecl.
llvm-svn: 120900
|
|
|
|
| |
llvm-svn: 120899
|
|
|
|
|
|
| |
Abramo noticed this.
llvm-svn: 120898
|
|
|
|
| |
llvm-svn: 120897
|
|
|
|
|
|
|
| |
be required, and then fix up some missing loads on overloaded-operator
paths which that exposed.
llvm-svn: 120896
|
|
|
|
|
|
| |
the type of the expression *after* array/function decay.
llvm-svn: 120895
|
|
|
|
| |
llvm-svn: 120894
|
|
|
|
|
|
| |
block line.
llvm-svn: 120893
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
not actually frequently used, because ImpCastExprToType only creates a node
if the types differ. So explicitly create an ICE in the lvalue-to-rvalue
conversion code in DefaultFunctionArrayLvalueConversion() as well as several
other new places, and consistently deal with the consequences throughout the
compiler.
In addition, introduce a new cast kind for loading an ObjCProperty l-value,
and make sure we emit those nodes whenever an ObjCProperty l-value appears
that's not on the LHS of an assignment operator.
This breaks a couple of rewriter tests, which I've x-failed until future
development occurs on the rewriter.
Ted Kremenek kindly contributed the analyzer workarounds in this patch.
llvm-svn: 120890
|
|
|
|
|
|
|
|
|
|
| |
Also, move the l-value emission code into CGObjC.cpp and teach it, for
completeness, to store away self for a super send.
Also, inline the super cases for property gets and sets and make them
use the correct result type for implicit getter/setter calls.
llvm-svn: 120887
|
|
|
|
|
|
| |
the l-value.
llvm-svn: 120884
|
|
|
|
| |
llvm-svn: 120882
|
|
|
|
| |
llvm-svn: 120881
|
|
|
|
| |
llvm-svn: 120880
|
|
|
|
| |
llvm-svn: 120879
|
|
|
|
| |
llvm-svn: 120878
|
|
|
|
| |
llvm-svn: 120877
|
|
|
|
| |
llvm-svn: 120876
|
|
|
|
| |
llvm-svn: 120875
|
|
|
|
|
|
|
|
|
|
|
| |
This patch refactors the CompilerInvocation code to introduce a
CompilerInvocation::setLangDefaults function, which can set up a
LangOptions with the defaults for a given language and language
standard. This function is useful for non-command line based Clang
clients which need to set up a CompilerInvocation manually for a
specific language.
llvm-svn: 120874
|
|
|
|
|
|
| |
functionality change.
llvm-svn: 120873
|
|
|
|
| |
llvm-svn: 120872
|
|
|
|
|
|
|
| |
no property accessor class method to be found, instead of
crashing in IRGen. // rdar://8703553
llvm-svn: 120855
|
|
|
|
| |
llvm-svn: 120839
|
|
|
|
| |
llvm-svn: 120828
|
|
|
|
|
|
|
| |
For some reason these were not included in the list of Neon intrinsics in
ARM's documentation, so they didn't make it into Clang either.
llvm-svn: 120815
|
|
|
|
| |
llvm-svn: 120812
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
declarations.
The motivation for this patch is that linkage/visibility computations
are linear in the number of redeclarations of an entity, and we've run
into a case where a single translation unit has > 6500 redeclarations
of the same (unused!) external variable. Since each redeclaration
involves a linkage check, the resulting quadratic behavior makes Clang
slow to a crawl. With this change, a simple test with 512
redeclarations of a variable syntax-checks ~20x faster than
before.
That said, I hate this change, and will probably end up reverting it
in a few hours. Reasons to hate it:
- It makes NamedDecl larger, since we don't have enough free bits in
Decl to squeeze in the extra information about caching.
- There are way too many places where we need to invalidate this
cache, because the visibility of a declaration can change due to
redeclarations (!). Despite self-hosting and passing the testsuite,
I have no confidence that I've found all of places where this cache
needs to be invalidated.
llvm-svn: 120808
|
|
|
|
|
|
|
|
|
| |
This is currently the same as a lowercase version of the record name, but
it will allow us to have multiple records with the same name, which is
needed for intrinsics (e.g., vmul and vmull) that are implemented
differently depending on the type.
llvm-svn: 120807
|
|
|
|
|
|
| |
to distinguish vsri/vsli.
llvm-svn: 120806
|
|
|
|
| |
llvm-svn: 120802
|
|
|
|
| |
llvm-svn: 120799
|
|
|
|
| |
llvm-svn: 120796
|
|
|
|
|
|
|
|
|
| |
a node in the trimmed graph might not always
correctly map back to the original error node.
This could cause a crash in some cases when
flagging memory leaks.
llvm-svn: 120795
|
|
|
|
|
|
| |
when generating DOT output for an ExplodedGraph.
llvm-svn: 120794
|
|
|
|
| |
llvm-svn: 120783
|
|
|
|
|
|
|
|
| |
specified output file since
it just uses diagnostic notes.
llvm-svn: 120773
|
|
|
|
|
|
| |
deleted, not trap" warning. Fixed PR8729. Patch by Elias Pipping!
llvm-svn: 120771
|
|
|
|
|
|
|
|
| |
diagnostic notes
the sequence of events; useful for testing.
llvm-svn: 120770
|
|
|
|
| |
llvm-svn: 120769
|
|
|
|
| |
llvm-svn: 120768
|
|
|
|
| |
llvm-svn: 120765
|
|
|
|
|
|
| |
Patch by Paul Curtis!
llvm-svn: 120759
|
|
|
|
| |
llvm-svn: 120746
|
|
|
|
|
|
|
|
|
| |
about deprecated Objective-C pointer conversions. Plus, make sure to
actually set an appropriate AssignmentAction when performing an
implicit conversion from an InitializationSequence. Fixes regressions
in the GCC DejaGNU testsuite.
llvm-svn: 120744
|
|
|
|
| |
llvm-svn: 120737
|
|
|
|
| |
llvm-svn: 120736
|
|
|
|
| |
llvm-svn: 120735
|
|
|
|
| |
llvm-svn: 120729
|