Ted Kremenek [Thu, 6 Dec 2012 19:40:32 +0000 (19:40 +0000)]
Revert "[analyzer] Aggressively cut back on the canonicalization in RegionStore."
Jordan and I discussed this, and we are going to do this another way.
llvm-svn: 169538
Evan Cheng [Thu, 6 Dec 2012 19:13:27 +0000 (19:13 +0000)]
Replace r169459 with something safer. Rather than having computeMaskedBits to
understand target implementation of any_extend / extload, just generate
zero_extend in place of any_extend for liveouts when the target knows the
zero_extend will be implicit (e.g. ARM ldrb / ldrh) or folded (e.g. x86 movz).
rdar://
12771555
llvm-svn: 169536
Benjamin Kramer [Thu, 6 Dec 2012 19:09:30 +0000 (19:09 +0000)]
Add move semantics to PartialDiagnostic, which can be very expensive to copy.
llvm-svn: 169535
Jakub Staszak [Thu, 6 Dec 2012 19:05:46 +0000 (19:05 +0000)]
Remove unneeded function, since PR8156 was fixed over a year ago.
llvm-svn: 169534
Matthew Curtis [Thu, 6 Dec 2012 19:03:09 +0000 (19:03 +0000)]
Un-XFAIL hexagon-toolchain.c test for mingw32
llvm-svn: 169533
Jordan Rose [Thu, 6 Dec 2012 19:01:24 +0000 (19:01 +0000)]
Allow modifying an ImmutableMap without canonicalizing it immediately.
This is an alternative to the ImmutableMapRef interface where a factory
should still be canonicalizing by default, but in certain cases an
improvement can be made by delaying the canonicalization.
llvm-svn: 169532
Argyrios Kyrtzidis [Thu, 6 Dec 2012 18:59:10 +0000 (18:59 +0000)]
Add a bit on FunctionDecl/ObjCMethodDecl to indicate if there was a body
that was skipped by the parser.
llvm-svn: 169531
Jordan Rose [Thu, 6 Dec 2012 18:58:29 +0000 (18:58 +0000)]
[analyzer] Remove isa<> followed by dyn_cast<>.
llvm-svn: 169530
Jordan Rose [Thu, 6 Dec 2012 18:58:26 +0000 (18:58 +0000)]
[analyzer] Remove unused fields from ExprEngine.
'currStmt', 'CleanedState', and 'EntryNode' were being set, but only ever
used locally.
llvm-svn: 169529
Jordan Rose [Thu, 6 Dec 2012 18:58:22 +0000 (18:58 +0000)]
[analyzer] Remove checks that predate the linearized CFG.
llvm-svn: 169528
Jordan Rose [Thu, 6 Dec 2012 18:58:18 +0000 (18:58 +0000)]
[analyzer] Simplify RetainCountChecker's handling of dead symbols.
Previously we made three passes over the set of dead symbols, and removed
them from the state /twice/. Now we combine the autorelease pass and the
symbol death pass, and only have to remove the bindings for the symbols
that leaked.
llvm-svn: 169527
Jordan Rose [Thu, 6 Dec 2012 18:58:15 +0000 (18:58 +0000)]
[analyzer] Use a smarter algorithm to find the last block in an inlined call.
Previously we would search for the last statement, then back up to the
entrance of the block that contained that statement. Now, while we're
scanning for the statement, we just keep track of which blocks are being
exited (in reverse order).
llvm-svn: 169526
Jordan Rose [Thu, 6 Dec 2012 18:58:12 +0000 (18:58 +0000)]
[analyzer] Speed up ExplodedNode::Profile by avoiding copy constructors.
ProgramStateRef::Retain isn't free!
llvm-svn: 169525
Jordan Rose [Thu, 6 Dec 2012 18:58:09 +0000 (18:58 +0000)]
[analyzer] Use optimized assumeDual for branches.
This doesn't seem to make much of a difference in practice, but it does
have the potential to avoid a trip through the constraint manager.
llvm-svn: 169524
Jordan Rose [Thu, 6 Dec 2012 18:58:06 +0000 (18:58 +0000)]
[analyzer] Aggressively cut back on the canonicalization in RegionStore.
Whenever we touch a single bindings cluster multiple times, we can delay
canonicalizing it until the final access. This has some interesting
implications, in particular that we shouldn't remove an /empty/ cluster
from the top-level map until canonicalization.
This is good for a 2% speedup or so on the test case in
<rdar://problem/
12810842>
llvm-svn: 169523
Jordan Rose [Thu, 6 Dec 2012 18:58:01 +0000 (18:58 +0000)]
[analyzer] Remove bindExprAndLocation, which does extra work for no gain.
This feature was probably intended to improve diagnostics, but was currently
only used when dumping the Environment. It shows what location a given value
was loaded from, e.g. when evaluating an LValueToRValue cast.
llvm-svn: 169522
Jakub Staszak [Thu, 6 Dec 2012 18:22:59 +0000 (18:22 +0000)]
Simplify code.
llvm-svn: 169521
Alexander Kornienko [Thu, 6 Dec 2012 18:03:27 +0000 (18:03 +0000)]
Clang-format: IndentCaseLabels option, proper namespace handling
Summary: + tests arranged in groups, as their number is already quite large.
Reviewers: djasper, klimek
Reviewed By: djasper
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D185
llvm-svn: 169520
Fariborz Jahanian [Thu, 6 Dec 2012 17:50:40 +0000 (17:50 +0000)]
Fixes a typo in this test.
llvm-svn: 169519
Alexander Kornienko [Thu, 6 Dec 2012 17:49:17 +0000 (17:49 +0000)]
Clang-format: detect unbalanced braces.
Reviewers: klimek, djasper
Reviewed By: klimek
CC: cfe-commits, silvas
Differential Revision: http://llvm-reviews.chandlerc.com/D176
llvm-svn: 169518
Matthew Curtis [Thu, 6 Dec 2012 17:49:03 +0000 (17:49 +0000)]
Hexagon TC: Add/improve support for small data
threshold, pic, pie
llvm-svn: 169517
Nadav Rotem [Thu, 6 Dec 2012 17:34:13 +0000 (17:34 +0000)]
Fix a bug in the code that merges consecutive stores. Previously we did not
check if loads that happen in between stores alias with the first store in the
chain, only with the second store onwards.
llvm-svn: 169516
Daniel Malea [Thu, 6 Dec 2012 16:52:09 +0000 (16:52 +0000)]
Merge rename fix from libcxxabi (r169402: rename class with name that clashes with GCC 4.6/4.7)
llvm-svn: 169515
Kostya Serebryany [Thu, 6 Dec 2012 16:22:04 +0000 (16:22 +0000)]
[sanitizer] POD-ify the allocator cache
llvm-svn: 169514
Matthew Curtis [Thu, 6 Dec 2012 16:01:06 +0000 (16:01 +0000)]
Fix hexagon-toolchain.c test to handle versioned clang executables.
llvm-svn: 169513
Matthew Curtis [Thu, 6 Dec 2012 15:46:07 +0000 (15:46 +0000)]
Hexagon TC: Reimplement Link::ConstructJob to call
linker directly
Rather than calling gcc.
llvm-svn: 169512
Dmitry Vyukov [Thu, 6 Dec 2012 15:42:54 +0000 (15:42 +0000)]
tsan: fix lint warning and make output tests more robust
llvm-svn: 169511
Benjamin Kramer [Thu, 6 Dec 2012 15:42:21 +0000 (15:42 +0000)]
Sema: Don't emit a warning when __func__ is used in a lambda outside of a function.
Fixes PR14518.
llvm-svn: 169510
NAKAMURA Takumi [Thu, 6 Dec 2012 14:42:56 +0000 (14:42 +0000)]
test/Driver/hexagon-toolchain.c: Unbreak XPASS. Cygwin can be treated as unix-like system.
llvm-svn: 169509
Manuel Klimek [Thu, 6 Dec 2012 14:42:48 +0000 (14:42 +0000)]
Implements multiple parents in the parent map.
Previously we would match the last visited parent, which in the
case of template instantiations was the last instantiated template.
llvm-svn: 169508
Kostya Serebryany [Thu, 6 Dec 2012 14:39:41 +0000 (14:39 +0000)]
[asan/msan] one more test for 32-bit allocator + minor code simplification
llvm-svn: 169507
Kostya Serebryany [Thu, 6 Dec 2012 14:27:32 +0000 (14:27 +0000)]
[asan/msan] add BulkAllocate to the 32-bit allocator (and a test)
llvm-svn: 169506
Matthew Curtis [Thu, 6 Dec 2012 14:16:43 +0000 (14:16 +0000)]
Hexagon TC: Move getHexagonTargetCPU from Tools.cpp to
ToolChains.cpp
This is in anticipation of forthcoming library path changes.
Also ...
- Fixes some inconsistencies in how the arch is passed to tools.
- Add test cases for various forms of arch flags
llvm-svn: 169505
NAKAMURA Takumi [Thu, 6 Dec 2012 13:38:00 +0000 (13:38 +0000)]
MemorySanitizer.cpp: Suppress a warning. [-Wunused-variable]
llvm-svn: 169504
Kostya Serebryany [Thu, 6 Dec 2012 13:34:11 +0000 (13:34 +0000)]
[asan/msan] refactor allocator's BulkAllocate (move to AllocatorFreeList)
llvm-svn: 169503
Dmitry Vyukov [Thu, 6 Dec 2012 13:32:49 +0000 (13:32 +0000)]
tsan: add new file to cmake
llvm-svn: 169502
Dmitry Vyukov [Thu, 6 Dec 2012 13:20:37 +0000 (13:20 +0000)]
tsan: add some more functions for java filtering
llvm-svn: 169501
Daniel Jasper [Thu, 6 Dec 2012 13:16:39 +0000 (13:16 +0000)]
Improve clang-format's handling of unary operators.
llvm-svn: 169500
Kostya Serebryany [Thu, 6 Dec 2012 13:13:58 +0000 (13:13 +0000)]
[asan/msan] add GetBlockBegin to the 32-bit allocator (+test)
llvm-svn: 169499
Matthew Curtis [Thu, 6 Dec 2012 13:06:19 +0000 (13:06 +0000)]
Disable hexagon toolchain test on windows targets
llvm-svn: 169498
Kostya Serebryany [Thu, 6 Dec 2012 13:00:11 +0000 (13:00 +0000)]
[asan/msan] one more test for 32-bit allocator
llvm-svn: 169497
Kostya Serebryany [Thu, 6 Dec 2012 12:49:28 +0000 (12:49 +0000)]
[asan/msan] new 32-bit allocator, basic functionality so far
llvm-svn: 169496
Matthew Curtis [Thu, 6 Dec 2012 12:43:18 +0000 (12:43 +0000)]
Hexagon TC: Update toolchain to add appropriate include
paths
- Inherit from Linux rather than ToolChain
- Override AddClangSystemIncludeArgs and AddClangCXXStdlibIncludeArgs
to properly set include paths.
llvm-svn: 169495
Dmitry Vyukov [Thu, 6 Dec 2012 12:42:53 +0000 (12:42 +0000)]
tsan: add 'free' to java nonsense reports
llvm-svn: 169494
Dmitry Vyukov [Thu, 6 Dec 2012 12:16:15 +0000 (12:16 +0000)]
tsan: add mutexsets to reports
With this change reports say what mutexes the threads hold around the racy memory accesses.
llvm-svn: 169493
NAKAMURA Takumi [Thu, 6 Dec 2012 12:05:25 +0000 (12:05 +0000)]
clang/test/CodeGen/2008-01-07-UnusualIntSize.c: Add triple x86_64. It doesn't assume 32-bit target, for now.
llvm-svn: 169492
Evgeniy Stepanov [Thu, 6 Dec 2012 11:58:59 +0000 (11:58 +0000)]
[msan] Fix a typo in a comment.
llvm-svn: 169491
Evgeniy Stepanov [Thu, 6 Dec 2012 11:41:03 +0000 (11:41 +0000)]
[msan] Do not store origin for clean values.
Instead of unconditionally storing origin with every application store,
only do this when the shadow of the stored value is != 0.
This change also delays instrumentation of stores until after the walk over
function's instructions, because adding new basic blocks confuses InstVisitor.
We only keep 1 origin value per 4 bytes of application memory. This change
fixes the bug when a store of a single clean byte wiped the origin for the
whole 4-byte area.
Since stores of uninitialized values are relatively uncommon, this change
improves performance of track-origins mode by 5% median and by up to 47% on
specs.
llvm-svn: 169490
Chandler Carruth [Thu, 6 Dec 2012 11:14:44 +0000 (11:14 +0000)]
Rework the bitfield access IR generation to address PR13619 and
generally support the C++11 memory model requirements for bitfield
accesses by relying more heavily on LLVM's memory model.
The primary change this introduces is to move from a manually aligned
and strided access pattern across the bits of the bitfield to a much
simpler lump access of all bits in the bitfield followed by math to
extract the bits relevant for the particular field.
This simplifies the code significantly, but relies on LLVM to
intelligently lowering these integers.
I have tested LLVM's lowering both synthetically and in benchmarks. The
lowering appears to be functional, and there are no really significant
performance regressions. Different code patterns accessing bitfields
will vary in how this impacts them. The only real regressions I'm seeing
are a few patterns where the LLVM code generation for loads that feed
directly into a mask operation don't take advantage of the x86 ability
to do a smaller load and a cheap zero-extension. This doesn't regress
any benchmark in the nightly test suite on my box past the noise
threshold, but my box is quite noisy. I'll be watching the LNT numbers,
and will look into further improvements to the LLVM lowering as needed.
llvm-svn: 169489
Daniel Jasper [Thu, 6 Dec 2012 09:56:08 +0000 (09:56 +0000)]
"<<" alignment for clang-format.
Also, small fix for handling the first token correctly.
Review: http://llvm-reviews.chandlerc.com/D177
llvm-svn: 169488
Andy Gibbs [Thu, 6 Dec 2012 07:59:18 +0000 (07:59 +0000)]
Integrate polly test-suite into an llvm "make check-all" if built as part of the whole using cmake.
llvm-svn: 169487
Bill Wendling [Thu, 6 Dec 2012 07:55:19 +0000 (07:55 +0000)]
s/getLowerBoundDefault/getDefaultLowerBound/ for consistency. Also put the more natural check first in the if-then statement.
llvm-svn: 169486
Bill Wendling [Thu, 6 Dec 2012 07:43:17 +0000 (07:43 +0000)]
Remove unused variable.
llvm-svn: 169485
Bill Wendling [Thu, 6 Dec 2012 07:38:10 +0000 (07:38 +0000)]
Handle non-default array bounds.
Some languages, e.g. Ada and Pascal, allow you to specify that the array bounds
are different from the default (1 in these cases). If we have a lower bound
that's non-default, then we emit the lower bound. We also calculate the correct
upper bound in those cases.
llvm-svn: 169484
Craig Topper [Thu, 6 Dec 2012 07:31:16 +0000 (07:31 +0000)]
Remove intrinsic specific instructions for (V)MOVQUmr with patterns pointing to the normal instructions.
llvm-svn: 169482
Ted Kremenek [Thu, 6 Dec 2012 07:17:26 +0000 (07:17 +0000)]
Use the BlockDecl captures list to infer the direct captures for a BlockDataRegion. Fixes <rdar://problem/
12415065>.
We still need to do a recursive walk to determine all static/global variables
referenced by a block, which is needed for region invalidation.
llvm-svn: 169481
Ted Kremenek [Thu, 6 Dec 2012 07:17:20 +0000 (07:17 +0000)]
Only provide explicit getCapturedRegion() and getOriginalRegion() from referenced_vars_iterator.
This is a nice conceptual cleanup.
llvm-svn: 169480
Ted Kremenek [Thu, 6 Dec 2012 07:17:13 +0000 (07:17 +0000)]
Pull logic to map from VarDecl* to captured region using a helper function. WIP.
llvm-svn: 169479
Ted Kremenek [Thu, 6 Dec 2012 07:17:04 +0000 (07:17 +0000)]
Use 'getOriginalRegion()' rather than going through the logic to recreate it.
llvm-svn: 169478
Craig Topper [Thu, 6 Dec 2012 06:49:16 +0000 (06:49 +0000)]
Mark MOVDQ(A/U)rm as ReMaterializable. Mark all MOVDQ(A/U) instructions as neverHasSideEffects.
llvm-svn: 169477
Richard Smith [Thu, 6 Dec 2012 06:44:44 +0000 (06:44 +0000)]
Fix http://stackoverflow.com/questions/
13521163
Don't require that, during template deduction, a template specialization type
as a function parameter has at least as many template arguments as one used in
a function argument (not even if the argument has been resolved to an exact
type); the additional parameters might be provided by default template
arguments in the template. We don't need this check, since we now implement
[temp.deduct.call]p4 with an additional check after deduction.
llvm-svn: 169475
Kostya Serebryany [Thu, 6 Dec 2012 06:10:31 +0000 (06:10 +0000)]
[tsan] add MmapAlignedOrDie
llvm-svn: 169474
Richard Smith [Thu, 6 Dec 2012 03:04:50 +0000 (03:04 +0000)]
Don't use dyn_cast on a Type* which might not be canonical. Fixes an extremely obscure record layout bug.
llvm-svn: 169467
Jason Molenda [Thu, 6 Dec 2012 02:49:20 +0000 (02:49 +0000)]
Fix ABIMacOSX_i386::RegisterIsVolatile to return the negated value of
RegisterIsCalleeSaved. Add ebp back to the list of registers that
are callee saved.
<rdar://problem/
12817918>
llvm-svn: 169466
Greg Clayton [Thu, 6 Dec 2012 02:33:54 +0000 (02:33 +0000)]
<rdar://problem/
12560257>
Fixed zero sized arrays to work correctly. This will only happen once we get a clang that emits correct debug info for zero sized arrays. For now I have marked the TestStructTypes.py as an expected failure.
llvm-svn: 169465
Evan Cheng [Thu, 6 Dec 2012 02:29:29 +0000 (02:29 +0000)]
Properly fix the tes.
llvm-svn: 169464
NAKAMURA Takumi [Thu, 6 Dec 2012 02:22:58 +0000 (02:22 +0000)]
llvm/test/CodeGen/ARM/extload-knownzero.ll: Try to unbreak, to add -O0. I guess Chad expects fastisel here.
llvm-svn: 169463
NAKAMURA Takumi [Thu, 6 Dec 2012 02:00:13 +0000 (02:00 +0000)]
Revert r169456, "change MCContext to work on the doInitialization/doFinalization model"
It broke many builders.
llvm-svn: 169462
Sean Callanan [Thu, 6 Dec 2012 01:35:38 +0000 (01:35 +0000)]
The expression parser will now check the validity
of the "self"/"this" pointer for the current stack
frame before wrapping expressions in C++ or
Objective-C methods. This works around bad debug
info where the compiler emits a "this" or "self"
but doesn't give any way to find its location.
<rdar://problem/
12809985>
llvm-svn: 169461
Chad Rosier [Thu, 6 Dec 2012 01:34:31 +0000 (01:34 +0000)]
[arm fast-isel] Make the fast-isel implementation of memcpy respect alignment.
rdar://
12821569
llvm-svn: 169460
Evan Cheng [Thu, 6 Dec 2012 01:28:01 +0000 (01:28 +0000)]
Let targets provide hooks that compute known zero and ones for any_extend
and extload's. If they are implemented as zero-extend, or implicitly
zero-extend, then this can enable more demanded bits optimizations. e.g.
define void @foo(i16* %ptr, i32 %a) nounwind {
entry:
%tmp1 = icmp ult i32 %a, 100
br i1 %tmp1, label %bb1, label %bb2
bb1:
%tmp2 = load i16* %ptr, align 2
br label %bb2
bb2:
%tmp3 = phi i16 [ 0, %entry ], [ %tmp2, %bb1 ]
%cmp = icmp ult i16 %tmp3, 24
br i1 %cmp, label %bb3, label %exit
bb3:
call void @bar() nounwind
br label %exit
exit:
ret void
}
This compiles to the followings before:
push {lr}
mov r2, #0
cmp r1, #99
bhi LBB0_2
@ BB#1: @ %bb1
ldrh r2, [r0]
LBB0_2: @ %bb2
uxth r0, r2
cmp r0, #23
bhi LBB0_4
@ BB#3: @ %bb3
bl _bar
LBB0_4: @ %exit
pop {lr}
bx lr
The uxth is not needed since ldrh implicitly zero-extend the high bits. With
this change it's eliminated.
rdar://
12771555
llvm-svn: 169459
NAKAMURA Takumi [Thu, 6 Dec 2012 01:09:31 +0000 (01:09 +0000)]
Disable clang/test/Preprocessor/macro-multiline.c for now, while investigating lit.ShUtil.parser.
llvm-svn: 169458
Fariborz Jahanian [Thu, 6 Dec 2012 00:57:28 +0000 (00:57 +0000)]
more test of template declarations in a
<declaration> XML tag. // rdar://
12378714
llvm-svn: 169457
Pedro Artigas [Thu, 6 Dec 2012 00:50:55 +0000 (00:50 +0000)]
change MCContext to work on the doInitialization/doFinalization model
reviewed by Evan Cheng <evan.cheng@apple.com>
llvm-svn: 169456
Bill Wendling [Thu, 6 Dec 2012 00:30:20 +0000 (00:30 +0000)]
Set the 'MadeChange' variable if we are deleting blocks.
llvm-svn: 169455
Daniel Malea [Thu, 6 Dec 2012 00:10:37 +0000 (00:10 +0000)]
Move isprint8() into lldb_private as per post-commit review from Stefanus
llvm-svn: 169454
Fariborz Jahanian [Thu, 6 Dec 2012 00:09:40 +0000 (00:09 +0000)]
More C++ testing of declarations embedded in
<declaration> tag of Comment XML and fixing
DeclPrint of templates along the way - wip.
//rdar://
12378714
llvm-svn: 169453
Michael Ilseman [Thu, 6 Dec 2012 00:07:09 +0000 (00:07 +0000)]
Have CannotBeNegativeZero() be aware of the nsz fast-math flag
llvm-svn: 169452
Sean Callanan [Wed, 5 Dec 2012 23:37:14 +0000 (23:37 +0000)]
Rewrote the bitfield logic. Major changes include:
- Removed the BitfieldMap class because it is unnecessary.
We now just track the most recently added field.
- Moved the code that calculates bitfield widths so it
can also be used to determine whether it's necessary
to insert anonymous fields.
- Simplified the anonymous field calculation code into
three cases (two of which are resolved identically).
- Beefed up the bitfield testcase.
llvm-svn: 169449
Chad Rosier [Wed, 5 Dec 2012 23:35:10 +0000 (23:35 +0000)]
[driver, ms-inline asm] -fms-compatibility enables -fms-extensions, so this should enable
the AsmBlocks language extension as well.
rdar://
12808010
llvm-svn: 169448
Andrew Trick [Wed, 5 Dec 2012 23:32:44 +0000 (23:32 +0000)]
Taking ownership of indvars/lsr.
Evan nominated me for this a while back, and no one has offered to
save me from it.
llvm-svn: 169447
Richard Smith [Wed, 5 Dec 2012 23:15:33 +0000 (23:15 +0000)]
PR10867: Analogue of r169441 for when using external 'sh'. And actually run the test!
llvm-svn: 169446
Chad Rosier [Wed, 5 Dec 2012 23:08:09 +0000 (23:08 +0000)]
[driver, ms-inline asm] Have -fms-extensions enable the AsmBlocks language
option. MS-style inline asm can now be enabled by either -fasm-blocks or
-fms-extensions.
rdar://
12808010
llvm-svn: 169445
Jason Molenda [Wed, 5 Dec 2012 23:07:34 +0000 (23:07 +0000)]
Adding missing log->Printf instead of printf in Target::SetArchitecture
for target logging.
llvm-svn: 169444
Andrew Trick [Wed, 5 Dec 2012 23:05:22 +0000 (23:05 +0000)]
RegPressureTracker::dump(): Remove unnecessary argument.
llvm-svn: 169443
Richard Smith [Wed, 5 Dec 2012 22:59:28 +0000 (22:59 +0000)]
Looks like lit on Windows can't cope with parens here, and in any case, we shouldn't need them after r169441.
llvm-svn: 169442
Richard Smith [Wed, 5 Dec 2012 22:54:26 +0000 (22:54 +0000)]
PR10867. lit would interpret
RUN: a
RUN: b || true
as "a && (b || true)" in Tcl mode, and as "(a && b) || true" in sh mode.
Everyone seems to (quite reasonably) write tests assuming the Tcl behavior,
so use that in sh mode too.
llvm-svn: 169441
Fariborz Jahanian [Wed, 5 Dec 2012 22:53:06 +0000 (22:53 +0000)]
In DeclPrint add printing of '= default'
in constructors.
llvm-svn: 169440
Akira Hatanaka [Wed, 5 Dec 2012 22:43:07 +0000 (22:43 +0000)]
Do not run tests MappedMemoryTest.BasicWrite and MultipleWrite unless both
MF_READ and MF_WRITE are set.
llvm-svn: 169439
Michael J. Spencer [Wed, 5 Dec 2012 22:38:01 +0000 (22:38 +0000)]
Quick build fix for c++03 clang. This needs a proper solution. Note that these offsets are guaranteed to be correct by Endian.h.
llvm-svn: 169438
Richard Smith [Wed, 5 Dec 2012 22:33:14 +0000 (22:33 +0000)]
More workarounds for PR10867.
llvm-svn: 169437
Fariborz Jahanian [Wed, 5 Dec 2012 22:19:06 +0000 (22:19 +0000)]
In DeclPrint add printing of 'explicit'
constructors.
llvm-svn: 169435
Richard Smith [Wed, 5 Dec 2012 22:18:04 +0000 (22:18 +0000)]
Fix an egregiously broken test. This pattern doesn't work:
RUN: a
RUN: b || true
lit expands it to a && b || true, and the || true applies to both commands (thus ignoring failures in 'a')! This is PR10867 again.
llvm-svn: 169434
Eli Bendersky [Wed, 5 Dec 2012 22:11:02 +0000 (22:11 +0000)]
Change std::vector to SmallVector<4> and remove some unused methods.
This is more consistent with other vectors in this code. In addition, I ran some
tests compiling a large program and >96% of fragments have 4 or less fixups, so
SmallVector<4> is a good optimization.
llvm-svn: 169433
Jyotsna Verma [Wed, 5 Dec 2012 22:02:56 +0000 (22:02 +0000)]
Define new-value store instructions with base+immediate addressing mode
using multiclass.
llvm-svn: 169432
Greg Clayton [Wed, 5 Dec 2012 21:59:39 +0000 (21:59 +0000)]
<rdar://problem/
12560257>
Fixed arrays with a size of 1 to correctly have 1 member when DW_AT_upper_bound was set to zero and no other attributes were set.
llvm-svn: 169431
Argyrios Kyrtzidis [Wed, 5 Dec 2012 21:53:37 +0000 (21:53 +0000)]
[c-index-test] Introduce '-index-compile-db' which accepts a compilation database file
and does an '-index-file' for all compile commands in the database.
llvm-svn: 169430
Bill Wendling [Wed, 5 Dec 2012 21:43:37 +0000 (21:43 +0000)]
Fix name. The array is unboundED.
llvm-svn: 169429
Bill Wendling [Wed, 5 Dec 2012 21:43:30 +0000 (21:43 +0000)]
Fix name. The array is unboundED.
llvm-svn: 169428
Andrew Trick [Wed, 5 Dec 2012 21:37:50 +0000 (21:37 +0000)]
RegisterPressureTracker: fix findUseBetween to handle DebugValue
llvm-svn: 169427