| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
| |
targets
Instead of selecting between MOVSD/MOVSS and BLENDPD/BLENDPS at shuffle lowering by subtarget this will help us select the instruction based on actual commutation requirements.
We could possibly add BLENDPD/BLENDPS -> MOVSD/MOVSS commutation and MOVSD/MOVSS memory folding using a similar approach if it proves useful
I avoided adding AVX512 handling as I'm not sure when we should be making use of VBLENDPD/VBLENDPS on EVEX targets
llvm-svn: 283037
|
|
|
|
|
|
| |
This reverts commit r282992 which appears to be causing an LTO test failure.
llvm-svn: 283034
|
|
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=751631
llvm-svn: 283024
|
|
|
|
| |
llvm-svn: 283021
|
|
|
|
|
|
|
|
| |
-Remove OptForSize. Not all of the backend follows the same rules for creating broadcasts and there is no conflicting pattern.
-Don't stop selecting VEX VMOVDDUP when AVX512 is supported. We need VLX for EVEX VMOVDDUP.
-Only use VMOVDDUP for v2i64 broadcasts if AVX2 is not supported.
llvm-svn: 283020
|
|
|
|
|
|
| |
This reverts commit r283017. Creates an infinite loop somehow.
llvm-svn: 283019
|
|
|
|
| |
llvm-svn: 283018
|
|
|
|
| |
llvm-svn: 283017
|
|
|
|
| |
llvm-svn: 283016
|
|
|
|
| |
llvm-svn: 283015
|
|
|
|
| |
llvm-svn: 283013
|
|
|
|
| |
llvm-svn: 283012
|
|
|
|
|
|
| |
This reverts commit r283009. Bots are broken.
llvm-svn: 283011
|
|
|
|
| |
llvm-svn: 283009
|
|
|
|
| |
llvm-svn: 283008
|
|
|
|
| |
llvm-svn: 283007
|
|
|
|
| |
llvm-svn: 283005
|
|
|
|
| |
llvm-svn: 283004
|
|
|
|
|
|
|
| |
This reverts commit r282999.
Tests are not passing: http://lab.llvm.org:8011/builders/clang-x86_64-linux-selfhost-modules/builds/20038
llvm-svn: 283003
|
|
|
|
|
|
| |
of the TargetMachine. NFC.
llvm-svn: 283002
|
|
|
|
|
|
| |
TargetTriple, just grab it off of the TargetMachine. NFC.
llvm-svn: 283001
|
|
|
|
|
|
| |
and can be pulled from the TargetMachine. NFC.
llvm-svn: 283000
|
|
|
|
|
|
| |
This removes many re-initializations of a base register to 0.
llvm-svn: 282999
|
|
|
|
| |
llvm-svn: 282998
|
|
|
|
| |
llvm-svn: 282997
|
|
|
|
| |
llvm-svn: 282996
|
|
|
|
|
|
| |
the corpus smaller, off by default
llvm-svn: 282995
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To lex hash directives we peek ahead to find component tokens, create a
unified token, and unlex the peeked tokens so the parser does not need
to parse the tokens then. Make sure we do not to lex another hash
directive during peek operation.
This fixes PR28921.
Reviewers: rnk, loladiro
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D24839
llvm-svn: 282992
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
dead-stripping
The binder is in a specific section that "reverse" the edges in a
regular dead-stripping: the binder is live as long as a global it
references is live.
This is a big hammer that prevents LLVM from dead-stripping these,
while still allowing linker dead-stripping (with special knowledge
of the section).
Differential Revision: https://reviews.llvm.org/D24673
llvm-svn: 282988
|
|
|
|
| |
llvm-svn: 282983
|
|
|
|
| |
llvm-svn: 282979
|
|
|
|
|
|
| |
installed
llvm-svn: 282972
|
|
|
|
| |
llvm-svn: 282971
|
|
|
|
|
|
|
|
|
| |
This avoids errors about references to undefined local labels from
unreferenced filter functions.
Fixes (sort of) PR30431
llvm-svn: 282967
|
|
|
|
|
|
|
|
| |
This makes sure the helper functions work as expected.
NFC.
llvm-svn: 282961
|
|
|
|
|
|
|
|
| |
We don't return index, we return the actual ValueMapping.
NFC.
llvm-svn: 282960
|
|
|
|
|
|
|
|
|
|
| |
We don't need to have singleton ValueMapping on their own, we can just
reuse one of the elements of the 3-ops mapping.
This allows even more code sharing.
NFC.
llvm-svn: 282959
|
|
|
|
|
|
|
|
|
| |
Use a helper function to access ValMapping. This should make the code
easier to understand and maintain.
NFC.
llvm-svn: 282958
|
|
|
|
|
|
|
|
|
| |
The function name did not make it clear that the returned value was an
offset to apply to a register bank index.
NFC.
llvm-svn: 282957
|
|
|
|
|
|
|
|
| |
Avoid to rely on the dynamically allocated operands mapping for the
alternative mapping.
NFC.
llvm-svn: 282956
|
|
|
|
| |
llvm-svn: 282954
|
|
|
|
| |
llvm-svn: 282952
|
|
|
|
| |
llvm-svn: 282950
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When we create a PDB file using PDBFileBuilder, the information
in the superblock, such as the size of the resulting file, is not
available.
Previously, PDBFileBuilder::initialize took a superblock assuming
that all the members of the struct are correct. That is useful when
you want to restore the exact information from a YAML file, but
that's probably the only use case in which that is useful.
When we are creating a PDB file on the fly, we have to backfill the
members.
This patch redefines PDBFileBuilder::initialize to take only a
block size. Now all the other members are left as default values,
so that they'll be updated when commit() is called.
Differential Revision: https://reviews.llvm.org/D25108
llvm-svn: 282944
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
WritableStream needs the exact file size to open a file, but
until we fix the final layout of a PDB file, we don't know the
size of the file.
This patch changes the parameter type of PDBFileBuilder::commit
to solve that chiecken-and-egg problem. Now the function opens
a file after fixing the layout, so it can create a file with the
exact size.
Differential Revision: https://reviews.llvm.org/D25107
llvm-svn: 282940
|
|
|
|
|
|
| |
to check for the former, don't depend on (dangling) HAVE_MMAP_ANONYMOUS.
llvm-svn: 282925
|
|
|
|
|
|
|
| |
systems. It wasn't even hooked up in cmake, so problems on such systems
would be visible with 3.9 release already.
llvm-svn: 282924
|
|
|
|
|
|
|
|
|
|
|
| |
We can't use Jcc to leave a Win64 function in general, because that
confuses the unwinder. However, for "leaf" functions, that is, functions
where the return address is always on top of the stack and which don't
have unwind info, it's OK.
Differential Revision: https://reviews.llvm.org/D24836
llvm-svn: 282920
|
|
|
|
| |
llvm-svn: 282919
|
|
|
|
| |
llvm-svn: 282918
|