| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
| |
Mechanical change converting some of the simpler for loops into range-based for
loops. NFC.
llvm-svn: 210738
|
| |
|
|
|
|
| |
(It's also allowed with /EP, but we haven't implemented that option yet.)
llvm-svn: 210695
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This mirrors the GCC option for the ARM backend. This option enables the
backend option "-enable-arm-long-calls". The default behaviour is that this is
disabled due to the slight overhead of the generated calls.
If the target of jumps are greater than 64M range of offset-based jumps, then
the target address must be loaded into a register to make an indirect jump. The
backend support for this has been present, but was not previously controllable
by the proper flag.
llvm-svn: 210398
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add driver and frontend support for the GCC -Wframe-larger-than=bytes warning.
This is the first GCC-compatible backend diagnostic built around LLVM's
reporting feature.
This commit adds infrastructure to perform reverse lookup from mangled names
emitted after LLVM IR generation. We use that to resolve precise locations and
originating AST functions, lambdas or block declarations to produce seamless
codegen-guided diagnostics.
An associated change, StringMap now maintains unique mangled name strings
instead of allocating copies. This is a net memory saving in C++ and a small
hit for C where we no longer reuse IdentifierInfo storage, pending further
optimisation.
llvm-svn: 210293
|
| |
|
|
|
|
| |
-pthread is no-op on Android. Suppress the unused argument warning.
llvm-svn: 210253
|
| |
|
|
|
|
|
|
|
| |
library. That results in the linker resolving all references to weak symbols in
the DSO to the definition from within that DSO. Ironically, this rarely causes
observable problems, except that it causes ubsan's own dynamic type check to
spuriously fail (because we fail to properly merge type_info object names).
llvm-svn: 210220
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
These two flags are in the same family as -Rpass, but are used in
different situations.
-Rpass-missed is used by optimizers to inform the user when they tried
to apply an optimization but couldn't (or wouldn't).
-Rpass-analysis is used by optimizers to report analysis results back
to the user (e.g., why the transformation could not be applied).
Depends on D3682.
Reviewers: rsmith
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D3683
llvm-svn: 209839
|
| |
|
|
| |
llvm-svn: 209836
|
| |
|
|
|
|
|
| |
There is no libpthread.so, and pthread interface is implemented in libc.so.
This mirrors gcc behavior.
llvm-svn: 209731
|
| |
|
|
|
|
| |
This keeps Clang consistent with backend naming conventions.
llvm-svn: 209579
|
| |
|
|
|
|
|
|
|
|
|
| |
A few (mostly CodeGen) parts of Clang were tightly coupled to the
AArch64 backend. Now that it's gone, they will not even compile.
I've also deduplicated RUN lines in many of the AArch64 tests. This
might improve "make check-all" time noticably: some of those NEON
tests were monsters.
llvm-svn: 209578
|
| |
|
|
|
|
|
|
|
| |
Before -fstack-protector would always force a level of 1, even if the default
was 2.
Patch by Brad Smith.
llvm-svn: 209479
|
| |
|
|
|
|
|
|
|
|
| |
Call it "libclang_rt.builtins-<arch>.a" to be consistent
with sanitizers/profile libraries naming. Modify Makefile
and CMake build systems and Clang driver accordingly.
Fixes PR19822.
llvm-svn: 209474
|
| |
|
|
|
|
|
|
| |
When "-arch armv7m" is specified, we want "aapcs", for example.
rdar://problem/16581138
llvm-svn: 209434
|
| |
|
|
| |
llvm-svn: 209124
|
| |
|
|
|
|
|
| |
Windows on ARM expects ARMv8 (restricted IT) conditional instructions only.
Force enable the restricted IT mode via the backend option when targeting WoA.
llvm-svn: 209086
|
| |
|
|
| |
llvm-svn: 209069
|
| |
|
|
|
|
|
|
| |
If `-shared` is specified, pull in a PIC-version of the profile runtime,
which was added to compiler-rt in r208947. I'm hoping this will get the
bots on my side.
llvm-svn: 208948
|
| |
|
|
|
|
|
| |
None of our tests use /fallback, so this lets us gradually add RTTI
support without breaking projects using /fallback.
llvm-svn: 208787
|
| |
|
|
|
|
|
| |
`clang -S -o - file.c -masm=att` will write assembly to stdout in at&t syntax
(the default), `-masm=intel` will instead output intel style asm.
llvm-svn: 208683
|
| |
|
|
| |
llvm-svn: 208625
|
| |
|
|
|
|
|
|
|
|
|
| |
asan_cxx containts replacements for new/delete operators, and should
only be linked in C++ mode. We plan to start building this part
with exception support to make new more standard-compliant.
See https://code.google.com/p/address-sanitizer/issues/detail?id=295
for more details.
llvm-svn: 208610
|
| |
|
|
| |
llvm-svn: 208485
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: The initial support for NaN2008 was added to the back-end in r206396.
Reviewers: atanasyan
Reviewed By: atanasyan
Differential Revision: http://reviews.llvm.org/D3448
llvm-svn: 208220
|
| |
|
|
|
|
|
| |
Don't bother with keeping the old support for x86_64 in 6.99.23+, just
use a single range. Update test cases for the always-on --eh-frame-hdr.
llvm-svn: 208170
|
| |
|
|
|
|
|
| |
This patch is to get "-mno-unaligned-access" and "-munaligned-access"
work in front-end for ARM64 target.
llvm-svn: 208075
|
| |
|
|
| |
llvm-svn: 207956
|
| |
|
|
|
|
| |
PR19568
llvm-svn: 207858
|
| |
|
|
| |
llvm-svn: 207841
|
| |
|
|
| |
llvm-svn: 207833
|
| |
|
|
| |
llvm-svn: 207642
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
After this patch clang will ignore -fdwarf2-cfi-asm and -ffno-dwarf2-cfi-asm and
always print assembly that uses cfi directives.
In llvm, MC itself supports cfi since the end of 2010 (support started
in r119972, is reported in the 2.9 release notes).
In binutils the support has been around for much longer. It looks like
support started to be added in May 2003. It is available in 2.15
(31-Aug-2011, 2.14 is from 12-Jun-2003).
llvm-svn: 207602
|
| |
|
|
| |
llvm-svn: 207567
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D2668
llvm-svn: 207521
|
| |
|
|
|
|
|
|
| |
This fixes problem with LTO on Android.
Differential Revision: http://reviews.llvm.org/D2668
llvm-svn: 207520
|
| |
|
|
|
|
|
|
| |
behavior of the loop vectorizer, which is enabled at -O2, -O3, -O4, -Ofast
and -Os.
PR19568
llvm-svn: 207433
|
| |
|
|
|
|
| |
We would previously hit an assert if using /fallback with an .ll file.
llvm-svn: 207234
|
| |
|
|
| |
llvm-svn: 207233
|
| |
|
|
|
|
| |
missing.
llvm-svn: 206462
|
| |
|
|
|
|
| |
compatibility.
llvm-svn: 206461
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This patch adds a new flag -Rpass=. The flag indicates the name
of the optimization pass that should emit remarks stating when it
made a transformation to the code.
This implements the design I proposed in:
https://docs.google.com/document/d/1FYUatSjZZO-zmFBxjOiuOzAy9mhHA8hqdvklZv68WuQ/edit?usp=sharing
Other changes:
- Add DiagnosticIDs::isRemark(). Use it in printDiagnosticOptions to
print "-R" instead of "-W" in the diagnostic message.
- In BackendConsumer::OptimizationRemarkHandler, get a SourceLocation
object out of the file name, line and column number. Use that location
in the call to Diags.Report().
- When -Rpass is used without debug info a note is emitted alerting
the user that they need to use -gline-tables-only -gcolumn-info to
get this information.
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D3226
llvm-svn: 206401
|
| |
|
|
| |
llvm-svn: 206395
|
| |
|
|
|
|
| |
<rdar://problem/16573920>
llvm-svn: 206227
|
| |
|
|
|
| |
Review: http://reviews.llvm.org/D3335
llvm-svn: 206027
|
| |
|
|
|
|
|
| |
MSVC doesn't have an option to enable TBAA, so make -fstrict-aliasing
and -fno-strict-aliasing available in clang-cl.
llvm-svn: 205924
|
| |
|
|
| |
llvm-svn: 205717
|
| |
|
|
|
|
| |
Note that /Gy no longer implies -fdata-sections.
llvm-svn: 205716
|
| |
|
|
|
|
|
|
|
| |
This introduces the definitions needed for the Windows on ARM target. Add
target definitions for both the MSVC environment and the MSVC + Itanium C++ ABI
environment. The Visual Studio definitions correspond to the definitions
provided by Visual Studio 2012.
llvm-svn: 205650
|
| |
|
|
| |
llvm-svn: 205536
|
| |
|
|
|
|
| |
Based on http://llvm-reviews.chandlerc.com/D3043 by Yuri Gribov!
llvm-svn: 205310
|