Richard Trieu [Thu, 22 May 2014 01:39:16 +0000 (01:39 +0000)]
Add hasSameType overload to ASTContext for Type pointers. Switch a type
comparison check to use this instead of calling Type::getCanonicalTypeInternal
llvm-svn: 209378
Eric Christopher [Thu, 22 May 2014 01:21:44 +0000 (01:21 +0000)]
Fix typo.
llvm-svn: 209377
Eric Christopher [Thu, 22 May 2014 01:21:35 +0000 (01:21 +0000)]
Avoid using subtarget features when initializing the pass pipeline
on PPC.
llvm-svn: 209376
Eric Christopher [Thu, 22 May 2014 01:07:24 +0000 (01:07 +0000)]
Reset the subtarget for DAGToDAG on every iteration of runOnMachineFunction.
This required updating the generated functions and TD file accordingly
to be pointers rather than const references.
llvm-svn: 209375
Eric Christopher [Thu, 22 May 2014 01:07:21 +0000 (01:07 +0000)]
Reset the subtarget for DAGToDAG on every iteration of runOnMachineFunction.
llvm-svn: 209374
Eric Christopher [Thu, 22 May 2014 01:07:18 +0000 (01:07 +0000)]
Sort includes.
llvm-svn: 209373
David Blaikie [Thu, 22 May 2014 00:48:36 +0000 (00:48 +0000)]
DebugInfo: Simplify dead variable collection slightly.
constructSubprogramDIE was already called for every subprogram in every
CU when the module was started - there's no need to call it again at
module finalization.
llvm-svn: 209372
Andrew Trick [Thu, 22 May 2014 00:37:03 +0000 (00:37 +0000)]
Fix a bug in SCEV's backedge taken count computation from my prior fix in Jan.
This has to do with the trip count computation for loops with multiple
exits, which is quite subtle. Most passes just ask for a single trip
count number, so we must be conservative assuming any exit could be
taken. Normally, we rely on the "exact" trip count, which was
correctly given as "unknown". However, SCEV also gives a "max"
back-edge taken count. The loops max BE taken count is conservatively
a maximum over the max of each exit's non-exiting iterations
count. Note that some exit tests can be skipped so the max loop
back-edge taken count can actually exceed the max non-exiting
iterations for some exits. However, when we know the loop *latch*
cannot be skipped, we can directly use its max taken count
disregarding other exits. I previously took the minimum here without
checking whether the other exit could be skipped. The correct, and
simpler thing to do here is just to directly use the loop latch's max
non-exiting iterations as the loops max back-edge count.
In the problematic test case, the first loop exit had a max of zero
non-exiting iterations, but could be skipped. The loop latch was known
not to be skipped but had max of one non-exiting iteration. We
incorrectly claimed the loop back-edge could be taken zero times, when
it is actually taken one time.
Fixes Loop %for.body.i: <multiple exits> Unpredictable backedge-taken count.
Loop %for.body.i: max backedge-taken count is 1.
llvm-svn: 209358
Rui Ueyama [Thu, 22 May 2014 00:36:36 +0000 (00:36 +0000)]
Simplify nullptr check.
llvm-svn: 209357
Eli Bendersky [Thu, 22 May 2014 00:02:52 +0000 (00:02 +0000)]
Similar to bitcast, treat addrspacecast as a foldable operand.
Added a test sink-addrspacecast.ll to verify this change.
Patch by Jingyue Wu.
llvm-svn: 209343
Eric Christopher [Wed, 21 May 2014 23:51:57 +0000 (23:51 +0000)]
Fix compilation issues.
llvm-svn: 209342
Jason Molenda [Wed, 21 May 2014 23:44:02 +0000 (23:44 +0000)]
Change ProcessKDP::DoReadMemory() to break up large memory
read requests into smaller chunks; some remote kdp stubs
cannot handle memory reads larger than a KB or two & will
error out.
<rdar://problem/
16983125>
llvm-svn: 209341
Eric Christopher [Wed, 21 May 2014 23:40:26 +0000 (23:40 +0000)]
Make early if conversion dependent upon the subtarget and add
a subtarget hook to enable. Unconditionally add to the pass pipeline
for targets that might want to use it. No functional change.
llvm-svn: 209340
Eric Christopher [Wed, 21 May 2014 23:40:18 +0000 (23:40 +0000)]
Group the scheduling functions together.
llvm-svn: 209339
David Blaikie [Wed, 21 May 2014 23:27:41 +0000 (23:27 +0000)]
Revert "DebugInfo: Don't put fission type units in comdat sections."
This reverts commit r208930, r208933, and r208975.
It seems not all fission consumers are ready to handle this behavior.
Reverting until tools are brought up to spec.
llvm-svn: 209338
Saleem Abdulrasool [Wed, 21 May 2014 23:17:56 +0000 (23:17 +0000)]
MC: correct IMAGE_REL_ARM_MOV32T relocation emission
This corrects the emission of IMAGE_REL_ARM_MOV32T relocations. Previously, we
were avoiding the high portion of the relocation too early. If there was a
section-relative relocation with an offset greater than 16-bits (65535), you
would end up truncating the high order bits of the offset. Allow the current
relocation representation to flow through out the MC layer to the object writer.
Use the new ability to restrict recorded relocations to avoid emitting the
relocation into the final object.
llvm-svn: 209337
Saleem Abdulrasool [Wed, 21 May 2014 23:17:50 +0000 (23:17 +0000)]
MC: introduce ability to restrict recorded relocations
Add support to allow a target specific COFF object writer to restrict the
recorded resolutions in the emitted object files. This is motivated by the need
in Windows on ARM, where an intermediate relocation needs to be prevented from
being emitted in the object file.
llvm-svn: 209336
David Blaikie [Wed, 21 May 2014 23:14:12 +0000 (23:14 +0000)]
DebugInfo: Use the SPMap to find the parent CU of inlined functions as they may not be in the current CU
Committed in r209178 then reverted in r209251 due to LTO breakage,
here's a proper fix for the case of the missing subprogram DIE. The DIEs
were there, just in other compile units. Using the SPMap we can find the
right compile unit to search for and produce cross-unit references to
describe this kind of inlining.
One existing test case needed to be updated because it had a function
that wasn't in the CU's subprogram list, so it didn't appear in the
SPMap.
llvm-svn: 209335
Rui Ueyama [Wed, 21 May 2014 23:07:16 +0000 (23:07 +0000)]
Fix comment.
llvm-svn: 209334
Matt Arsenault [Wed, 21 May 2014 22:59:17 +0000 (22:59 +0000)]
R600: Add comment describing problems with LowerConstantInitializer
llvm-svn: 209333
Justin Bogner [Wed, 21 May 2014 22:46:51 +0000 (22:46 +0000)]
VirtualFileSystem: Fix a few directory traversal bugs in VFSWriter
There are a couple of issues with writing VFS maps that are awkward to
fix within the current mutually recursive approach. Instead, replace
the algorithm with an iterative version that uses an explicit stack of
directories.
Includes tests for cases the old approach was tripping on.
llvm-svn: 209332
Matt Arsenault [Wed, 21 May 2014 22:42:42 +0000 (22:42 +0000)]
R600: Partially fix constant initializers for structs and vectors.
This should extend the current workaround to work with structs
that only contain legal, scalar types.
llvm-svn: 209331
Matt Arsenault [Wed, 21 May 2014 22:42:38 +0000 (22:42 +0000)]
R600: Add failing testcases for constant initializers.
Constant initializers involving illegal types hit an assertion.
Patch by: Jan Vesely <jan.vesely@rutgers.edu>
llvm-svn: 209330
Eric Christopher [Wed, 21 May 2014 22:42:07 +0000 (22:42 +0000)]
Remove getTargetLowering from TargetPassConfig as the target lowering
can change depending upon subtarget/subtarget features for a function.
llvm-svn: 209329
Eric Christopher [Wed, 21 May 2014 22:42:02 +0000 (22:42 +0000)]
Remove unused member variable from hexagon pass.
llvm-svn: 209328
David Blaikie [Wed, 21 May 2014 22:41:17 +0000 (22:41 +0000)]
DebugInfo: Ensure concrete out of line variables from inlined functions reference their abstract origins.
llvm-svn: 209327
Quentin Colombet [Wed, 21 May 2014 22:00:39 +0000 (22:00 +0000)]
[X86] Fix a bug in the lowering of BLENDI introduced in r209043.
ISD::VSELECT mask uses 1 to identify the first argument and 0 to identify the
second argument.
On the other hand, BLENDI uses 0 to identify the first argument and 1 to
identify the second argument.
Fix the generation of the blend mask to account for this difference.
The bug did not show up with r209043, because we were not checking for the
actual arguments of the blend instruction!
This commit also fixes the test cases.
Note: The same mask works for the BLENDr variant because the arguments are
swapped during instruction selection (see the BLENDXXrr patterns).
<rdar://problem/
16975435>
llvm-svn: 209324
Rui Ueyama [Wed, 21 May 2014 21:51:11 +0000 (21:51 +0000)]
[PECOFF] Fix unsafe memory access.
llvm-svn: 209323
Alp Toker [Wed, 21 May 2014 21:23:39 +0000 (21:23 +0000)]
Provide an aka for the C++ operator name macro diagnostic
llvm-svn: 209322
Eric Christopher [Wed, 21 May 2014 21:05:09 +0000 (21:05 +0000)]
Move MCOptions that aren't shared between programs into their specific
program and have them initialize the MCOptions struct explicitly.
llvm-svn: 209321
Eric Christopher [Wed, 21 May 2014 21:05:05 +0000 (21:05 +0000)]
Make a couple of command lines static and remove an unnecessary
initialization.
llvm-svn: 209320
David Majnemer [Wed, 21 May 2014 20:19:59 +0000 (20:19 +0000)]
Sema: Implement DR244
Summary:
Naming the destructor using a typedef-name for the class-name is
well-formed.
This fixes PR19620.
Reviewers: rsmith, doug.gregor
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D3583
llvm-svn: 209319
Todd Fiala [Wed, 21 May 2014 20:12:01 +0000 (20:12 +0000)]
Added tests for q{f,s}ThreadInfo for attached processes.
Added helper methods:
prep_debug_monitor_and_inferior(): properly handles
the two cases of running the stub against an inferior process
launched by the stub, and one attached to by the stub. See
docs for function: simplifies test creation for tests that want
to test the same operations against a launched and attached inferior.
Added the q{f,s}ThreadInfo and $qC response comparison test (verifies
they both return the same thing) when the process is attached rather
than launched by the stub.
Modified the previous two tests added to make use of the new
prep_debug_monitor_and_inferior() facility.
llvm-svn: 209318
Rui Ueyama [Wed, 21 May 2014 19:44:08 +0000 (19:44 +0000)]
[PECOFF] Check for a Characteristics field of a .debug section.
llvm-svn: 209317
Alp Toker [Wed, 21 May 2014 19:17:38 +0000 (19:17 +0000)]
cindex/test_cursor.py: no need to skip implicit decls in tests
clang was fixed some time ago to always skip "builtins and other cruft" so
tools no longer need hacks like this.
Passes nosetests.
llvm-svn: 209316
Simon Atanasyan [Wed, 21 May 2014 18:23:46 +0000 (18:23 +0000)]
[Mips] Simplify handling of R_MIPS_LO16 / R_MIPS_HI16 relocations
against _gp_disp symbol.
llvm-svn: 209315
Todd Fiala [Wed, 21 May 2014 18:12:14 +0000 (18:12 +0000)]
Added gdb-remote tests for q{f,s}ThreadInfo.
The First test verifies that qThreadInfo queries work for stub-launched processes.
The second test verifies that $qC after stub-launched inferior returns the same
thread as the qThreadInfo queries.
llvm-svn: 209314
Manuel Klimek [Wed, 21 May 2014 18:10:47 +0000 (18:10 +0000)]
Fix clang-query on Windows: flush llvm::outs() after each command.
llvm-svn: 209313
Ed Maste [Wed, 21 May 2014 18:09:55 +0000 (18:09 +0000)]
Implement Host::GetThreadName for FreeBSD
llvm-svn: 209312
David Blaikie [Wed, 21 May 2014 18:04:33 +0000 (18:04 +0000)]
DebugInfo: Simplify subprogram declaration creation/references and accidentally refix PR11300.
Also simplifies the linkage name handling a little too.
llvm-svn: 209311
Matt Arsenault [Wed, 21 May 2014 18:03:59 +0000 (18:03 +0000)]
Use cast<> instead of unchecked dyn_cast
llvm-svn: 209310
Saleem Abdulrasool [Wed, 21 May 2014 17:53:18 +0000 (17:53 +0000)]
MC: loosen an overzealous assertion
Permit active macro expansions when terminating the assembler if there were
errors during the expansion. This would only trigger on invalid input when
built with assertions.
llvm-svn: 209309
Greg Fitzgerald [Wed, 21 May 2014 16:44:03 +0000 (16:44 +0000)]
Use llvm-lit if LLVM source tree is unavailable.
llvm-svn: 209308
Marshall Clow [Wed, 21 May 2014 16:29:50 +0000 (16:29 +0000)]
Fix Bug 19678 - libc++ does not correctly handle the regex: '[^\0]*'
llvm-svn: 209307
Dave Estes [Wed, 21 May 2014 16:19:51 +0000 (16:19 +0000)]
Test comment commit.
llvm-svn: 209306
Marshall Clow [Wed, 21 May 2014 16:02:20 +0000 (16:02 +0000)]
Fix bug 19740; round-tripping a pointer through a stream doesn't work
llvm-svn: 209305
Benjamin Kramer [Wed, 21 May 2014 15:57:22 +0000 (15:57 +0000)]
Remove outdated diagnostic.
llvm-svn: 209304
Rafael Espindola [Wed, 21 May 2014 15:08:27 +0000 (15:08 +0000)]
Update for llvm api change in r209266.
llvm-svn: 209303
Serge Pavlov [Wed, 21 May 2014 14:48:43 +0000 (14:48 +0000)]
Improved recovery of switch statement
Make better diagnostic produced by erroneous switch statement.
It fixes PR19022.
Differential Revision: http://reviews.llvm.org/D3137
llvm-svn: 209302
Sergey Matveev [Wed, 21 May 2014 14:36:05 +0000 (14:36 +0000)]
[sanitizer] Attempt to fix test.
llvm-svn: 209301
Rafael Espindola [Wed, 21 May 2014 14:19:22 +0000 (14:19 +0000)]
Move virtual methods out of line.
This is generally a good thing and in this case should also fix the
BUILD_SHARED_LIBS=ON build (see pr19774).
llvm-svn: 209300
Ed Maste [Wed, 21 May 2014 13:46:46 +0000 (13:46 +0000)]
Correct comment for thread name log option
llvm-svn: 209299
Sergey Matveev [Wed, 21 May 2014 13:43:52 +0000 (13:43 +0000)]
[sanitizer] Add __sanitizer_maybe_open_cov_file().
Summary: Add a new interface function required for coverage sandboxing support.
llvm-svn: 209298
Manuel Klimek [Wed, 21 May 2014 13:28:59 +0000 (13:28 +0000)]
Make the parent-map use significantly less memory.
On test files I ran this on, memory consumption overall went down from
2.5G to 2G, without performance regressions.
I also investigated making DynTypedNode by itself smaller (by pulling
out pointers for everything that doesn't fit in 8 bytes). This led to
another 200-300MB saved, but also introduced a significant regression in
performance due to the memory management overhead.
llvm-svn: 209297
Daniel Jasper [Wed, 21 May 2014 13:26:58 +0000 (13:26 +0000)]
clang-format: Fix corner case working around one-per-line dict literals.
Before:
var object_literal_with_long_name = {
a: '
aaaaaaaaaaaaaaaaaa', b: '
bbbbbbbbbbbbbbbbbb'
};
After:
var object_literal_with_long_name = {
a: '
aaaaaaaaaaaaaaaaaa',
b: '
bbbbbbbbbbbbbbbbbb'
};
llvm-svn: 209296
Kostya Serebryany [Wed, 21 May 2014 13:20:14 +0000 (13:20 +0000)]
[asan] add a test which ensures that we dump coverage after SEGV
llvm-svn: 209295
Daniel Jasper [Wed, 21 May 2014 13:08:17 +0000 (13:08 +0000)]
clang-format: Fix incorrect macro call detection.
In:
struct A {
A()
noexcept(....) {}
};
'A()' is not a macro call.
This fixes llvm.org/PR19814.
llvm-svn: 209294
Rafael Espindola [Wed, 21 May 2014 13:07:41 +0000 (13:07 +0000)]
Update for llvm's r209253.
llvm-svn: 209293
Daniel Sanders [Wed, 21 May 2014 12:56:39 +0000 (12:56 +0000)]
[mips][mips64r6] Add bc[12](eq|ne)z
Summary: Depends on D3691
Reviewers: jkolek, zoran.jovanovic, vmedic
Reviewed By: vmedic
Differential Revision: http://reviews.llvm.org/D3760
llvm-svn: 209292
Daniel Jasper [Wed, 21 May 2014 12:51:23 +0000 (12:51 +0000)]
clang-format: [JS] Support different function literal style.
Before:
goog.array.forEach(array, function() {
doSomething();
doSomething();
},
this);
After:
goog.array.forEach(array, function() {
doSomething();
doSomething();
}, this);
llvm-svn: 209291
Dmitry Vyukov [Wed, 21 May 2014 12:02:08 +0000 (12:02 +0000)]
tsan: deflake test
llvm-svn: 209290
Renato Golin [Wed, 21 May 2014 10:40:27 +0000 (10:40 +0000)]
Make global named registers internal variables
llvm-svn: 209289
Daniel Sanders [Wed, 21 May 2014 10:11:24 +0000 (10:11 +0000)]
[asm matcher] Fix incorrect assertion when there are exactly 32 SubtargetFeatures
Summary:
The minimal type needs to hold a value of '1ULL << 31' but
getMinimalTypeForRange() is called with a value of '1ULL << 32'.
This patch will also reduce the size of the matcher table when there are 8
or 16 SubtargetFeatures.
Also added a dump of the SubtargetFeatures to the -debug output and corrected getMinimalTypeInRange() to consider 0xffffffffull to be a 32-bit value.
The testcase is that no existing code is broken and that LLVM still successfully
compiles after adding MIPS64r6 CodeGen support.
Reviewers: rafael
Reviewed By: rafael
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D3787
llvm-svn: 209288
Evgeniy Stepanov [Wed, 21 May 2014 09:56:28 +0000 (09:56 +0000)]
[msan] Implement MSAN_OPTIONS=print_stats=1.
llvm-svn: 209287
Evgeniy Stepanov [Wed, 21 May 2014 09:42:56 +0000 (09:42 +0000)]
[tsan] Fix gotsan build.
llvm-svn: 209286
Yaron Keren [Wed, 21 May 2014 09:02:49 +0000 (09:02 +0000)]
DeclVisitor is not used here.
llvm-svn: 209285
Evgeniy Stepanov [Wed, 21 May 2014 09:02:13 +0000 (09:02 +0000)]
[msan] Chained origins re-design.
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
Kostya Serebryany [Wed, 21 May 2014 08:30:18 +0000 (08:30 +0000)]
[lsan] disable lsan if wordsize is not 64
llvm-svn: 209283
Evgeniy Stepanov [Wed, 21 May 2014 08:21:14 +0000 (08:21 +0000)]
[asan] Fix x86 asm instrumentation to preserve flags.
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
Kostya Serebryany [Wed, 21 May 2014 08:21:13 +0000 (08:21 +0000)]
[sanitizer] fix linux_dirent for SANITIZER_X32; based on patch by H.J. Lu
llvm-svn: 209281
Evgeniy Stepanov [Wed, 21 May 2014 08:14:24 +0000 (08:14 +0000)]
[asan] Fix x86-32 asm instrumentation to preserve flags.
Patch by Yuri Gorshenin.
llvm-svn: 209280
Kostya Serebryany [Wed, 21 May 2014 08:01:44 +0000 (08:01 +0000)]
[sanitizer] define SANITIZER_X32 and use it in ThreadDescriptorSize; partially based on patch by H.J. Lu
llvm-svn: 209279
Kostya Serebryany [Wed, 21 May 2014 07:49:03 +0000 (07:49 +0000)]
Cast pointers to uptr when calling internal_syscall
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
Kostya Serebryany [Wed, 21 May 2014 07:34:03 +0000 (07:34 +0000)]
Use 64-bit pointer to unwind stack for x86-64
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
Alp Toker [Wed, 21 May 2014 06:13:51 +0000 (06:13 +0000)]
Preprocessor: support defined() with operator names for MS compatibility
Also flesh out missing tests, improve diagnostic QOI and fix a couple of corner
cases found in the process.
Fixes PR10606.
llvm-svn: 209276
Craig Topper [Wed, 21 May 2014 06:02:52 +0000 (06:02 +0000)]
[C++11] Use 'nullptr'. Parser edition.
llvm-svn: 209275
Rui Ueyama [Wed, 21 May 2014 05:56:31 +0000 (05:56 +0000)]
[PECOFF] Discard .debug sections.
llvm-svn: 209274
Saleem Abdulrasool [Wed, 21 May 2014 05:15:01 +0000 (05:15 +0000)]
MC: mark COFF .drectve section as REMOVE
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
Craig Topper [Wed, 21 May 2014 05:09:00 +0000 (05:09 +0000)]
[C++11] Use 'nullptr'. CodeGen edition.
llvm-svn: 209272
Rui Ueyama [Wed, 21 May 2014 04:17:05 +0000 (04:17 +0000)]
[PECOFF] Make COFFObjectReader thread-safe.
llvm-svn: 209271
Jim Ingham [Wed, 21 May 2014 03:58:03 +0000 (03:58 +0000)]
ReExported symbols can point to a library that doesn't actually
contain the symbol, but just reexports wholesale from another
library. Handle this case.
<rdar://problem/
16977589>
llvm-svn: 209270
Richard Smith [Wed, 21 May 2014 02:46:14 +0000 (02:46 +0000)]
[modules] Add module maps for LLVM. These are not quite ready for prime-time
yet, but only a few more Clang patches need to land. (I have 'ninja check'
passing locally.)
llvm-svn: 209269
Alp Toker [Wed, 21 May 2014 02:08:10 +0000 (02:08 +0000)]
utils/CmpDriver: add brief documentation to indicate what this does
llvm-svn: 209268
Saleem Abdulrasool [Wed, 21 May 2014 01:25:24 +0000 (01:25 +0000)]
ARM: correct bundle generation for MOV32T relocations
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
Alp Toker [Wed, 21 May 2014 01:12:41 +0000 (01:12 +0000)]
SourceManager: Use setMainFileID() consistently
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
Richard Smith [Wed, 21 May 2014 00:33:49 +0000 (00:33 +0000)]
[modules] Add initial module map for libc++.
llvm-svn: 209265
Argyrios Kyrtzidis [Wed, 21 May 2014 00:24:20 +0000 (00:24 +0000)]
[objcmt] Make sure we don't edit the return type to add 'instancetype' if the return type is already that.
rdar://
16961577
llvm-svn: 209264
Eric Christopher [Wed, 21 May 2014 00:20:01 +0000 (00:20 +0000)]
This command line option is only used in one place. Move it there and
rename it to something more descriptive.
llvm-svn: 209263
Eric Christopher [Wed, 21 May 2014 00:02:50 +0000 (00:02 +0000)]
Add a comment here.
llvm-svn: 209262
Eric Christopher [Wed, 21 May 2014 00:00:03 +0000 (00:00 +0000)]
Update for paired llvm commit with AsmVerbose.
llvm-svn: 209261
Eric Christopher [Wed, 21 May 2014 00:00:01 +0000 (00:00 +0000)]
Remove test. Replacing it with a backend test with the optimized IR.
llvm-svn: 209260
Eric Christopher [Tue, 20 May 2014 23:59:54 +0000 (23:59 +0000)]
Move this test to the backend from the frontend.
llvm-svn: 209259
Eric Christopher [Tue, 20 May 2014 23:59:50 +0000 (23:59 +0000)]
Move the verbose asm option to be part of the options struct and
set appropriately.
llvm-svn: 209258
Justin Bogner [Tue, 20 May 2014 23:52:11 +0000 (23:52 +0000)]
libclang: Give each VirtualFileOverlay unit test its own name
llvm-svn: 209257
Greg Fitzgerald [Tue, 20 May 2014 23:31:26 +0000 (23:31 +0000)]
XFAIL ptrace test on arm
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
Eric Christopher [Tue, 20 May 2014 23:23:51 +0000 (23:23 +0000)]
Make this test emit llvm IR rather than assembly.
llvm-svn: 209255
Rui Ueyama [Tue, 20 May 2014 23:05:09 +0000 (23:05 +0000)]
[PECOFF] Acquire mutex before accessing shared objects.
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
Kevin Enderby [Tue, 20 May 2014 23:04:47 +0000 (23:04 +0000)]
Update MachOObjectFile::getSymbolAddress so it returns UnknownAddressOrSize
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
Alexey Samsonov [Tue, 20 May 2014 22:40:31 +0000 (22:40 +0000)]
Fix test added in r209242: llc shouldn't create files in source tree
llvm-svn: 209252
David Blaikie [Tue, 20 May 2014 22:33:09 +0000 (22:33 +0000)]
Revert "DebugInfo: Assume all subprogram DIEs have been created before any 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