| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Use llvm.eh.begincatch for Microsoft-style catches.
This moves lots of CGException code into ItaniumCXXABI. Sorry for the
blame pain.
llvm-svn: 231105
|
|
|
|
| |
llvm-svn: 231098
|
|
|
|
|
|
| |
problems
llvm-svn: 231096
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: srhines
Reviewed By: srhines
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D7929
llvm-svn: 231092
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
There is no -no-pie flag that can override this, so making it default
to being on for Android means it is no longer possible to create
non-PIE executables on Android. While current versions of Android
support (and the most recent requires) PIE, ICS and earlier versions
of Android cannot run PIE executables, so this needs to be optional.
Reviewers: srhines
Reviewed By: srhines
Subscribers: thakis, volkalexey, cfe-commits
Differential Revision: http://reviews.llvm.org/D8015
llvm-svn: 231091
|
|
|
|
| |
llvm-svn: 231087
|
|
|
|
|
|
|
|
|
|
| |
The plugin still works fine in versions starting from 2010,
but this was needed to make the project _build_ in VS 2013, which
is the blessed version for building LLVM projects these days.
http://reviews.llvm.org/D8021
llvm-svn: 231084
|
|
|
|
|
|
|
| |
Update testcases for LLVM change in r231082 to use the new debug info
hierarchy.
llvm-svn: 231083
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Originally we were using the same GCC builtins to lower this AVX2 vector
intrinsic. Instead we will now lower it directly to a vector shuffle.
This will not only allow LLVM to generate better code, but it will also allow us
to remove the GCC intrinsics.
Reviewed by Andrea
This is related to rdar://problem/18742778.
llvm-svn: 231081
|
|
|
|
|
|
|
| |
recognition of mernizer's -objcmt-migrate-property-dot-syntax
option with a new test in test/Driver. rdar://19994452
llvm-svn: 231080
|
|
|
|
|
|
|
|
|
|
|
| |
`isTrackedVar` has been updated to also track records.
`DeclRefExpr`s appearing on the left side of a comma operator are
ignored, while those appearing on the right side are classified as
`Use`.
Patch by Enrico Pertoso.
llvm-svn: 231068
|
|
|
|
| |
llvm-svn: 231067
|
|
|
|
|
|
|
|
|
| |
With incomplete code, we aren't guaranteed to generated changes for
every token. In that case, we need to assume that even the very first
change can continue a preprocessor directive and initialize values
accordingly.
llvm-svn: 231066
|
|
|
|
|
|
|
|
|
| |
As Chandler responded on the initial commit, just directly setting the
triple through -Xclang option to the driver creates havoc on other
platforms. The driver test should specifically go into test/Driver and
test the cc1 commandline itself.
llvm-svn: 231063
|
|
|
|
|
|
|
|
| |
ASTUnit::LoadFromASTFile.
rdar://19997358
llvm-svn: 231060
|
|
|
|
|
|
|
|
| |
The exception object should be unqualified. Using a qualified exception
object results in the wrong copy constructor getting called when the
catch handler executes.
llvm-svn: 231054
|
|
|
|
| |
llvm-svn: 231053
|
|
|
|
|
|
|
| |
We would create the exception object with the wrong qualifiers, ensuring
that the wrong copy constructor would get called.
llvm-svn: 231049
|
|
|
|
|
|
|
|
| |
There is no need to list sanitizers in both "UndefinedTrap" and
"Undefined" groups - it turns out using one group in a defintion
of another group "just works".
llvm-svn: 231040
|
|
|
|
| |
llvm-svn: 231039
|
|
|
|
|
|
| |
migrating to NS_ENUM typedef. rdar://19994496
llvm-svn: 231036
|
|
|
|
|
|
| |
It only relies on 'cd', which the internal shell has now.
llvm-svn: 231031
|
|
|
|
| |
llvm-svn: 231030
|
|
|
|
|
|
|
|
| |
Modules and Tooling tests in particular tend to want to change the cwd,
so we were missing test coverage in this area on Windows. It should now
be easier to write such portable tests.
llvm-svn: 231029
|
|
|
|
| |
llvm-svn: 231026
|
|
|
|
|
|
|
|
|
|
| |
r230921 broke backend-optimization-failure.cpp: after
r230921, LLVM no longer emits an expression to compute 'Length - 1'
and this perturbs LoopSimplify enough to emit the warning on line 10
instead of line 9. This is a review request to fix the test case once
I re-land r230921.
llvm-svn: 231020
|
|
|
|
| |
llvm-svn: 231019
|
|
|
|
|
|
|
|
|
|
|
| |
The test wants to provoke a failure when opening the output file.
Using chmod 0 on the output file does not work reliably on all
filesystems or when running the test as root.
Change the test to use a nonexistant directory instead.
Differential Revision: http://reviews.llvm.org/D7620
llvm-svn: 231009
|
|
|
|
|
|
|
| |
recognition of mernizer's -objcmt-migrate-property-dot-syntax
option. rdar://19994452
llvm-svn: 231008
|
|
|
|
|
|
|
| |
It still tests that objc++-cpp-output turns on -fcxx-exceptions and
-fobjc-exceptions by being a c++ and objc(++) file.
llvm-svn: 230992
|
|
|
|
|
|
|
|
| |
This adds the -fapplication-extension option, along with the
ios_app_extension and macosx_app_extension availability attributes.
Patch by Ted Kremenek
llvm-svn: 230989
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
We now have targets that don't enable rtti/exceptions by default, and the
ASTMatchers tests are assuming that these features are on (e.g: They use
dynamic_cast or try).
Reviewers: klimek, thakis, djasper
Subscribers: klimek, cfe-commits
Differential Revision: http://reviews.llvm.org/D7892
llvm-svn: 230984
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
isSingleElementStruct was a bit too tight in its definition of struct
so we got a mismatch between classify() and the actual code generation.
To make matters worse the code in GetByteVectorType still defaulted to
<2 x double> if it encountered a type it didn't know, making this a
silent miscompilation (PR22753).
Completely remove the "preferred type" stuff from GetByteVectorType and
make it fail an assertion if someone tries to use it with a type not
suitable for a vector register.
llvm-svn: 230971
|
|
|
|
| |
llvm-svn: 230949
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
aaaaaaaaaaaaaaaaaaaaaa(
[](aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa &aaa)
-> aaaaaaaaaaaaaaaaaaaaa { return aaaaaaaaaaaaaaaaa; });
After:
aaaaaaaaaaaaaaaaaaaaaa(
[](aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa &aaa) -> aaaaaaaaaaaaaaaaaaaaa {
return aaaaaaaaaaaaaaaaa;
});
llvm-svn: 230942
|
|
|
|
|
|
| |
change.
llvm-svn: 230928
|
|
|
|
|
|
| |
possible. Fixes PR22736.
llvm-svn: 230914
|
|
|
|
| |
llvm-svn: 230910
|
|
|
|
|
|
|
|
| |
Seems like the most consistent thing to do and in multi-var DeclStmts,
it is especially important to point out that the */& bind to the
identifier.
llvm-svn: 230903
|
|
|
|
|
|
|
| |
This is a real bug if the code path is ever used with different pointer
sizes in the same process.
llvm-svn: 230893
|
|
|
|
| |
llvm-svn: 230843
|
|
|
|
| |
llvm-svn: 230841
|
|
|
|
|
|
| |
very first step in updating it.
llvm-svn: 230840
|
|
|
|
|
|
|
| |
found indirectly, explain how we got there, and distinguish between 'file not
found' and 'file found but invalid'.
llvm-svn: 230839
|
|
|
|
|
|
| |
imported modules.
llvm-svn: 230834
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
dynamic classes in the translation unit and check whether each one's key
function is defined when we got to the end of the TU (and when we got to the
end of each module). This is really terrible for modules performance, since it
causes unnecessary deserialization of every dynamic class in every compilation.
We now use a much simpler (and, in a modules build, vastly more efficient)
system: when we see an out-of-line definition of a virtual function, we check
whether that function was in fact its class's key function. (If so, we need to
emit the vtable.)
llvm-svn: 230830
|
|
|
|
|
|
|
|
|
|
|
|
| |
When generating debug info for a static inline member which is initialized for
the DLLExport storage class, hoist the definition into a non-composite type
context. Otherwise, we would trigger an assertion when generating the DIE for
the associated global value as the debug context has a type association. This
addresses PR22669.
Thanks to David Blakie for help in coming up with a solution to this!
llvm-svn: 230816
|
|
|
|
|
|
|
|
| |
undeserialized specializations (because we merged an imported declaration of
the same template since we last added one), don't bother reading in the
specializations themselves just so we can write out their IDs again.
llvm-svn: 230805
|
|
|
|
| |
llvm-svn: 230795
|
|
|
|
|
|
| |
to date' after it gets updated.
llvm-svn: 230789
|