| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 198345
|
| |
|
|
|
|
|
|
|
| |
Plugins need to go in build/Debug/lib as well (rather than build/lib/Debug).
Also, fix the SHLIBDIR path for Xcode, which by default includes Xcode build
settings rather than a simple %(build_mode)s parameter.
llvm-svn: 198344
|
| |
|
|
|
|
|
|
| |
__unsafe_unretained.
Fixes <rdar://problem/15713945>.
llvm-svn: 198343
|
| |
|
|
|
|
|
| |
for pointing this out.
llvm-svn: 198341
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
TableGen had been generating a different name for an anonymous multiclass's
NAME for every def in the multiclass. This had an unfortunate side effect: it
was impossible to reference one def within the multiclass from another (in the
parameter list, for example). By making sure we only generate an anonymous name
once per multiclass (which, as it turns out, requires only changing the name
parameter to reference type), we can now concatenate NAME within the multiclass
with a def name in order to generate a reference to that def.
This does not matter so much, in and of itself, but is necessary for a
follow-up commit that will fix variable capturing in implicit anonymous
multiclass defs (and that is important).
llvm-svn: 198340
|
| |
|
|
| |
llvm-svn: 198339
|
| |
|
|
|
|
|
|
|
| |
When widening an IV to remove s/zext, we generally try to eliminate
the original narrow IV. However, LCSSA phi nodes outside the loop were
still using the original IV. Clean this up more aggressively to avoid
redundancy in generated code.
llvm-svn: 198338
|
| |
|
|
|
|
|
| |
Add basic emulation mapping for NetBSD/amd64, so that clang -m32 works
as expected.
llvm-svn: 198337
|
| |
|
|
| |
llvm-svn: 198336
|
| |
|
|
|
|
| |
LIBRARY_OUTPUT_DIRECTORY_${suffix}.
llvm-svn: 198335
|
| |
|
|
|
|
| |
Based on a patch by Maciej Piechotka.
llvm-svn: 198334
|
| |
|
|
|
|
|
| |
This reverts r197927 until the discussion on llvm-commits comes to a
conclusion.
llvm-svn: 198333
|
| |
|
|
| |
llvm-svn: 198332
|
| |
|
|
|
|
|
| |
Make sure clang-tblgen, clang++, and clang-cl get created in the Clang
binary build directory.
llvm-svn: 198331
|
| |
|
|
| |
llvm-svn: 198330
|
| |
|
|
|
|
|
|
|
|
| |
In a standalone build, Clang binaries should end up in Clang's build folder,
not LLVM's.
Xcode still has a few issues finding auxiliary tools and libraries in the
build folders. I'll fix those next.
llvm-svn: 198328
|
| |
|
|
|
|
| |
from the disassembler table builder.
llvm-svn: 198327
|
| |
|
|
|
|
| |
attribute diagnostics.
llvm-svn: 198326
|
| |
|
|
| |
llvm-svn: 198325
|
| |
|
|
|
|
| |
table builder doesn't need to string match them to exclude them.
llvm-svn: 198323
|
| |
|
|
|
|
|
| |
property accessor's missing backing ivar. This eliminates
the bogus warning being issued. // rdar://15728901
llvm-svn: 198322
|
| |
|
|
| |
llvm-svn: 198321
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The separate Xcode project generated for Clang is putting the clang
executables into the same location where the LLVM executables are
going. This is wrong, and breaks the Clang build because we try to
create clang++ and clang-cl symlinks in the wrong place and to the
wrong place.
As a stop-gap to get these builds working again, teach the symlink
generation to point into the LLVM executable directory instead.
llvm-svn: 198319
|
| |
|
|
|
|
|
| |
When building Clang separately from LLVM with CMake, one should set
the path of llvm-config via the cache variable LLVM_CONFIG.
llvm-svn: 198316
|
| |
|
|
| |
llvm-svn: 198313
|
| |
|
|
| |
llvm-svn: 198312
|
| |
|
|
|
|
| |
PIC code.
llvm-svn: 198311
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Added CommentPragmas option for this.
Reviewers: djasper, klimek
Reviewed By: klimek
CC: cfe-commits, klimek
Differential Revision: http://llvm-reviews.chandlerc.com/D2460
llvm-svn: 198310
|
| |
|
|
|
|
|
| |
The backend string is only verified when available as it's possible to run
clang IRGen for targets that haven't been built or don't exist in LLVM.
llvm-svn: 198309
|
| |
|
|
| |
llvm-svn: 198308
|
| |
|
|
|
|
|
| |
No functionality change, but unblocks asserting that llvm's and clang's
datalayout strings are the same.
llvm-svn: 198306
|
| |
|
|
|
|
|
| |
This patch makes it possible to select the ABI with -mattr. It will be used to
forward clang's -target-abi option to llvm's CodeGen.
llvm-svn: 198304
|
| |
|
|
| |
llvm-svn: 198300
|
| |
|
|
| |
llvm-svn: 198292
|
| |
|
|
| |
llvm-svn: 198291
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When there are cycles in the value graph we have to be careful interpreting
"Value*" identity as "value" equivalence. We interpret the value of a phi node
as the value of its operands.
When we check for value equivalence now we make sure that the "Value*" dominates
all cycles (phis).
%0 = phi [%noaliasval, %addr2]
%l = load %ptr
%addr1 = gep @a, 0, %l
%addr2 = gep @a, 0, (%l + 1)
store %ptr ...
Before this patch we would return NoAlias for (%0, %addr1) which is wrong
because the value of the load is from different iterations of the loop.
Tested on x86_64 -mavx at O3 and O3 -flto with no performance or compile time
regressions.
PR18068
radar://15653794
llvm-svn: 198290
|
| |
|
|
|
|
| |
Suggested by Aaron Ballman.
llvm-svn: 198288
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
During the years there have been some attempts at figuring out how to
align byval arguments. A look at the commit log suggests that they
were
* Use the ABI alignment.
* When that was not sufficient for x86-64, I added the 's' specification to
DataLayout.
* When that was not sufficient Evan added the virtual getByValTypeAlignment.
* When even that was not sufficient, we just got the FE to add the alignment
to the byval.
This patch is just a simple cleanup that removes my first attempt at fixing the
problem. I also added an AArch64 implementation of getByValTypeAlignment to
make sure this patch is a nop. I also left the 's' parsing for backward
compatibility.
I will send a short email to llvmdev about the change for anyone maintaining
an out of tree target.
llvm-svn: 198287
|
| |
|
|
| |
llvm-svn: 198286
|
| |
|
|
|
|
| |
used. Removes ~11.5K from static tables.
llvm-svn: 198284
|
| |
|
|
|
|
| |
__multi3() in correct order.
llvm-svn: 198281
|
| |
|
|
|
|
| |
does not clear top 32 bit, only SRL does.
llvm-svn: 198280
|
| |
|
|
|
|
| |
[-Wdocumentation]
llvm-svn: 198279
|
| |
|
|
|
|
| |
really more like OrRegFrm so we don't need a difference since we can just mask bits.
llvm-svn: 198278
|
| |
|
|
|
|
|
| |
Printing rounding control.
Enncoding for EVEX_RC (rounding control).
llvm-svn: 198277
|
| |
|
|
|
|
| |
instructions. These instructions can be handled by MRMXr instead.
llvm-svn: 198276
|
| |
|
|
| |
llvm-svn: 198275
|
| |
|
|
|
| |
FIXME: Dragonegg may be updated at non-trivial changes.
llvm-svn: 198274
|
| |
|
|
|
|
| |
Stopgap measure until we can just use static_assert().
llvm-svn: 198273
|
| |
|
|
| |
llvm-svn: 198272
|