platform/upstream/llvm.git
11 years agoHandle Unicode characters in fix-it replacement strings.
Jordan Rose [Fri, 7 Jun 2013 17:16:01 +0000 (17:16 +0000)]
Handle Unicode characters in fix-it replacement strings.

Patch by Sukolsak Sakshuwong!

llvm-svn: 183535

11 years ago[Object/COFF] BaseOfData field should be absent in PE32+.
Rui Ueyama [Fri, 7 Jun 2013 16:58:30 +0000 (16:58 +0000)]
[Object/COFF] BaseOfData field should be absent in PE32+.

llvm-svn: 183534

11 years agoSupport OpenBSD's native frame protection conventions.
Rafael Espindola [Fri, 7 Jun 2013 16:35:57 +0000 (16:35 +0000)]
Support OpenBSD's native frame protection conventions.

OpenBSD's stack smashing protection differs slightly from other
platforms:

  1. The smash handler function is "__stack_smash_handler(const char
     *funcname)" instead of "__stack_chk_fail(void)".

  2. There's a hidden "long __guard_local" object that gets linked
     into each executable and DSO.

Patch by Matthew Dempsky.

llvm-svn: 183533

11 years agoR600: Fix a potential iterator invalidation issue.
Benjamin Kramer [Fri, 7 Jun 2013 16:13:49 +0000 (16:13 +0000)]
R600: Fix a potential iterator invalidation issue.

As a bonus this reduces the loop from O(n^2) to O(n).

llvm-svn: 183532

11 years agofix up recogtion of block pointer type in my last patch.
Fariborz Jahanian [Fri, 7 Jun 2013 16:07:38 +0000 (16:07 +0000)]
fix up recogtion of block pointer type in my last patch.
// rdar://14085217.
e-This line, and those below, will be ignored--

M    lib/Sema/SemaExpr.cpp

llvm-svn: 183531

11 years agoFixed calculation of penalty when breaking tokens.
Alexander Kornienko [Fri, 7 Jun 2013 16:02:52 +0000 (16:02 +0000)]
Fixed calculation of penalty when breaking tokens.

Summary:
Introduced two new style parameters: PenaltyBreakComment and
PenaltyBreakString. Add penalty for each character of a breakable token beyond
the column limit (this relates mainly to comments, as they are broken only on
whitespace). Tuned PenaltyBreakComment to prefer comment breaking over breaking
inside most binary expressions.
Fixed a bug that prevented *, & and && from being considered TT_BinaryOperator
in the presense of adjacent comments.

Reviewers: klimek, djasper

Reviewed By: klimek

CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D933

llvm-svn: 183530

11 years ago[sanitizer] Handle SIOCGIFCONF ioctl.
Evgeniy Stepanov [Fri, 7 Jun 2013 15:49:38 +0000 (15:49 +0000)]
[sanitizer] Handle SIOCGIFCONF ioctl.

llvm-svn: 183529

11 years agoR600: Remove an extra break in R600OptimizeVectorRegisters.cpp
Vincent Lejeune [Fri, 7 Jun 2013 15:44:53 +0000 (15:44 +0000)]
R600: Remove an extra break in R600OptimizeVectorRegisters.cpp

llvm-svn: 183528

11 years ago[ASan] fix test case to use absolute paths
Alexey Samsonov [Fri, 7 Jun 2013 15:44:21 +0000 (15:44 +0000)]
[ASan] fix test case to use absolute paths

llvm-svn: 183527

11 years ago[llvm-symbolizer] rewrite r183213 in a more clear way
Alexey Samsonov [Fri, 7 Jun 2013 15:25:27 +0000 (15:25 +0000)]
[llvm-symbolizer] rewrite r183213 in a more clear way

llvm-svn: 183526

11 years agoBitVector: Do the right thing in all() when Size is a multiple of BITWORD_SIZE.
Benjamin Kramer [Fri, 7 Jun 2013 15:14:31 +0000 (15:14 +0000)]
BitVector: Do the right thing in all() when Size is a multiple of BITWORD_SIZE.

llvm-svn: 183525

11 years ago[ASan] An early return from InitializeAsanInterceptors() on Mac has been considered...
Alexander Potapenko [Fri, 7 Jun 2013 15:10:02 +0000 (15:10 +0000)]
[ASan] An early return from InitializeAsanInterceptors() on Mac has been considered unobvious.
Remove it and replace ASAN_INTERCEPT_FUNC with a no-op if SANITIZER_MAC==1.

llvm-svn: 183524

11 years ago[sanitizer] Fix Android build.
Evgeniy Stepanov [Fri, 7 Jun 2013 14:56:54 +0000 (14:56 +0000)]
[sanitizer] Fix Android build.

llvm-svn: 183523

11 years agoTest case for r183481.
Howard Hinnant [Fri, 7 Jun 2013 14:24:18 +0000 (14:24 +0000)]
Test case for r183481.

llvm-svn: 183522

11 years agoOptimize BitVector::all().
Benjamin Kramer [Fri, 7 Jun 2013 14:14:38 +0000 (14:14 +0000)]
Optimize BitVector::all().

llvm-svn: 183521

11 years ago[sanitizer] Fix windows build.
Evgeniy Stepanov [Fri, 7 Jun 2013 13:19:33 +0000 (13:19 +0000)]
[sanitizer] Fix windows build.

llvm-svn: 183518

11 years ago[sanitizer] ioctl interceptor.
Evgeniy Stepanov [Fri, 7 Jun 2013 13:00:47 +0000 (13:00 +0000)]
[sanitizer] ioctl interceptor.

ASan: disabled by default
MSan: enabled by default
TSan: disabled
llvm-svn: 183517

11 years agoAdds a test that verifies angle bracket locations.
Manuel Klimek [Fri, 7 Jun 2013 11:27:57 +0000 (11:27 +0000)]
Adds a test that verifies angle bracket locations.

Regression test to make sure TemplateSpecializationTypeLocs have the
correct locations for angle brackets.

llvm-svn: 183514

11 years agoReverts r183466: "Perform dynamic alignment computations..."
Manuel Klimek [Fri, 7 Jun 2013 11:27:53 +0000 (11:27 +0000)]
Reverts r183466: "Perform dynamic alignment computations..."

This introduces bugs in TemplateSpecializationTypeLoc's angle bracket
locations.

Regression test follows in a subsequent commit.

llvm-svn: 183513

11 years agoFold variable that's only used in assert into the assert.
Benjamin Kramer [Fri, 7 Jun 2013 11:23:35 +0000 (11:23 +0000)]
Fold variable that's only used in assert into the assert.

Avoids unused variable warnings in Release builds.

llvm-svn: 183512

11 years agoAdd a script to help us create source tar balls for the release.
Bill Wendling [Fri, 7 Jun 2013 11:15:30 +0000 (11:15 +0000)]
Add a script to help us create source tar balls for the release.

llvm-svn: 183509

11 years agoUse proper exit code.
Bill Wendling [Fri, 7 Jun 2013 11:14:37 +0000 (11:14 +0000)]
Use proper exit code.

llvm-svn: 183508

11 years agoDrop support for 32-bit PowerPC in sanitizer tools.
Alexey Samsonov [Fri, 7 Jun 2013 09:44:43 +0000 (09:44 +0000)]
Drop support for 32-bit PowerPC in sanitizer tools.

llvm-svn: 183499

11 years ago[ASan] create separate configs for running ASan lit tests in both 32- and 64-bit...
Alexey Samsonov [Fri, 7 Jun 2013 09:38:55 +0000 (09:38 +0000)]
[ASan] create separate configs for running ASan lit tests in both 32- and 64-bit mode. Clean up RUN-lines in tests.

llvm-svn: 183498

11 years agoCorrect wrong register in this example, pointed out by Baoshan Pang.
Duncan Sands [Fri, 7 Jun 2013 08:30:55 +0000 (08:30 +0000)]
Correct wrong register in this example, pointed out by Baoshan Pang.

llvm-svn: 183495

11 years agoDon't cache the instruction and register info from the TargetMachine, because
Bill Wendling [Fri, 7 Jun 2013 07:55:53 +0000 (07:55 +0000)]
Don't cache the instruction and register info from the TargetMachine, because
the internals of TargetMachine could change.

No functionality change intended.

llvm-svn: 183494

11 years agoDon't cache the instruction and register info from the TargetMachine, because
Bill Wendling [Fri, 7 Jun 2013 07:04:14 +0000 (07:04 +0000)]
Don't cache the instruction and register info from the TargetMachine, because
the internals of TargetMachine could change.

llvm-svn: 183493

11 years agoDon't cache the instruction and register info from the TargetMachine, because
Bill Wendling [Fri, 7 Jun 2013 06:30:15 +0000 (06:30 +0000)]
Don't cache the instruction and register info from the TargetMachine, because
the internals of TargetMachine could change.

llvm-svn: 183492

11 years agoDon't cache the instruction and register info from the TargetMachine, because
Bill Wendling [Fri, 7 Jun 2013 06:26:43 +0000 (06:26 +0000)]
Don't cache the instruction and register info from the TargetMachine, because
the internals of TargetMachine could change.

llvm-svn: 183491

11 years agoDon't cache the instruction and register info from the TargetMachine, because
Bill Wendling [Fri, 7 Jun 2013 06:19:56 +0000 (06:19 +0000)]
Don't cache the instruction and register info from the TargetMachine, because
the internals of TargetMachine could change.

llvm-svn: 183490

11 years ago[objc-arc] Ensure that the cfg path count does not overflow when we multiply TopDownP...
Michael Gottesman [Fri, 7 Jun 2013 06:16:49 +0000 (06:16 +0000)]
[objc-arc] Ensure that the cfg path count does not overflow when we multiply TopDownPathCount/BottomUpPathCount.

rdar://12480535

llvm-svn: 183489

11 years agoDon't cache the instruction and register info from the TargetMachine, because
Bill Wendling [Fri, 7 Jun 2013 05:54:19 +0000 (05:54 +0000)]
Don't cache the instruction and register info from the TargetMachine, because
the internals of TargetMachine could change.

llvm-svn: 183488

11 years agoReverting test commit
Faisal Vali [Fri, 7 Jun 2013 05:33:21 +0000 (05:33 +0000)]
Reverting test commit

llvm-svn: 183487

11 years agotest commit
Faisal Vali [Fri, 7 Jun 2013 05:19:33 +0000 (05:19 +0000)]
test commit

llvm-svn: 183486

11 years agoDon't cache the instruction info and register info objects.
Bill Wendling [Fri, 7 Jun 2013 05:00:11 +0000 (05:00 +0000)]
Don't cache the instruction info and register info objects.

These objects are internal to the TargetMachine object and may change.

llvm-svn: 183485

11 years agoDIBuilder: No functionality change.
Manman Ren [Fri, 7 Jun 2013 03:13:46 +0000 (03:13 +0000)]
DIBuilder: No functionality change.

Use the correct DIType when creating vector types.

llvm-svn: 183484

11 years agoPR16243: Use CXXThisOverride during template instantiation, and fix up the
Richard Smith [Fri, 7 Jun 2013 02:33:37 +0000 (02:33 +0000)]
PR16243: Use CXXThisOverride during template instantiation, and fix up the
places which weren't setting it up properly. This allows us to get the right
cv-qualifiers for 'this' when it appears outside a method body in a class
template.

llvm-svn: 183483

11 years agoTweaking Daniel Malea's fixes to Makefile.rules to ensure that we correctly pass...
Enrico Granata [Fri, 7 Jun 2013 01:58:52 +0000 (01:58 +0000)]
Tweaking Daniel Malea's fixes to Makefile.rules to ensure that we correctly pass -stdlib=libstdc++ to clang when compiling as well as when linking
Not doing this was causing link errors as clang was looking for libc++ symbols while linking against libstdc++

llvm-svn: 183482

11 years agoMinor bug fix for allowing an extension of const-qualified types in containers.
Howard Hinnant [Fri, 7 Jun 2013 01:56:37 +0000 (01:56 +0000)]
Minor bug fix for allowing an extension of const-qualified types in containers.

llvm-svn: 183481

11 years agoTweaks to the std::list (libstdc++ test case)
Enrico Granata [Fri, 7 Jun 2013 01:53:59 +0000 (01:53 +0000)]
Tweaks to the std::list (libstdc++ test case)

llvm-svn: 183480

11 years agoWhen we're synthesizing copy/move-assignment, we can't form a reference to an
Eli Friedman [Fri, 7 Jun 2013 01:48:56 +0000 (01:48 +0000)]
When we're synthesizing copy/move-assignment, we can't form a reference to an
invalid field; make sure we don't try.  Fixes <rdar://problem/14084171>.

llvm-svn: 183479

11 years ago[PECOFF][Writer] Implement the writer that can emit text section.
Rui Ueyama [Fri, 7 Jun 2013 01:31:51 +0000 (01:31 +0000)]
[PECOFF][Writer] Implement the writer that can emit text section.

lld can now output a valid Windows executable with a text section that does nothing
but just returns immediately. It's not able to handle relocations, symbol tables,
data sections, etc, so it still can't do anything practical, though.

Reviewers: Bigcheese

CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D892

llvm-svn: 183478

11 years agoARM sched model: Use the right resources for DIV
Arnold Schwaighofer [Fri, 7 Jun 2013 01:16:15 +0000 (01:16 +0000)]
ARM sched model: Use the right resources for DIV

llvm-svn: 183477

11 years agoMake the "SearchFilterByModuleListAndCU" work correctly for searches at the CompUnit
Jim Ingham [Fri, 7 Jun 2013 01:13:00 +0000 (01:13 +0000)]
Make the "SearchFilterByModuleListAndCU" work correctly for searches at the CompUnit
level.  Fixes a bug in "break set --source-pattern-regexp" when a shared library is
specified.

Also cleaned up the help text for --source-pattern-regexp so it is a little clearer.

<rdar://problem/14084261>

llvm-svn: 183476

11 years agodocumentation: remove confusing reference to properties.
Adrian Prantl [Fri, 7 Jun 2013 01:10:48 +0000 (01:10 +0000)]
documentation: remove confusing reference to properties.

llvm-svn: 183475

11 years agoObjC Debug Info: Emit the names of accessors whenever they diverge from
Adrian Prantl [Fri, 7 Jun 2013 01:10:45 +0000 (01:10 +0000)]
ObjC Debug Info: Emit the names of accessors whenever they diverge from
the default names, not just when the isImplicit flag is set.

rdar://problem/14035789

llvm-svn: 183474

11 years agoImprove documentation.
Adrian Prantl [Fri, 7 Jun 2013 01:10:41 +0000 (01:10 +0000)]
Improve documentation.

llvm-svn: 183473

11 years agoARM sched model: Add VFP div instruction on Swift
Arnold Schwaighofer [Fri, 7 Jun 2013 01:10:36 +0000 (01:10 +0000)]
ARM sched model: Add VFP div instruction on Swift

Reapply 183271.

llvm-svn: 183472

11 years agoblocks: fixes an ast bug when block pointer variable
Fariborz Jahanian [Fri, 7 Jun 2013 00:48:14 +0000 (00:48 +0000)]
blocks: fixes an ast bug when block pointer variable
is evaluated in a condition expression and then
dereferenced to envoke the block. This is
pr15663 and I applied a slight variation of the
patch with a test case. (patch is from
Arthur O'Dwyer). Also // rdar://14085217

llvm-svn: 183471

11 years ago<rdar://problem/14086944>
Greg Clayton [Fri, 7 Jun 2013 00:35:40 +0000 (00:35 +0000)]
<rdar://problem/14086944>

lldb doesn't autocomplete objective C class methods. The regular expression was looking for strings that started with the completion string that was passed in. For objective C class methods, this string starts with "+" which wasn't being escaped. Added many other escapes that were missing just in case.

llvm-svn: 183470

11 years agoDocument the extended detach packet.
Jim Ingham [Fri, 7 Jun 2013 00:22:49 +0000 (00:22 +0000)]
Document the extended detach packet.

llvm-svn: 183469

11 years agoDiagnose malformed x86 inline asm using 'y' constraint.
Tim Northover [Fri, 7 Jun 2013 00:04:50 +0000 (00:04 +0000)]
Diagnose malformed x86 inline asm using 'y' constraint.

X86's 'y' inline assembly constraint represents an MMX register, this change
prevents Clang from hitting an assertion when passed an incompatible type to
deal with.

llvm-svn: 183467

11 years agoPerform dynamic alignment computations so that the data in TypeLocs is
Eli Friedman [Fri, 7 Jun 2013 00:04:31 +0000 (00:04 +0000)]
Perform dynamic alignment computations so that the data in TypeLocs is
correctly aligned.  Not performing such computations led to misaligned loads,
which crash on some platforms and are generally bad on other platforms.

The implementation of TypeLocBuilder::pushImpl is rather messy; code using
TypeLocBuilder accidentally assumes that partial TypeLocs are
laid out like a complete TypeLoc.  As a followup, I intend to work on
fixing the TypeLocBuilder API to avoid exposing partial TypeLocs; this should
substantially simplify the implemementation.

Fixes PR16144.

llvm-svn: 183466

11 years agoCodeGenSchedule: Use resize instead of copying a vector
Arnold Schwaighofer [Fri, 7 Jun 2013 00:04:30 +0000 (00:04 +0000)]
CodeGenSchedule: Use resize instead of copying a vector

llvm-svn: 183465

11 years agoARM sched model: Add SIMD/VFP load/store instructions on Swift
Arnold Schwaighofer [Fri, 7 Jun 2013 00:04:28 +0000 (00:04 +0000)]
ARM sched model: Add SIMD/VFP load/store instructions on Swift

Reapply 183270 again (because three is a magic number).

This should now no longer seg fault after r183459.

llvm-svn: 183464

11 years ago[Sparc]: Use cmp instruction instead of subcc to compare integers.
Venkatraman Govindaraju [Fri, 7 Jun 2013 00:03:36 +0000 (00:03 +0000)]
[Sparc]: Use cmp instruction instead of subcc to compare integers.

llvm-svn: 183463

11 years agoImplement DR7
David Majnemer [Thu, 6 Jun 2013 23:43:20 +0000 (23:43 +0000)]
Implement DR7

Disallowing deriving from classes that have private virtual base classes
except in instances where the deriving class would be able to cast
itself to the private virtual base via a different derivation.

llvm-svn: 183462

11 years agoSimplify code. No functionality change.
Jakub Staszak [Thu, 6 Jun 2013 23:34:59 +0000 (23:34 +0000)]
Simplify code. No functionality change.

llvm-svn: 183461

11 years agoRemove unneeded #include.
Jakub Staszak [Thu, 6 Jun 2013 23:34:11 +0000 (23:34 +0000)]
Remove unneeded #include.

llvm-svn: 183460

11 years agoCodeGenSchedule: smallvector.push_back(smallvector[0]) is dangerous
Arnold Schwaighofer [Thu, 6 Jun 2013 23:23:14 +0000 (23:23 +0000)]
CodeGenSchedule: smallvector.push_back(smallvector[0]) is dangerous

The element passed to push_back is not copied before the vector reallocates.
The client needs to copy the element first before passing it to push_back.

No test case, will be tested by follow-up swift scheduler model change (it
segfaults without this change).

llvm-svn: 183459

11 years agoR600: Rewrite an awkward loop in R600MachineScheduler
Vincent Lejeune [Thu, 6 Jun 2013 23:08:32 +0000 (23:08 +0000)]
R600: Rewrite an awkward loop in R600MachineScheduler

llvm-svn: 183458

11 years agoRemove the debugserver "--open-connection" option and obey the hostname that is passe...
Greg Clayton [Thu, 6 Jun 2013 22:44:19 +0000 (22:44 +0000)]
Remove the debugserver "--open-connection" option and obey the hostname that is passed into debugserver.

you can now specify:

debugserver host:port
debugserver port
debugserver /path/to/file

When "host" is specified, we will only accept connections from that host. If host is not specified, we default to "localhost".

llvm-svn: 183457

11 years agoJeffrey Yasskin volunteered to benchmark the vectorizer on -O2 or -Os when compiling...
Nadav Rotem [Thu, 6 Jun 2013 22:35:47 +0000 (22:35 +0000)]
Jeffrey Yasskin volunteered to benchmark the vectorizer on -O2 or -Os when compiling chrome. This patch adds a new flag to enable vectorization on all levels and not only on -O3. It should go away once we make a decision.

llvm-svn: 183456

11 years ago[analyzer] Address Jordan’s code review for r183451
Anna Zaks [Thu, 6 Jun 2013 22:32:11 +0000 (22:32 +0000)]
[analyzer] Address Jordan’s code review for r183451

llvm-svn: 183455

11 years agoFix break in r183446 - helps to increment the iterator in a loop
David Blaikie [Thu, 6 Jun 2013 22:28:26 +0000 (22:28 +0000)]
Fix break in r183446 - helps to increment the iterator in a loop

llvm-svn: 183454

11 years ago<rdar://problem/14083928>
Enrico Granata [Thu, 6 Jun 2013 22:23:02 +0000 (22:23 +0000)]
<rdar://problem/14083928>

Making sure that if you invoke LLDB as lldb ./someBinary you can then launch the inferior with process launch —tty

llvm-svn: 183453

11 years agoAddress::GetSection() turns a weak pointer to a shared pointer which is a little...
Jim Ingham [Thu, 6 Jun 2013 22:16:56 +0000 (22:16 +0000)]
Address::GetSection() turns a weak pointer to a shared pointer which is a little slow.  So in Address::operator== & != do the
cheap GetOffset() comparison first and only compare the sections if that is true.

llvm-svn: 183452

11 years ago[analyzer] Ensure that pieces with invalid locations always get removed from the...
Anna Zaks [Thu, 6 Jun 2013 22:02:58 +0000 (22:02 +0000)]
[analyzer] Ensure that pieces with invalid locations always get removed from the BugReport

The function in which we were doing it used to be conditionalized. Add a new unconditional
cleanup step.

This fixes PR16227 (radar://14073870) - a crash when generating html output for one of the test files.

llvm-svn: 183451

11 years ago[analyzer] fixup the comment
Anna Zaks [Thu, 6 Jun 2013 22:02:55 +0000 (22:02 +0000)]
[analyzer] fixup the comment

llvm-svn: 183450

11 years ago[analyzer; new edges] Simplify edges in a C++11 for-range loop.
Jordan Rose [Thu, 6 Jun 2013 21:53:45 +0000 (21:53 +0000)]
[analyzer; new edges] Simplify edges in a C++11 for-range loop.

Previously our edges were completely broken here; now, the final result
is a very simple set of edges in most cases: one up to the "for" keyword
for context, and one into the body of the loop. This matches the behavior
for ObjC for-in loops.

In the AST, however, CXXForRangeStmts are handled very differently from
ObjCForCollectionStmts. Since they are specified in terms of equivalent
statements in the C++ standard, we actually have implicit AST nodes for
all of the semantic statements. This makes evaluation very easy, but
diagnostic locations a bit trickier. Fortunately, the problem can be
generally defined away by marking all of the implicit statements as
part of the top-level for-range statement.

One of the implicit statements in a for-range statement is the declaration
of implicit iterators __begin and __end. The CFG synthesizes two
separate DeclStmts to match each of these decls, but until now these
synthetic DeclStmts weren't in the function's ParentMap. Now, the CFG
keeps track of its synthetic statements, and the AnalysisDeclContext will
make sure to add them to the ParentMap.

<rdar://problem/14038483>

llvm-svn: 183449

11 years agoHardened the IR interpreter to prevent it from
Sean Callanan [Thu, 6 Jun 2013 21:14:35 +0000 (21:14 +0000)]
Hardened the IR interpreter to prevent it from
reading non-standard value sizes.

<rdar://problem/14081292>

llvm-svn: 183448

11 years agoRevert "ARM sched model: Add SIMD/VFP load/store instructions on Swift"
Arnold Schwaighofer [Thu, 6 Jun 2013 21:08:18 +0000 (21:08 +0000)]
Revert "ARM sched model: Add SIMD/VFP load/store instructions on Swift"

Breaks linux build bots (I thought the problem was something else).

llvm-svn: 183447

11 years agoDebug Info: simplify parameter ordering preservation
David Blaikie [Thu, 6 Jun 2013 21:04:51 +0000 (21:04 +0000)]
Debug Info: simplify parameter ordering preservation

Seems we emit the parameter ordering number (spuriously named 'arg
number') in the debug info, so there's no need to search through the
variable list to figure out the parameter ordering. This implementation
does 'always' do the work, even in non-optimized debug info (the
previous implementation checked the existence of the 'variables' list on
the subprogram which is only present in optimized builds).

No intended functionality change.

llvm-svn: 183446

11 years agoARM sched model: Add SIMD/VFP load/store instructions on Swift
Arnold Schwaighofer [Thu, 6 Jun 2013 21:02:18 +0000 (21:02 +0000)]
ARM sched model: Add SIMD/VFP load/store instructions on Swift

Reapply 183270.

llvm-svn: 183445

11 years agocpp11-migrate: Add EnableHeaderModification flag
Edwin Vane [Thu, 6 Jun 2013 20:32:29 +0000 (20:32 +0000)]
cpp11-migrate: Add EnableHeaderModification flag

First step toward supporting header modifications: adding a flag that turns on
such modifications. Eventually header modifications will be on by default but
until all the kinks can be worked out, they must be explicitly enabled.

llvm-svn: 183444

11 years agocpp11-migrate: Refactor how global options are passed to Transforms
Edwin Vane [Thu, 6 Jun 2013 20:31:52 +0000 (20:31 +0000)]
cpp11-migrate: Refactor how global options are passed to Transforms

Refactored how global options are passed to Transforms to avoid widespread
changes every time a new global option is added.

Tests updated to reflect new interface.

llvm-svn: 183443

11 years agoMove the test for the data in code into the ARM directory as it is an ARM
Kevin Enderby [Thu, 6 Jun 2013 20:28:28 +0000 (20:28 +0000)]
Move the test for the data in code into the ARM directory as it is an ARM
binary that is used for the test.  Caught by Jim Grosbach!

rdar://11791371

llvm-svn: 183442

11 years agoARM sched model: Add integer VFP/SIMD instructions on Swift
Arnold Schwaighofer [Thu, 6 Jun 2013 20:26:18 +0000 (20:26 +0000)]
ARM sched model: Add integer VFP/SIMD instructions on Swift

Reapply 183269.

llvm-svn: 183441

11 years agoFixed a problem where evaluating a breakpoint
Sean Callanan [Thu, 6 Jun 2013 20:18:50 +0000 (20:18 +0000)]
Fixed a problem where evaluating a breakpoint
condition in two different processes (with the
same target) could cause crashes.  Now the breakpoint
condition is always evaluated (and possibly parsed)
by one thread at a time.

<rdar://problem/14083737>

llvm-svn: 183440

11 years agoRe-apply "Use IRBuilder instead of ConstantInt methods." with the fixed issues.
Jakub Staszak [Thu, 6 Jun 2013 20:18:46 +0000 (20:18 +0000)]
Re-apply "Use IRBuilder instead of ConstantInt methods." with the fixed issues.

llvm-svn: 183439

11 years agoARM sched model: Add integer load/store instructions on Swift
Arnold Schwaighofer [Thu, 6 Jun 2013 20:11:56 +0000 (20:11 +0000)]
ARM sched model: Add integer load/store instructions on Swift

Reapply 183268.

llvm-svn: 183438

11 years ago[libclang] CMake: add an option to control building libclang as a static library...
Argyrios Kyrtzidis [Thu, 6 Jun 2013 19:51:37 +0000 (19:51 +0000)]
[libclang] CMake: add an option to control building libclang as a static library (off by default)

This avoids building libclang twice by default.

llvm-svn: 183437

11 years agoARM sched model: Add integer arithmetic instructions on Swift
Arnold Schwaighofer [Thu, 6 Jun 2013 19:49:46 +0000 (19:49 +0000)]
ARM sched model: Add integer arithmetic instructions on Swift

Reapply 183267.

llvm-svn: 183436

11 years agoARM sched model: Cortex A9 - More InstRW sched resources
Arnold Schwaighofer [Thu, 6 Jun 2013 19:30:21 +0000 (19:30 +0000)]
ARM sched model: Cortex A9 - More InstRW sched resources

Add more InstRW mappings.

Reapply 183266.

llvm-svn: 183435

11 years agoAdding a test case for pr15415 - partial backtrace with -fomit-frame-pointer
Ashok Thirumurthi [Thu, 6 Jun 2013 19:22:05 +0000 (19:22 +0000)]
Adding a test case for pr15415 - partial backtrace with -fomit-frame-pointer
that is patterned after its parent TestInferiorCrashing.py.

- The xfail decorator limits the xfail to tool-chains that support this compiler option.
- Included a TODO concerning the platform-specific behavior when 'next' is issued after a crash.
- Toggling -fomit-frame-pointer results in an xpass as mentioned in pr15415.

Thanks to Daniel for the review, and Samuel for the bug report and reproducer.

llvm-svn: 183434

11 years agoAdd a testcase from pr16244.
Rafael Espindola [Thu, 6 Jun 2013 19:15:23 +0000 (19:15 +0000)]
Add a testcase from pr16244.

llvm-svn: 183433

11 years agoARM sched model: Add branch thumb instructions
Arnold Schwaighofer [Thu, 6 Jun 2013 18:51:01 +0000 (18:51 +0000)]
ARM sched model: Add branch thumb instructions

Reapply 183265.

llvm-svn: 183432

11 years agoARM sched model: Add branch thumb2 instructions
Arnold Schwaighofer [Thu, 6 Jun 2013 18:42:09 +0000 (18:42 +0000)]
ARM sched model: Add branch thumb2 instructions

Reapply 183264.

llvm-svn: 183430

11 years ago[lsan] Put SANITIZER_INTERFACE_ATTRIBUTE on LSan interface functions.
Sergey Matveev [Thu, 6 Jun 2013 18:40:55 +0000 (18:40 +0000)]
[lsan] Put SANITIZER_INTERFACE_ATTRIBUTE on LSan interface functions.

llvm-svn: 183429

11 years agoARM sched model: Add branch instructions
Arnold Schwaighofer [Thu, 6 Jun 2013 18:21:13 +0000 (18:21 +0000)]
ARM sched model: Add branch instructions

Reapply 183263.

llvm-svn: 183428

11 years agoARM sched model: Add preload thumb2 instructions
Arnold Schwaighofer [Thu, 6 Jun 2013 18:06:30 +0000 (18:06 +0000)]
ARM sched model: Add preload thumb2 instructions

Reapply 183262.

llvm-svn: 183427

11 years agoRemove unimplemented definition. Found using [-Wunused-member-function].
Jakub Staszak [Thu, 6 Jun 2013 17:52:45 +0000 (17:52 +0000)]
Remove unimplemented definition. Found using [-Wunused-member-function].

llvm-svn: 183426

11 years agoARM sched model: Add preload instructions
Arnold Schwaighofer [Thu, 6 Jun 2013 17:26:12 +0000 (17:26 +0000)]
ARM sched model: Add preload instructions

Reapply 183261.

llvm-svn: 183425

11 years agoTeach llvm-objdump with the -macho parser how to use the data in code table
Kevin Enderby [Thu, 6 Jun 2013 17:20:50 +0000 (17:20 +0000)]
Teach llvm-objdump with the -macho parser how to use the data in code table
from the LC_DATA_IN_CODE load command.  And when disassembling print
the data in code formatted for the kind of data it and not disassemble those
bytes.

I added the format specific functionality to the derived class MachOObjectFile
since these tables only appears in Mach-O object files. This is my first
attempt to modify the libObject stuff so if folks have better suggestions
how to fit this in or suggestions on the implementation please let me know.

rdar://11791371

llvm-svn: 183424

11 years agoARM sched model: Add more ALU and CMP thumb instructions
Arnold Schwaighofer [Thu, 6 Jun 2013 17:03:13 +0000 (17:03 +0000)]
ARM sched model: Add more ALU and CMP thumb instructions

Reapply of 183260.

llvm-svn: 183423

11 years agoRevert "Use IRBuilder instead of ConstantInt methods. It simplifies code a little...
Rafael Espindola [Thu, 6 Jun 2013 17:03:05 +0000 (17:03 +0000)]
Revert "Use IRBuilder instead of ConstantInt methods. It simplifies code a little bit."

This reverts commit 183328. It caused pr16244 and broke the bots.

llvm-svn: 183422

11 years agoARM sched model: Add more ALU and CMP thumb2 instructions
Arnold Schwaighofer [Thu, 6 Jun 2013 16:35:25 +0000 (16:35 +0000)]
ARM sched model: Add more ALU and CMP thumb2 instructions

Reapply of 183259.

llvm-svn: 183421

11 years agoFix incorrect line breaking before trailing block comments.
Daniel Jasper [Thu, 6 Jun 2013 16:08:57 +0000 (16:08 +0000)]
Fix incorrect line breaking before trailing block comments.

Before, clang-format would happily move a trailing block comment to a
new line, which normally changes the perceived binding of that comment.

E.g., it would move:
void f() { /* comment */
  ...
}
to:
void f() {
  /* comment */
  ...
}

llvm-svn: 183420

11 years agotsan: use memory access size for Go after all
Dmitry Vyukov [Thu, 6 Jun 2013 14:31:15 +0000 (14:31 +0000)]
tsan: use memory access size for Go after all
helps to make range access functions correct and fast

llvm-svn: 183418

11 years agocpp11-migrate: Docs refresh
Edwin Vane [Thu, 6 Jun 2013 14:30:14 +0000 (14:30 +0000)]
cpp11-migrate: Docs refresh

* Documented new command-line options.
* Moved usage to a new page.
  * Usage now split into general options and transform-related options.
* Main Migrator page now contains getting started and getting involved
  information.
  * Also included a JIRA issue collector button for logging bugs.

llvm-svn: 183417