| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 299022
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This should work on all platforms now that r299006 has landed. Tested locally
on Windows and Linux.
This moves exe symbol-specific method implementations out of NativeRawSymbol
into a concrete subclass. Also adds implementations for hasCTypes and
hasPrivateSymbols and a simple test to ensure the native reader can access the
summary information for the executable from the PDB.
Original Differential Revision: https://reviews.llvm.org/D31059
llvm-svn: 299019
|
| |
|
|
|
|
|
| |
Do that by creating a global_values, which is similar to
global_objects, but also iterates over aliases and ifuncs.
llvm-svn: 299018
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some of the GEP combines (e.g., descaling) can't handle vector GEPs. We have an
existing check that attempts to bail out if given a vector GEP. However, the
check only tests the GEP's pointer operand. A GEP results in a vector of
pointers if at least one of its operands is vector-typed (e.g., its pointer
operand could be a scalar, but its index could be a vector). We should just
check the type of the GEP itself. This should fix PR32414.
Reference: https://bugs.llvm.org/show_bug.cgi?id=32414
Differential Revision: https://reviews.llvm.org/D31470
llvm-svn: 299017
|
| |
|
|
|
|
| |
We had a mix of type checks and usage that wasn't very clear.
llvm-svn: 299013
|
| |
|
|
|
|
|
|
|
| |
The -output-color option was successful at suppressing color changes, but
was still allowing color resets.
Differential Revision: https://reviews.llvm.org/D31468
llvm-svn: 299006
|
| |
|
|
|
|
| |
NFCI.
llvm-svn: 299004
|
| |
|
|
| |
llvm-svn: 299002
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
approach. NFC
Summary:
But don't actually inspect the tree any deeper than we already do. This
change is NFC but the next one will enable full traversal of the
source/destination patterns.
Depends on D30535
Reviewers: t.p.northover, qcolombet, aditya_nandakumar, rovka, ab
Subscribers: igorb, dberris, llvm-commits, kristof.beyls
Differential Revision: https://reviews.llvm.org/D30536
llvm-svn: 299001
|
| |
|
|
| |
llvm-svn: 299000
|
| |
|
|
|
|
|
| |
As of r298987 the argument is a value that we std::move, so it
shouldn't be const anymore.
llvm-svn: 298999
|
| |
|
|
|
|
| |
Make the enumerators follow the coding convention and start with OW_...
llvm-svn: 298996
|
| |
|
|
|
|
| |
Patch by Wei-Ren Chen!
llvm-svn: 298995
|
| |
|
|
| |
llvm-svn: 298994
|
| |
|
|
|
|
| |
lowerVectorShuffleAsSplitOrBlend (PR32453)
llvm-svn: 298993
|
| |
|
|
|
|
|
|
| |
computeKnownBitsForTargetNode/ComputeNumSignBitsForTargetNode arguments. NFCI.
Based on comment in D31249.
llvm-svn: 298991
|
| |
|
|
| |
llvm-svn: 298989
|
| |
|
|
|
|
| |
No longer makes sense as the previous opcode mnemonic it was referring to is long gone.
llvm-svn: 298988
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Instantiation of the MachineVerifierPass through
PassInfo::getNormalCtor would yield a segfault since the default
constructor of the MachineVerifierPass takes a reference to nullptr.
Patch by Simone Pellegrini.
Differential Revision: https://reviews.llvm.org/D31387
llvm-svn: 298987
|
| |
|
|
|
|
| |
r298956.
llvm-svn: 298986
|
| |
|
|
|
|
| |
GR32 is enough.
llvm-svn: 298985
|
| |
|
|
|
|
|
|
| |
we can just use COPY_TO_REGCLASS instead.
This will result in a KMOVW or KMOVD being emitted during register allocation. And in at least some cases this might allow the register coalescer to remove the copy all together.
llvm-svn: 298984
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
It is problematic for this reader that it expects to read data from
several threads, but the header or message format does not define
framing. Since the buffers are reused, we can't rely on skipping
zeroed out data as a synchronization method either.
There is an argument that this is not version compatible with the format
the reader expected previously. I argue that since the writer wrote garbage
past the end of buffer record, there is no currently working reader to
compromise.
The corresponding writer change is posted to D31384.
Reviewers: dberris, pelikan
Reviewed By: dberris
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D31385
llvm-svn: 298983
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Currently the llvm-xray commandline tool fails to handle the case for
when no subcommand is provided in a graceful manner. This fixes that to
print the help message explaining the subcommands and the available
options.
Reviewers: pcc, pelikan
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D31409
llvm-svn: 298975
|
| |
|
|
|
|
|
| |
This is no longer needed as spotted by Sanjay in
https://reviews.llvm.org/D31165.
llvm-svn: 298963
|
| |
|
|
|
|
| |
Spotted by Sanjay in https://reviews.llvm.org/D31165
llvm-svn: 298962
|
| |
|
|
|
|
|
|
|
|
|
| |
Properly propagate the FMF from the LLVM IR to this flag.
This is toward moving fp-contraction=fast from an LLVM TargetOption to a
FastMathFlag in order to fix PR25721.
Differential Revision: https://reviews.llvm.org/D31165
llvm-svn: 298961
|
| |
|
|
| |
llvm-svn: 298960
|
| |
|
|
| |
llvm-svn: 298959
|
| |
|
|
|
|
|
|
|
|
| |
We should be masking the value and emitting a register copy like we do in non-fast isel. Instead we were just updating the value map and emitting nothing.
After r298928 we started seeing cases where we would create a copy from GR8 to GR32 because the source register in a VK1 to GR32 copy was replaced by the GR8 going into a truncate.
This fixes PR32451.
llvm-svn: 298957
|
| |
|
|
|
|
|
|
|
|
| |
In PPCBoolRetToInt bool value is changed to i32 type. On ppc64 it may introduce an extra zero extension for the return value. This patch changes the integer type to i64 to avoid the zero extension on ppc64.
This patch fixed PR32442.
Differential Revision: https://reviews.llvm.org/D31407
llvm-svn: 298955
|
| |
|
|
| |
llvm-svn: 298954
|
| |
|
|
| |
llvm-svn: 298952
|
| |
|
|
|
|
|
| |
This makes the predicates independent of the flag representation
and makes the code a little easier to read.
llvm-svn: 298951
|
| |
|
|
| |
llvm-svn: 298950
|
| |
|
|
| |
llvm-svn: 298949
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This is less important than increase threshold for private memory,
but still brings performance improvements in a wide range of tests.
Unrolling more for local memory serves three purposes: it allows
to combine ds operations if offset becomes static, saves registers
used for offsets in case of static offsets, and allows better lds
latency hiding.
Differential Revision: https://reviews.llvm.org/D31412
llvm-svn: 298948
|
| |
|
|
|
|
|
|
|
|
| |
This is incorrect to record region boundaries before scheduling,
it may change after scheduling. As a result second pass may see less
instructions to schedule than it should.
Differential Revision: https://reviews.llvm.org/D31434
llvm-svn: 298945
|
| |
|
|
| |
llvm-svn: 298944
|
| |
|
|
|
|
|
|
|
|
| |
We currently perform the various fp_to_sint XMM conversion and then transfer to the MMX register (on 32-bit via the stack).
This patch improves support for MOVDQ2Q XMM to MMX transfers and adds the XMM->MMX fp_to_sint direct conversion patterns. The SSE2 specifications are the same as for XMM->XMM and XMM->MMX rounding/exceptions/etc.
Differential Revision: https://reviews.llvm.org/D30868
llvm-svn: 298943
|
| |
|
|
|
|
| |
Default to something more reasonable if printCustom isn't implemented.
llvm-svn: 298941
|
| |
|
|
|
|
|
|
| |
1. Fix bogus comment.
2. Early exit to reduce indent.
3. Change node pointer param to what it really is: an SDLoc.
llvm-svn: 298940
|
| |
|
|
|
|
|
|
|
|
|
|
| |
-ffp-contract=fast does not currently work with LTO because it's passed as a
TargetOption to the backend rather than in the IR. This adds it to
FastMathFlags.
This is toward fixing PR25721
Differential Revision: https://reviews.llvm.org/D31164
llvm-svn: 298939
|
| |
|
|
|
|
| |
This is just a cut and paste followed by clang-format. Clean up to follow.
llvm-svn: 298938
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: tejohnson, pcc
Subscribers: Prazek, dexonsmith, llvm-commits
Differential Revision: https://reviews.llvm.org/D30791
llvm-svn: 298936
|
| |
|
|
|
|
|
|
|
|
| |
Previously it was covered by the internalization. It turns out we cannot
run internalizer in FE, it break separate compilation tests. Thus early
inliner gets its own option.
Differential Revision: https://reviews.llvm.org/D31429
llvm-svn: 298935
|
| |
|
|
|
|
|
| |
Follow-up to:
https://reviews.llvm.org/rL298775
llvm-svn: 298933
|
| |
|
|
|
|
|
|
| |
It breaks some lld tests.
This reverts commit 3a50eea6d9732ab40e9a7aebe6be777b53a8b35c.
llvm-svn: 298932
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Deal with case that initial node is deleted during dag-combine leading
to an assertional failure in promoteIntShiftOp.
Fixes PR32420.
Reviewers: spatel, RKSimon
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D31403
llvm-svn: 298931
|
| |
|
|
| |
llvm-svn: 298930
|