| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
| |
extending for vectors.
Masking first, prevents the extend from being combine with loads. Its also interfering with some vXi1 extraction code.
Differential Revision: https://reviews.llvm.org/D42679
llvm-svn: 326500
|
|
|
|
|
|
|
|
|
|
| |
Since LLVM r326341, default EmulatedTLS mode is decided in backend
according to target triple. Any front-end should pass -f[no]-emulated-tls
to backend and set up ExplicitEmulatedTLS only when the flags are used.
Differential Revision: https://reviews.llvm.org/D43965
llvm-svn: 326499
|
|
|
|
| |
llvm-svn: 326498
|
|
|
|
|
|
|
|
|
|
|
|
| |
64-bit MMX constant generation usually ends up lowering into SSE instructions before being spilled/reloaded as a MMX type.
This patch bitcasts the constant to a double value to allow correct loading directly to the MMX register.
I've added MMX constant asm comment support to improve testing, it's better to always print the double values as hex constants as MMX is mainly an integer unit (and even with 3DNow! its just floats).
Differential Revision: https://reviews.llvm.org/D43616
llvm-svn: 326497
|
|
|
|
|
|
| |
if the other definition is a merged copy of the same function.
llvm-svn: 326496
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
splats of constants.
This supports things like
(setcc ugt X, 0) -> (setcc ne X, 0)
I've restricted to only make changes to vectors before legalize ops because I doubt all targets have accurate condition code legality information for vectors given how little we did before.
Differential Revision: https://reviews.llvm.org/D42948
llvm-svn: 326495
|
|
|
|
| |
llvm-svn: 326494
|
|
|
|
|
|
|
|
| |
introduction on the front page page.
We still use the lowercase "clang" spelling when referring to the driver binary.
llvm-svn: 326493
|
|
|
|
| |
llvm-svn: 326492
|
|
|
|
|
|
| |
rdar://problem/37963669
llvm-svn: 326491
|
|
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326490
|
|
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326489
|
|
|
|
| |
llvm-svn: 326488
|
|
|
|
|
|
|
|
|
| |
This crashes for some opcodes, which prevents the SelectionDAG
fallback from working.
Patch by Tom Stellard
llvm-svn: 326487
|
|
|
|
|
|
|
| |
Clean up a couple of functions in `AArch64TargetLowering` by removing
redundant statements.
llvm-svn: 326486
|
|
|
|
| |
llvm-svn: 326485
|
|
|
|
| |
llvm-svn: 326484
|
|
|
|
|
|
|
|
|
| |
This was finding the wrong size registers for anything with
more than 2 components.
Patch by Tom Stellard
llvm-svn: 326483
|
|
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326482
|
|
|
|
| |
llvm-svn: 326481
|
|
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D43288
llvm-svn: 326480
|
|
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326479
|
|
|
|
|
|
|
|
| |
Currently --start-group=foo is accidentally accepted by the MinGW driver.
Differential Revision: https://reviews.llvm.org/D43836
llvm-svn: 326478
|
|
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326477
|
|
|
|
|
|
|
|
|
|
| |
Make types with sizes that aren't a power of two an error (that can
be disabled) in structs with ms_struct layout, except on mingw where
the situation is quite likely to occur and GCC handles it silently.
Differential Revision: https://reviews.llvm.org/D43908
llvm-svn: 326476
|
|
|
|
|
|
| |
match this file. NFC
llvm-svn: 326475
|
|
|
|
| |
llvm-svn: 326474
|
|
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326472
|
|
|
|
| |
llvm-svn: 326471
|
|
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326470
|
|
|
|
|
|
|
|
| |
This is needed for building with the GNU driver (`clang++`) when
targeting Windows and using msvcprt. This flag is the equivalent of
`/GR-`.
llvm-svn: 326469
|
|
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326468
|
|
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326467
|
|
|
|
| |
llvm-svn: 326466
|
|
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326465
|
|
|
|
|
|
| |
Patch by Tom Stellard
llvm-svn: 326464
|
|
|
|
|
|
|
|
|
| |
The argument is section=address, not just address.
(For compatibility with GNU linkers we need to, but do not yet, accept
--section-start=section=address.)
llvm-svn: 326463
|
|
|
|
|
|
|
|
|
|
|
|
| |
Don't enable c++-temp-dtor-inlining by default yet, due to this reference
counting pointe problem.
Otherwise the new mode seems stable and allows us to incrementally fix C++
problems in much less hacky ways.
Differential Revision: https://reviews.llvm.org/D43804
llvm-svn: 326461
|
|
|
|
|
|
|
| |
The gcc builders were broken by rL326454
See: https://reviews.llvm.org/D43921
llvm-svn: 326460
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We intend to maintain compatibility with GNU ld, and in the GNU world
long options are conventionally specified as --long-option=value. For
whatever reason GNU ld.bfd accepts both --long-option value and
--long-option=value, but documents the former. Follow suit.
Some lld long options do not accept the = form; this is probably a bug
to be fixed (along with a man page update).
Reported by Ingo Schwarze, for --entry.
llvm-svn: 326459
|
|
|
|
| |
llvm-svn: 326458
|
|
|
|
|
|
|
|
|
| |
Now that patterns can handle intrinsics returning multiple results,
use tablegen'ed pattern matching instead of custom lowering.
Differential Revision: https://reviews.llvm.org/D43890
llvm-svn: 326457
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Symbols with different canonical includes might be defined in the same header
(e.g. symbols defined in STL <iosfwd>). This patch adds support for mapping from
qualified symbol names to canonical headers and special mapping for symbols in <iosfwd>
Reviewers: sammccall, hokein
Reviewed By: sammccall
Subscribers: klimek, ilya-biryukov, jkorous-apple, cfe-commits
Differential Revision: https://reviews.llvm.org/D43869
llvm-svn: 326456
|
|
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D43922
llvm-svn: 326455
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The original BinaryEncoding.md document used to specify that
these values were `varint7`, but the official spec lists them
explicitly as single byte values and not LEB.
A similar change for wabt is in flight:
https://github.com/WebAssembly/wabt/pull/782
Differential Revision: https://reviews.llvm.org/D43921
llvm-svn: 326454
|
|
|
|
|
|
|
|
|
|
| |
For now this is NFC, but this small refactor opens the door to
letting us embed a hash of the PDB in the build id field of the
PDB.
Differential Revision: https://reviews.llvm.org/D43913
llvm-svn: 326453
|
|
|
|
| |
llvm-svn: 326452
|
|
|
|
|
|
| |
Differential revision: https://reviews.llvm.org./D43334
llvm-svn: 326451
|
|
|
|
| |
llvm-svn: 326450
|
|
|
|
|
|
|
|
|
|
| |
gcc will say that the type of "this" is "T * const", clang "T *".
Compare the unqualified type names to erase the difference between the
two, as the constness is not a part of this test.
FWIW, I think that the gcc behavior makes more sense here.
llvm-svn: 326449
|