| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
llvm-svn: 194994
|
|
|
|
|
|
|
|
| |
been failing since r194968.
MSVC targeted drivers (*-win32) are incapable of invoking external assembler.
llvm-svn: 194992
|
|
|
|
|
|
| |
The functions are like: vst1_s8_x2 ...
llvm-svn: 194991
|
|
|
|
| |
llvm-svn: 194989
|
|
|
|
| |
llvm-svn: 194984
|
|
|
|
| |
llvm-svn: 194983
|
|
|
|
|
|
|
|
|
|
| |
The function isn't strictly at fault but there are callers using it
incorrectly, causing crashes with in-place edits of 64KB or larger files on
Windows.
See PR17960 for details.
llvm-svn: 194972
|
|
|
|
|
|
| |
[-Wdocumentation]
llvm-svn: 194971
|
|
|
|
|
|
|
|
| |
lib/Tooling/CompilationDatabase.cpp:275:34: warning: result of comparison against a string literal is unspecified (use strncmp instead) [-Wstring-compare]
This assert() should probably be fixed and added back at some point.
llvm-svn: 194969
|
|
|
|
|
|
|
|
| |
FixedCompilationDatabase (FCD) requires that the arguments it consumes after
'--' must not include positional parameters or the argv[0] of the tool. This
patch relaxes those restrictions.
llvm-svn: 194968
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
(which was removed in r96823) to clang_formatDiagnostics.
Patch by David Wiberg
llvm-svn: 194956
|
|
|
|
| |
llvm-svn: 194954
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New rules of invalidation/escape of the source buffer of memcpy: the source buffer contents is invalidated and escape while the source buffer region itself is neither invalidated, nor escape.
In the current modeling of memcpy the information about allocation state of regions, accessible through the source buffer, is not copied to the destination buffer and we can not track the allocation state of those regions anymore. So we invalidate/escape the source buffer indirect regions in anticipation of their being invalidated for real later. This eliminates false-positive leaks reported by the unix.Malloc and alpha.cplusplus.NewDeleteLeaks checkers for the cases like
char *f() {
void *x = malloc(47);
char *a;
memcpy(&a, &x, sizeof a);
return a;
}
llvm-svn: 194953
|
|
|
|
|
|
| |
minor bug with poly64 name mangling.
llvm-svn: 194952
|
|
|
|
| |
llvm-svn: 194951
|
|
|
|
| |
llvm-svn: 194946
|
|
|
|
|
|
|
| |
CF objects with objc_bridge'ing annotaiton.
// rdar://15454846
llvm-svn: 194938
|
|
|
|
|
|
|
| |
of ObjectiveC objects to CF types when CF type
has the objc_bridge attribute.
llvm-svn: 194930
|
|
|
|
| |
llvm-svn: 194920
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
clang -cc1 skips the driver so it never made sense to include these with the
Driver tests.
Basic type tests and flag tests generally both go in Frontend.
Now that the final -cc1 tests have been moved out of test/Driver, add a
local substitution to enforce and detect future mistakes.
These miscategorized tests were probably the source of confusion in r194817.
llvm-svn: 194919
|
|
|
|
|
|
|
| |
it's also __attribute__((used)), since that undoes the problematic part of
'inline'.
llvm-svn: 194916
|
|
|
|
|
|
| |
// rdar://15454846.
llvm-svn: 194915
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
projects are relying on such (questionable) practices, so we should give them
a way to opt out of this diagnostic.
llvm-svn: 194905
|
|
|
|
|
|
|
|
| |
Earlier versions discarded the state too soon, and did not track state changes,
e.g. when passing a temporary to a move constructor. Patch by
chris.wailes@gmail.com; review and minor fixes by delesley.
llvm-svn: 194900
|
|
|
|
| |
llvm-svn: 194897
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implemented aarch64 Neon scalar vfma_lane intrinsics
Implemented aarch64 Neon scalar vfms_lane intrinsics
Implemented legacy vmul_n_f64, vmul_lane_f64, vmul_laneq_f64
intrinsics (v1f64 parameter type) using Neon scalar instructions.
Implemented legacy vfma_lane_f64, vfms_lane_f64,
vfma_laneq_f64, vfms_laneq_f64 intrinsics (v1f64 parameter type)
using Neon scalar instructions.
llvm-svn: 194889
|
|
|
|
| |
llvm-svn: 194884
|
|
|
|
|
|
|
| |
Improve on wording on illegal objc_bridge argumment.
// rdar://15454846
llvm-svn: 194881
|
|
|
|
|
|
|
|
| |
This builds extra versions of compiler-rt targeting various unhosted targets.
Only built on Darwin since even though they're not iOS or OSX, they share some
quirks.
llvm-svn: 194878
|
|
|
|
| |
llvm-svn: 194872
|
|
|
|
|
|
|
| |
the GNU documentation: the attribute only appertains to the label if it is
followed by a semicolon. Based on a patch by Aaron Ballman!
llvm-svn: 194869
|
|
|
|
|
|
| |
// rdar://15454846
llvm-svn: 194864
|
|
|
|
| |
llvm-svn: 194863
|
|
|
|
|
|
|
|
| |
the point of CF object type-cast and issue diagnostic
if it is not a valid ObjectiveC class. // rdar//15454846.
This is wip.
llvm-svn: 194861
|
|
|
|
| |
llvm-svn: 194854
|
|
|
|
| |
llvm-svn: 194850
|
|
|
|
| |
llvm-svn: 194849
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
Even if we don't support a flag, we should be able to parse it
to provide a better error message than the current default
"error: no such file or directory: '/foo'" (which we should probably
also tweak, btw).
This also tries to clean up the test file a bit.
llvm-svn: 194837
|
|
|
|
| |
llvm-svn: 194835
|
|
|
|
|
|
|
|
|
|
|
|
| |
Up until now we were expecting that when libc++ is installed alongside
clang the headers would be in lib/, which was true if the configure
build was used and false if the cmake build was.
We've now corrected the configure build to install in include/, and
with this change we'll be able to find the correct headers with both
build systems.
llvm-svn: 194834
|
|
|
|
|
|
|
|
|
| |
When using the configure build system, the libc++ headers were being
installed in lib/, whereas cmake installs them in include/. Since
include/ makes more sense for headers, we'll make both systems install
headers there.
llvm-svn: 194833
|
|
|
|
|
|
|
|
| |
ivar when property belongs to a super class and
currnt class happens to have a method with same name as
property. // rdar//15473432
llvm-svn: 194830
|
|
|
|
| |
llvm-svn: 194829
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of storing the vtable offset directly in the function pointer and
doing a branch to check for virtualness at each call site, the MS ABI
generates a thunk for calling the function at a specific vtable offset,
and puts that in the function pointer.
This patch adds support for emitting such thunks. However, it doesn't support
pointers to virtual member functions that are variadic, have an incomplete
aggregate return type or parameter, or are overriding a function in a virtual
base class.
Differential Revision: http://llvm-reviews.chandlerc.com/D2104
llvm-svn: 194827
|
|
|
|
|
|
| |
instead of -lstdc++.
llvm-svn: 194822
|
|
|
|
|
|
|
|
| |
iOS simulator.
Add a test.
llvm-svn: 194820
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|