| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
I was constructing an object without filling in all the fields.
llvm-svn: 247851
|
| |
|
|
|
|
|
|
|
| |
This avoids building a fake LLVM IR global variable just to ferry an i32
down into LLVM codegen. It also puts a nail in the coffin of using MS
ABI C++ EH with landingpads, since now we'll assert in the lpad code
when flags are present.
llvm-svn: 247843
|
| |
|
|
| |
llvm-svn: 247832
|
| |
|
|
|
|
|
| |
- scan-build help: display 'Could not query Clang for the list of available checkers.' + the reason why it happened so if clang was not found.
- display requested/forced help in case of --use-analyzer=Xcode.
llvm-svn: 247828
|
| |
|
|
|
|
| |
This patch enables MSan for aarch64/linux
llvm-svn: 247808
|
| |
|
|
| |
llvm-svn: 247778
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
can use it as well.
Move the logic looking for additional checkers in the SA_ADDITIONAL_CHECKERS
environmental variable from SATestBuild's main() to runScanBuild(). This allows
SATestAdd.py to use the variable as well. Without it, we won't include
additional checkers when building reference results for the build bot.
Differential Revision: http://reviews.llvm.org/D12891
llvm-svn: 247767
|
| |
|
|
|
|
| |
overridden leaf module macros.
llvm-svn: 247765
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ptr in dtor.
Summary:
After destruction, invocation of virtual functions prevented
by poisoning vtable pointer.
Reviewers: eugenis, kcc
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D12712
Fixed testing callback emission order to account for vptr.
Poison vtable in either complete or base dtor, depending on
if virtual bases exist. If virtual bases exist, poison in
complete dtor. Otherwise, poison in base.
Remove commented-out block.
llvm-svn: 247762
|
| |
|
|
|
|
| |
Seems it would be redundant.
llvm-svn: 247761
|
| |
|
|
| |
llvm-svn: 247752
|
| |
|
|
|
|
| |
Before: assert a&& b;
Now: assert a && b;
llvm-svn: 247750
|
| |
|
|
| |
llvm-svn: 247743
|
| |
|
|
| |
llvm-svn: 247742
|
| |
|
|
|
|
|
|
|
| |
The root cause here is that ObjCSelectorExpr is an rvalue, yet it can have its
address taken. That's kind of awkward, but fixing this is awkward in other
ways, see https://llvm.org/bugs/show_bug.cgi?id=24774#c16 . For now, just
fix the crash.
llvm-svn: 247740
|
| |
|
|
|
|
| |
involves generic types.
llvm-svn: 247739
|
| |
|
|
| |
llvm-svn: 247733
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
These CMake cache scripts are my first pass at replicating Apple's packaging logic from autoconf. They can be used on any Darwin machine to approximate an Apple Clang build.
The included README file includes documentation and a sample CMake invocation.
Reviewers: chandlerc, echristo
Subscribers: echristo, cfe-commits
Differential Revision: http://reviews.llvm.org/D12817
llvm-svn: 247726
|
| |
|
|
|
|
|
|
|
|
| |
Adding !invariant.group to vptr load/stores for devirtualization purposes.
For more goto:
http://lists.llvm.org/pipermail/cfe-dev/2015-July/044227.html
http://reviews.llvm.org/D12026
llvm-svn: 247725
|
| |
|
|
|
|
|
|
|
|
|
|
| |
It is dangerous to do LTO on code with strict-vtable-pointers, because
one module has invariant.group.barriers, and the other one not.
In the future I want to just strip all invariant.group metadata from
vptrs loads/stores and get rid of invariant.group.barrier calls.
http://reviews.llvm.org/D12580
llvm-svn: 247724
|
| |
|
|
|
|
|
|
|
| |
For more goto:
http://lists.llvm.org/pipermail/cfe-dev/2015-July/044227.html
http://reviews.llvm.org/D12312
llvm-svn: 247723
|
| |
|
|
|
|
|
| |
This is to follow up on David's comment in
http://reviews.llvm.org/D12422#235509
llvm-svn: 247718
|
| |
|
|
| |
llvm-svn: 247717
|
| |
|
|
|
|
| |
http://reviews.llvm.org/D11619
llvm-svn: 247715
|
| |
|
|
|
|
| |
lookup for the UsingShadowDecls themselves.
llvm-svn: 247714
|
| |
|
|
| |
llvm-svn: 247712
|
| |
|
|
|
|
| |
Patch adds emission of additional note for 'if' clauses with name modifiers in case if 'if' clause without name modified was specified or 'if' clause with the same name modifier was specified.
llvm-svn: 247706
|
| |
|
|
|
|
|
|
| |
related. NFC.
Eric has replied and has demanded the patch be reverted.
llvm-svn: 247702
|
| |
|
|
| |
llvm-svn: 247696
|
| |
|
|
| |
llvm-svn: 247693
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and related. NFC.
Summary:
This is the first patch in the series to migrate Triple's (which are ambiguous)
to TargetTuple's (which aren't).
For the moment, TargetTuple simply passes all requests to the Triple object it
holds. Once it has replaced Triple, it will start to implement the interface in
a more suitable way.
This change makes some changes to the public C++ API. In particular,
InitMCSubtargetInfo(), createMCRelocationInfo(), and createMCSymbolizer()
now take TargetTuples instead of Triples. The other public C++ API's have
been left as-is for the moment to reduce patch size.
This commit also contains a trivial patch to clang to account for the C++ API
change. Thanks go to Pavel Labath for fixing LLDB for me.
Reviewers: rengolin
Subscribers: jyknight, dschuff, arsenm, rampitec, danalbert, srhines, javed.absar, dsanders, echristo, emaste, jholewinski, tberghammer, ted, jfb, llvm-commits, rengolin
Differential Revision: http://reviews.llvm.org/D10969
llvm-svn: 247692
|
| |
|
|
|
|
| |
LLDB needs to be updated in the same commit.
llvm-svn: 247686
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This is the first patch in the series to migrate Triple's (which are ambiguous)
to TargetTuple's (which aren't).
For the moment, TargetTuple simply passes all requests to the Triple object it
holds. Once it has replaced Triple, it will start to implement the interface in
a more suitable way.
This change makes some changes to the public C++ API. In particular,
InitMCSubtargetInfo(), createMCRelocationInfo(), and createMCSymbolizer()
now take TargetTuples instead of Triples. The other public C++ API's have
been left as-is for the moment to reduce patch size.
This commit also contains a trivial patch to clang to account for the C++ API
change.
Reviewers: rengolin
Subscribers: jyknight, dschuff, arsenm, rampitec, danalbert, srhines, javed.absar, dsanders, echristo, emaste, jholewinski, tberghammer, ted, jfb, llvm-commits, rengolin
Differential Revision: http://reviews.llvm.org/D10969
llvm-svn: 247683
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
if 'cancel' is found.
Patch improves codegen for OpenMP constructs. If the OpenMP region does not have internal 'cancel' construct, a call to 'void __kmpc_barrier()' runtime function is generated for all implicit/explicit barriers. If the region has inner 'cancel' directive, then
```
if (__kmpc_cancel_barrier())
exit from outer construct;
```
code is generated.
Also, the code for 'canellation point' directive is not generated if parent directive does not have 'cancel' directive.
llvm-svn: 247681
|
| |
|
|
|
|
|
|
| |
http://reviews.llvm.org/D12855#246073.
NFC.
llvm-svn: 247678
|
| |
|
|
|
|
|
|
| |
Patch by Pedro Ferreira.
Reviewers: pekka.jaaskelainen
Differential Revision: http://reviews.llvm.org/D12855
llvm-svn: 247676
|
| |
|
|
| |
llvm-svn: 247668
|
| |
|
|
|
|
|
|
| |
"opt -instnamer".
It reverts r231717.
llvm-svn: 247667
|
| |
|
|
|
|
|
|
| |
r247657 fixed warnings about unused variables when compiling without asserts
but changed behavior. This commit restores the old behavior but still suppresses
the warnings.
llvm-svn: 247660
|
| |
|
|
|
|
| |
This restores a diagnostic lost in r247651.
llvm-svn: 247659
|
| |
|
|
| |
llvm-svn: 247657
|
| |
|
|
| |
llvm-svn: 247655
|
| |
|
|
|
|
|
| |
for an existing entity, and as such a using-declaration doesn't need to
conflict with a hidden entity (nor vice versa).
llvm-svn: 247654
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In Objective-C, method calls with nil receivers are essentially no-ops. They
do not fault (although the returned value may be garbage depending on the
declared return type and architecture). Programmers are aware of this
behavior and will complain about a false alarm when the analyzer
diagnoses API violations for method calls when the receiver is known to
be nil.
Rather than require each individual checker to be aware of this behavior
and suppress a warning when the receiver is nil, this commit
changes ExprEngineObjC so that VisitObjCMessage skips calling checker
pre/post handlers when the receiver is definitely nil. Instead, it adds a
new event, ObjCMessageNil, that is only called in that case.
The CallAndMessageChecker explicitly cares about this case, so I've changed it
to add a callback for ObjCMessageNil and moved the logic in PreObjCMessage
that handles nil receivers to the new callback.
rdar://problem/18092611
Differential Revision: http://reviews.llvm.org/D12123
llvm-svn: 247653
|
| |
|
|
|
|
|
|
| |
Overwide bool bitfields have eight bits of storage size, make sure we
take the padding into account when determining whether or not they are
problematic.
llvm-svn: 247651
|
| |
|
|
| |
llvm-svn: 247650
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Generating call assume(icmp %vtable, %global_vtable) after constructor
call for devirtualization purposes.
For more info go to:
http://lists.llvm.org/pipermail/cfe-dev/2015-July/044227.html
Edit:
Fixed version because of PR24479 and other bug caused in chrome.
After this patch got reverted because of ScalarEvolution bug (D12719)
Merged after John McCall big patch (Added Address).
http://reviews.llvm.org/D11859
http://reviews.llvm.org/D12865
llvm-svn: 247646
|
| |
|
|
|
|
| |
Previously, in certain cases lax vector conversions could occur between scalar floating-point values and ExtVector types; these conversions would be simple bitcasts. We need to allow them with other vector types to support some common headers, but we don't need them for ExtVector. Preventing them here makes them behave like other operations involving scalars and ExtVectors.
llvm-svn: 247643
|
| |
|
|
|
|
|
| |
explicit triple.
FIXME: Better way to cancel -mms-bitfields?
llvm-svn: 247640
|
| |
|
|
|
|
|
|
|
|
|
| |
There is no __cxa_finalize symbol available on recent Solaris OS
versions, so we need this flag to make non trivial C++ programs run.
Also stop looking for cxa_finalize.o, since it won't be there.
Patch by Xan López!
llvm-svn: 247634
|