| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 209285
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Generalize StackDepot and create a new specialized instance of it to
efficiently (i.e. without duplicating stack trace data) store the
origin history tree.
This reduces memory usage for chained origins roughly by an order of
magnitude.
Most importantly, this new design allows us to put two limits on
stored history data (exposed in MSAN_OPTIONS) that help avoid
exponential growth in used memory on certain workloads.
See comments in lib/msan/msan_origin.h for more details.
llvm-svn: 209284
|
| |
|
|
| |
llvm-svn: 209283
|
| |
|
|
|
|
|
|
|
| |
This change also enables asm instrumentation in asan tests that was
accidentally disabled yearlier, and adds a sanity test for that.
Patch by Yuri Gorshenin.
llvm-svn: 209282
|
| |
|
|
| |
llvm-svn: 209281
|
| |
|
|
|
|
| |
Patch by Yuri Gorshenin.
llvm-svn: 209280
|
| |
|
|
|
|
| |
partially based on patch by H.J. Lu
llvm-svn: 209279
|
| |
|
|
|
|
|
|
|
| |
For Linux/x86-64, pointers passed to internal_syscall should be casted
to uptr first. Otherwise, they won't be properly extended to 64-bit for
x32.
Patch by H.J. Lu
llvm-svn: 209278
|
| |
|
|
|
|
|
|
| |
X32 uses ILP32 data model in 64-bit hardware mode. This patch always
uses 64-bit pointer to unwind stack for x86-64.
Patch by H.J. Lu
llvm-svn: 209277
|
| |
|
|
|
|
|
|
|
| |
Also flesh out missing tests, improve diagnostic QOI and fix a couple of corner
cases found in the process.
Fixes PR10606.
llvm-svn: 209276
|
| |
|
|
| |
llvm-svn: 209275
|
| |
|
|
| |
llvm-svn: 209274
|
| |
|
|
|
|
|
|
|
| |
The .drectve section should be marked as IMAGE_SCN_LNK_REMOVE. This matches what
the MSVC toolchain does and accurately reflects that this section should not be
emitted into the final binary. This section is merely information for the
linker, comprising of additional linker directives.
llvm-svn: 209273
|
| |
|
|
| |
llvm-svn: 209272
|
| |
|
|
| |
llvm-svn: 209271
|
| |
|
|
|
|
|
|
|
| |
contain the symbol, but just reexports wholesale from another
library. Handle this case.
<rdar://problem/16977589>
llvm-svn: 209270
|
| |
|
|
|
|
|
| |
yet, but only a few more Clang patches need to land. (I have 'ninja check'
passing locally.)
llvm-svn: 209269
|
| |
|
|
| |
llvm-svn: 209268
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Although the previous code would construct a bundle and add the correct elements
to it, it would not finalise the bundle. This resulted in the InternalRead
markers not being added to the MachineOperands nor, more importantly, the
externally visible defs to the bundle itself. So, although the bundle was not
exposing the def, the generated code would be correct because there was no
optimisations being performed. When optimisations were enabled, the post
register allocator would kick in, and the hazard recognizer would reorder
operations around the load which would define the value being operated upon.
Rather than manually constructing the bundle, simply construct and finalise the
bundle via the finaliseBundle call after both MIs have been emitted. This
improves the code generation with optimisations where IMAGE_REL_ARM_MOV32T
relocations are emitted.
The changes to the other tests are the result of the bundle generation
preventing the scheduler from hoisting the moves across the loads. The net
effect of the generated code is equivalent, but, is much more identical to what
is actually being lowered.
llvm-svn: 209267
|
| |
|
|
|
|
|
|
|
|
|
| |
Eliminate createMainFileID() / createMainFileIDForMemBuffer() utility
functions. These didn't add much convenience and conflated two distinct
operations.
This change makes things easier to follow by providing a consistent interface
and getting rid of a bunch of cast-to-voids.
llvm-svn: 209266
|
| |
|
|
| |
llvm-svn: 209265
|
| |
|
|
|
|
|
|
| |
the return type is already that.
rdar://16961577
llvm-svn: 209264
|
| |
|
|
|
|
| |
rename it to something more descriptive.
llvm-svn: 209263
|
| |
|
|
| |
llvm-svn: 209262
|
| |
|
|
| |
llvm-svn: 209261
|
| |
|
|
| |
llvm-svn: 209260
|
| |
|
|
| |
llvm-svn: 209259
|
| |
|
|
|
|
| |
set appropriately.
llvm-svn: 209258
|
| |
|
|
| |
llvm-svn: 209257
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The patch adds better target_triple and target_arch defaults for lit tests,
which allows us to XFAIL tests based on architecture.
Was:
target_triple = LLVM_DEFAULT_TARGET_TRIPLE
target_arch = HOST_ARCH
Now:
target_triple = COMPILER_RT_TEST_TARGET_TRIPLE
, otherwise LLVM_DEFAULT_TARGET_TRIPLE
target_arch = first item in COMPILER_RT_TEST_TARGET_TRIPLE
Differential Revision: http://reviews.llvm.org/D3855
llvm-svn: 209256
|
| |
|
|
| |
llvm-svn: 209255
|
| |
|
|
|
|
|
|
|
|
|
| |
addResolvableSymbols() queues input files, and readAllSymbols() reads
from them. In practice it's currently safe because they are called from
a single thread. But it's not guaranteed.
Also, acquiring the same mutex is needed not to see inconsistent memory
contents that is allowed in the C++ memory model.
llvm-svn: 209254
|
| |
|
|
|
|
|
|
|
|
|
|
| |
for undefined symbols, so it matches what COFFObjectFile::getSymbolAddress
does. This allows llvm-nm to print spaces instead of 0’s for the value
of undefined symbols in Mach-O files.
To make this change other uses of MachOObjectFile::getSymbolAddress
are updated to handle when the Value is returned as UnknownAddressOrSize.
Which is needed to keep two of the ExecutionEngine tests working for example.
llvm-svn: 209253
|
| |
|
|
| |
llvm-svn: 209252
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
abstract subprograms are constructed."
This reverts commit r209178.
This seems to be asserting in an LTO build on some internal Apple
buildbots. No upstream reproduction (and I don't have an LLVM-aware gold
built right now to reproduce it personally) but it's a small patch & the
failure's semi-plausible so I'm going to revert first while I try to
reproduce this.
llvm-svn: 209251
|
| |
|
|
|
|
|
|
| |
Checking if a path starts with another path isn't sufficient for
determining if one is contained within the heirarchy of the other.
We need to ensure that the substring ends at a directory boundary.
llvm-svn: 209250
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D3751
llvm-svn: 209249
|
| |
|
|
|
|
| |
Route target_cflags to common and profile tests
llvm-svn: 209248
|
| |
|
|
|
|
|
| |
If we're so keen on saving a dynamic allocation to add the trailing space, we
might as well do it in style.
llvm-svn: 209247
|
| |
|
|
| |
llvm-svn: 209246
|
| |
|
|
|
|
| |
Also add the missing undef in both files.
llvm-svn: 209245
|
| |
|
|
| |
llvm-svn: 209244
|
| |
|
|
| |
llvm-svn: 209243
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Povray and dealII currently assert with "Overran sorted position" in
AssignTopologicalOrder. The problem is that performPostLD1Combine can
introduce cycles.
Consider:
(insert_vector_elt (INSERT_SUBREG undef,
(load (add %vreg0, Constant<8>), undef), <= A
TargetConstant<2>),
(load %vreg0, undef), <= B
Constant<1>)
This is turned into a LD1LANEpost node. However the address in A is not a
valid user of the post-incremented address of B in LD1LANEpost.
llvm-svn: 209242
|
| |
|
|
|
|
|
|
|
| |
This moves the logic to write a JSON VFS mapping from the C api into
VirtualFileSystem, so that we can use it internally.
No functional change.
llvm-svn: 209241
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
http://reviews.llvm.org/D3714
Undecided whether this should include a test case - SROA produces bad
dbg.value metadata describing a value for a reference that is actually
the value of the thing the reference refers to. For now, loosening the
assert lets this not assert, but it's still bogus/wrong output...
If someone wants to tell me to add a test, I'm willing/able, just
undecided. Hopefully we'll get SROA fixed soon & we can tighten up this
assertion again.
llvm-svn: 209240
|
| |
|
|
| |
llvm-svn: 209239
|
| |
|
|
|
|
|
|
|
|
| |
make the functions to set them non-static.
Move and rename the llvm specific backend options to avoid conflicting
with the clang option.
Paired with a backend commit to update.
llvm-svn: 209238
|
| |
|
|
|
|
|
|
|
|
| |
Mostly a test review and commit.
Reviewers: tfiala
Differential Revision: http://reviews.llvm.org/D3834
llvm-svn: 209237
|
| |
|
|
|
|
|
|
| |
Failing Tests (2):
LLVM :: ExecutionEngine/MCJIT/stubs-sm-pic.ll
LLVM :: ExecutionEngine/MCJIT/stubs.ll
llvm-svn: 209236
|