| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
|
| |
getARMCPU and getLLVMArchSuffixForARM existed as very similar functions
in both ToolChain.cpp and Tools.cpp. Create a single implementation of
each in Tools.cpp, eliminate the duplicate and share via Tools.h.
Creates an 'arm' namespace in Tools.h to be used by any ARM-targetting tools.
llvm-svn: 197153
|
| |
|
|
|
|
|
|
| |
Passing -mthumb with no explicit CPU on the command line
resulted in target CPU changing from the architecture
default to arm7tdmi. Now it does not.
llvm-svn: 197151
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This refactors some of the Darwin toolchain classification to give a more solid
distinction between the three primary Darwin platforms (OS X, IOS and IOS
simulator) so that a 4th choice can be added temporarily: embedded MachO
targets.
Longer term, this support will be factored out into a separate class and no
longer classified as "darwin-eabi", but the refactoring should still be useful.
llvm-svn: 197148
|
| |
|
|
|
|
| |
invocation.
llvm-svn: 196993
|
| |
|
|
| |
llvm-svn: 196982
|
| |
|
|
| |
llvm-svn: 196981
|
| |
|
|
|
|
| |
'-objcmt-whitelist-dir-path' and add an alias for now.
llvm-svn: 196944
|
| |
|
|
|
|
| |
architecture and PIC flag.
llvm-svn: 196720
|
| |
|
|
|
|
| |
and MIPS64. From Brad Smith.
llvm-svn: 196630
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- krait processor currently modeled with the same features as A9.
- Krait processor additionally has VFP4 (fused multiply add/sub)
and hardware division features enabled.
- krait has currently the same Schedule model as A9
- krait cpu flag is not recognized by the GNU assembler yet,
it is replaced with march=armv7-a to avoid a lower march
from being used.
llvm-svn: 196618
|
| |
|
|
| |
llvm-svn: 196538
|
| |
|
|
| |
llvm-svn: 196532
|
| |
|
|
|
|
|
|
| |
I happened to notice this while trying to write a test for an iOS simulator
target. I suspect we just missed this when we added separate "macosx" and "ios"
triples instead of the generic "darwin" OS.
llvm-svn: 196527
|
| |
|
|
| |
llvm-svn: 196510
|
| |
|
|
|
|
|
|
|
| |
AddGoldPlugin() is the same on gnutools and freebsd so avoid the
copy-and-paste duplicate code.
No change in functionality.
llvm-svn: 196096
|
| |
|
|
| |
llvm-svn: 195756
|
| |
|
|
|
|
| |
ArgList::AddLastArg() call.
llvm-svn: 195755
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Clang still has support for running gcc for performing various stages
of a build. Right now it looks like this is used for
* Supporting Fortran in the clang driver
* Running an assembler or linker in systems we don't yet know how to
run them directly.
It looks like the gcc::Precompile is a vestige from the days when we
supported using clang for C and running gcc for c++. This patch removes it
(yes, we have no tests for it).
llvm-svn: 195586
|
| |
|
|
|
|
|
|
|
| |
Clang knows how to use the gnu assembler directly from doing so on linux and
hurd. The existing support worked out of the box on cygwin and mingw and I was
able to bootstrap clang with it in both systems (with pending patches for the
new mingw abi, but that is independent of the assembler).
llvm-svn: 195554
|
| |
|
|
| |
llvm-svn: 195551
|
| |
|
|
| |
llvm-svn: 195359
|
| |
|
|
|
|
|
|
|
| |
We are still using Dwarf Version 2 for Darwin systems, make it consistent
with -gline-tables-only.
This should fix an internal buildbot.
llvm-svn: 195267
|
| |
|
|
|
|
| |
to the crt*.o files, libraries and headers for the MIPS FSFS toolchain.
llvm-svn: 195249
|
| |
|
|
|
|
|
|
|
|
| |
should be isolated in the backend (r195123). From the frontend point
of view in case of "-mhard-float -mips16" combination of flags the float
ABI mode should remain unchanged.
The patch reviewed by Reed Kotler.
llvm-svn: 195124
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the -Q flag to the as(1) assembler driver.
We will soon be switching the darwin as(1) assembler driver to call clang(1)
and use the intergated assembler by default. To do this and still support
clang(1)'s -no-integrated-as flag, when clang(1) runs the as(1) assembler
driver and -no-integrated-as is used it needs to pass the -Q flag to as(1)
so it uses its GNU based assembler, and not turn around and call clag(1)'s
integrated assembler.
rdar://15495921
llvm-svn: 195054
|
| |
|
|
| |
llvm-svn: 194984
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds -freroll-loops (and -fno-reroll-loops in the usual way) to enable
loop rerolling as part of the optimization pass manager. This transformation
can enable vectorization, reduce code size (or both).
Briefly, loop rerolling can transform a loop like this:
for (int i = 0; i < 3200; i += 5) {
a[i] += alpha * b[i];
a[i + 1] += alpha * b[i + 1];
a[i + 2] += alpha * b[i + 2];
a[i + 3] += alpha * b[i + 3];
a[i + 4] += alpha * b[i + 4];
}
into this:
for (int i = 0; i < 3200; ++i) {
a[i] += alpha * b[i];
}
Loop rerolling is currently disabled by default at all optimization levels.
llvm-svn: 194967
|
| |
|
|
|
|
|
|
| |
Teach the '-arch' command line option to enable the compiler-friendly
features of core-avx2 CPUs on Darwin. Pass the information along in the
target triple like Darwin+ARM does.
llvm-svn: 194907
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Trying to fix test failures since earlier today.
One of the tests added in this commit is outputting test/Driver/clang_f_opts.s
which the builders that build in-tree (eg. clang-native-arm-cortex-a9) are
trying to run as a test case, causing failures.
clang_f_opts.c:
If -### doesn't emit the warning then this test probably shouldn't be in
here in the first place. Frontend maybe?
invalid-o-level.c:
Running %clang_cc1 in the Driver tests doesn't make sense because -cc1
bypasses the driver. (I'm not reverting the commit that introduced this but
please fix instead of keeping it this way.)
Reverting to fix the build failures and also so that the tests can be thought
out more thoroughly.
This reverts commit r194817.
llvm-svn: 194845
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Currently with clang:
$ clang -O20 foo.c
error: invalid value '20' in '-O20'
With the patch:
$ clang -O20 foo.c
warning: optimization level '-O20' is unsupported; using '-O3' instead.
1 warning generated.
This matches the gcc behavior (with a warning added)
Pass all tests:
Testing: 0 .. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
Testing Time: 94.14s
Expected Passes : 6721
Expected Failures : 20
Unsupported Tests : 17
(which was not the case of http://llvm-reviews.chandlerc.com/D2125)
Reviewers: chandlerc, rafael, rengolin, hfinkel
Reviewed By: rengolin
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D2152
llvm-svn: 194817
|
| |
|
|
| |
llvm-svn: 194744
|
| |
|
|
|
|
|
| |
This patch adds -I to the arguments that are passed to the
integrated assembler from -Wa, and -Xassembler args.
llvm-svn: 194743
|
| |
|
|
|
|
|
| |
This options accepts a path to a directory, collects the filenames of the files
it contains, and the migrator will only modify files with the same filename.
llvm-svn: 194710
|
| |
|
|
|
|
| |
instantiate ObjCMigrateASTConsumer with the specific options that were enabled.
llvm-svn: 194628
|
| |
|
|
|
|
|
| |
To support the generation of IT block in Thumbv7 way or
Thumbv8 way
llvm-svn: 194593
|
| |
|
|
|
|
|
|
| |
This adds a new option -fprofile-sample-use=filename to Clang. It
tells the driver to schedule the SampleProfileLoader pass and passes
on the name of the profile file to use.
llvm-svn: 194567
|
| |
|
|
|
|
|
| |
is further restricted in legacy runtime to deployment target
of 10.7 and later. // rdar://15363492
llvm-svn: 194507
|
| |
|
|
|
|
| |
r194450 with a modified test. // rdar://15363492
llvm-svn: 194489
|
| |
|
|
| |
llvm-svn: 194460
|
| |
|
|
|
|
| |
Trying to get the bots green.
llvm-svn: 194450
|
| |
|
|
|
|
| |
ObjectiveC legacy runtime too. // rdar://15363492
llvm-svn: 194434
|
| |
|
|
|
|
|
|
| |
This reverts commit r194403.
Was breaking too many tests...
llvm-svn: 194420
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Currently with clang:
$ clang -O20 foo.c
error: invalid value '20' in '-O20'
With the patch:
$ clang -O20 foo.c
warning: invalid value '20' in '-O20'. Fall back on value '3'
Reviewers: rengolin, hfinkel
Reviewed By: rengolin
CC: cfe-commits, hfinkel, rengolin
Differential Revision: http://llvm-reviews.chandlerc.com/D2125
llvm-svn: 194403
|
| |
|
|
| |
llvm-svn: 194350
|
| |
|
|
|
|
| |
The test was still failing on OS X and mingw.
llvm-svn: 194334
|
| |
|
|
| |
llvm-svn: 194328
|
| |
|
|
|
|
|
| |
follow when building a class member access expression. Based on a patch by
Rahul Jain!
llvm-svn: 194161
|
| |
|
|
|
|
|
|
|
|
|
| |
hack of passing -fconst-strings to -cc1, but at least the driver uses
the regular warning checking code path.
Since we don't support a warning that is DefaultIgnore in one language
but not in another, this patch creates a dummy C only warning in the same
group as the existing one to get the desired effect.
llvm-svn: 194097
|
| |
|
|
| |
llvm-svn: 193997
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The thread, memory, dataflow and function sanitizers are now diagnosed if
enabled explicitly on an unsupported platform. Unsupported sanitizers which
are enabled implicitly (as part of a larger group) are silently disabled. As a
side effect, this makes SanitizerArgs parsing toolchain-dependent (and thus
essentially reverts r188058), and moves SanitizerArgs ownership to ToolChain.
Differential Revision: http://llvm-reviews.chandlerc.com/D1990
llvm-svn: 193875
|