| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
We already have the inverse verification that we only use globals
that are defined in this module. This essentially catches the
same mistake, but when verifying the module that contains the
definition.
Reviewers: rafael
Differential Revision: http://reviews.llvm.org/D15272
llvm-svn: 257823
|
| |
|
|
| |
llvm-svn: 257819
|
| |
|
|
| |
llvm-svn: 257818
|
| |
|
|
|
|
|
| |
This test uses a regexp so that it matches both Unix output and
Windows output.
llvm-svn: 257817
|
| |
|
|
|
|
|
|
|
| |
classes.
OrcRemoteTargetClient::RCMemoryManager will now register EH frames with the
server automatically. This allows remote-execution of code that uses exceptions.
llvm-svn: 257816
|
| |
|
|
| |
llvm-svn: 257815
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is called from the resolver on each file we decide we actually want to use.
Future commits will make use of this to extract useful information from the files and do
error checking against the context. For example, ensure that files are the same arch as
each other.
Reviewed by Lang Hames.
Differential Revision: http://reviews.llvm.org/D16093
llvm-svn: 257814
|
| |
|
|
|
|
|
| |
I kept forgetting which number is the line delta and which is the code
delta.
llvm-svn: 257813
|
| |
|
|
|
|
|
|
|
|
| |
If your program refers to modules (as indicated in DWARF) we will now try to
load these modules and give you access to their types in expressions. This used
to be gated by a setting ("settings set target.auto-import-clang-modules true")
but that setting defaulted to false. Now it defaults to true -- but you can
disable it by toggling the setting to false.
llvm-svn: 257812
|
| |
|
|
| |
llvm-svn: 257811
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: tra
Subscribers: cfe-commits, jhen
Differential Revision: http://reviews.llvm.org/D16081
llvm-svn: 257810
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Previously we compiled CUDA device code to PTX assembly and embedded
that asm as text in our host binary. Now we compile to PTX assembly and
then invoke ptxas to assemble the PTX into a cubin file. We gather the
ptx and cubin files for each of our --cuda-gpu-archs and combine them
using fatbinary, and then embed that into the host binary.
Adds two new command-line flags, -Xcuda_ptxas and -Xcuda_fatbinary,
which pass args down to the external tools.
Reviewers: tra, echristo
Subscribers: cfe-commits, jhen
Differential Revision: http://reviews.llvm.org/D16082
llvm-svn: 257809
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Right now if the Action graph is a DAG and we encounter an action twice,
we will run it twice.
This patch is difficult to test as-is, but I have testcases for this as
used within CUDA compilation.
Reviewers:
Subscribers:
llvm-svn: 257808
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: tra
Subscribers: cfe-commits, jhen
Differential Revision: http://reviews.llvm.org/D16080
llvm-svn: 257807
|
| |
|
|
| |
llvm-svn: 257806
|
| |
|
|
| |
llvm-svn: 257805
|
| |
|
|
| |
llvm-svn: 257804
|
| |
|
|
|
|
|
| |
David Majnemer noticed that it was not obvious what the behavior would
be if B.Offset - A.Offset could not fit in an int.
llvm-svn: 257803
|
| |
|
|
| |
llvm-svn: 257802
|
| |
|
|
| |
llvm-svn: 257801
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch seeds the SLP vectorizer with getelementptr indices. The primary
motivation in doing so is to vectorize gather-like idioms beginning with
consecutive loads (e.g., g[a[0] - b[0]] + g[a[1] - b[1]] + ...). While these
cases could be vectorized with a top-down phase, seeding the existing bottom-up
phase with the index computations avoids the complexity, compile-time, and
phase ordering issues associated with a full top-down pass. Only bundles of
single-index getelementptrs with non-constant differences are considered for
vectorization.
Differential Revision: http://reviews.llvm.org/D14829
llvm-svn: 257800
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rounding up an integer m to a nearest multiple of n where n is a power
of 2 is used very often if you are writing code to emit binary files.
RoundUpToAlignment is a small function to do that. But we found that the
function has a small but annoying issue; the name is a bit too long.
Because it is used quite often, that hurts readability.
This patch is to rename the function. The original name is kept as a
forwarder, so that submitting this patch won't immediately break Clang
and other LLVM projects. Once I update all occurrences of RoundUpToAlignment,
I'll remove the old name entirely.
http://reviews.llvm.org/D16162
llvm-svn: 257799
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
method
MIPS ABI has relocations like R_MIPS_JALR which is just a hint for
linker to make some code optimization. Such relocations should not be
handled as a regular ones and lead to say dynamic relocation creation.
The patch introduces new virtual `Target::isHintReloc` method, overrides
it in the `MipsTargetInfo` class and calls it in the `Writer<ELFT>::scanRelocs`
method.
Differential Revision: http://reviews.llvm.org/D16193
llvm-svn: 257798
|
| |
|
|
|
|
| |
This reverts commit r257753 because we cannot link Clang with this patch.
llvm-svn: 257797
|
| |
|
|
|
|
| |
Thanks to David Blaikie for noticing it.
llvm-svn: 257796
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: If SROA creates only one piece (e.g. because the other is not needed),
it still needs to create a bit_piece expression if that bit piece is smaller
than the original size of the alloca.
Reviewers: aprantl
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D16187
llvm-svn: 257795
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since r230276, we support an improved legalization for f64->f16,
which goes through a temporary f32, improving codegen when
f32->f16 is legal but not f64->f16. This requires unsafe-fp-math.
However, that legalization assumed that the second step, producing
a pseudo-softened f16, had type i16. That's not true on targets
with illegal i16, such as ARM.
Use the initial f64->f16 result type instead.
llvm-svn: 257794
|
| |
|
|
|
|
| |
currently
llvm-svn: 257793
|
| |
|
|
|
|
|
|
|
|
| |
Soon it will be responsible for more than line tables.
Reviewers: majnemer
Differential Revision: http://reviews.llvm.org/D16199
llvm-svn: 257792
|
| |
|
|
|
|
|
| |
It's broken. In 3.7 there wasn't a CMake build for test-suite at all,
so we're not losing something we had before.
llvm-svn: 257791
|
| |
|
|
| |
llvm-svn: 257790
|
| |
|
|
|
|
|
|
|
|
|
| |
This flag allows to disable old way of determining dynamic TLS by
filtering out allocations from dynamic linker. This will be eventually
superseded by __tls_get_addr interceptor (see r257785), after we:
1) Test it in several supported environments
2) Deal with existing problems (currently we can't find a pointer to
DTV which is calloc()-ed in pthread_create).
llvm-svn: 257789
|
| |
|
|
|
|
|
| |
I was calling the base class tearDown() function the wrong way
which for some reason is ok on Python 3 but not on Python 2.
llvm-svn: 257788
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: The dbg.declare -> dbg.value conversion did not check which operand of
the store instruction the alloca was passed to. As a result code that stored the
address of an alloca, rather than storing to the alloca, would still trigger
the conversion routine, leading to the insertion of an incorrect dbg.value
intrinsic.
Reviewers: aprantl
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D16169
llvm-svn: 257787
|
| |
|
|
|
|
| |
This can happen with -gmodules tables when an anonymous struct is referred to.
llvm-svn: 257786
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
We have a way to keep track of allocated DTLS segments: let's use it
in LSan. Although this code is fragile and relies on glibc
implementation details, in some cases it proves to be better than
existing way of tracking DTLS in LSan: marking as "reachable" all
memory chunks allocated directly by "ld".
The plan is to eventually get rid of the latter, once we are sure
it's safe to remove.
Reviewers: kcc
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D16164
llvm-svn: 257785
|
| |
|
|
|
|
| |
rdar://problem/22823264
llvm-svn: 257784
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With COMPILER_RT_INCLUDE_TESTS turned ON and in a cross compiling
environment, the unit tests fail to link. This patch does the following changes
>Rename COMPILER_RT_TEST_CFLAGS to COMPILER_RT_UNITTEST_CFLAGS to reflect the
way it's used.
>Add COMPILER_RT_TEST_COMPILER_CFLAGS to COMPILER_RT_UNITTEST_CFLAGS so
that cross-compiler would be able to build/compile the unit tests
>Add COMPILER_RT_UNITTEST_LINKFLAGS to COMPILER_RT_UNITTEST_CFLAGS so
that cross-compiler would be able to link the unit tests (if needed)
Differential Revision: http://reviews.llvm.org/D16165
llvm-svn: 257783
|
| |
|
|
|
|
|
| |
1. One test covering coverage-mapping interfaction with linker GC
2. one test covering coverage-mapping with shared libaries
llvm-svn: 257782
|
| |
|
|
|
|
|
|
|
|
|
| |
Coverage mapping data is not referenced by runtime, and they won't be dumped
into profile data. There is no need to allocate memory for covmap sections.
A good side effect of this change is that the coverage map data won't be mistakenly
garbage collected by the linker (for Gold linker only, BFD linker has an issue where the a bug is filed).
Tested with clang build with instrumentation and -fcoverage-mapping and linker GC. The size of
covmap section is ~17.6M so the text segment size will be reduced by this amount with this change.
llvm-svn: 257781
|
| |
|
|
| |
llvm-svn: 257780
|
| |
|
|
| |
llvm-svn: 257778
|
| |
|
|
| |
llvm-svn: 257777
|
| |
|
|
|
|
|
|
| |
These fields are almost always zero. However, there are relocations
against them, and we should print the relocation symbol with it as
SYM+0xNN.
llvm-svn: 257776
|
| |
|
|
|
|
|
|
| |
platforms."
This reverts commit r257719, due to PR26144.
llvm-svn: 257775
|
| |
|
|
| |
llvm-svn: 257774
|
| |
|
|
|
|
| |
This reverts commit r257769. Backing this out because of stage2 failures.
llvm-svn: 257773
|
| |
|
|
|
|
| |
This patch adds a hook to track kernel invocations and to track all script and allocation objects used.
llvm-svn: 257772
|
| |
|
|
| |
llvm-svn: 257771
|
| |
|
|
| |
llvm-svn: 257770
|