platform/upstream/llvm.git
11 years ago<rdar://problem/12903081>
Enrico Granata [Thu, 20 Dec 2012 02:07:45 +0000 (02:07 +0000)]
<rdar://problem/12903081>

When looking for the Python script to load for a given module, replace dots with underscores if there are any after stripping the extension
This means that for a module named foo.devel.xyz a file named foo_devel.py will be what we try to load

llvm-svn: 170633

11 years agoLoop Vectorizer: Enable if-conversion.
Nadav Rotem [Thu, 20 Dec 2012 02:00:02 +0000 (02:00 +0000)]
Loop Vectorizer: Enable if-conversion.

llvm-svn: 170632

11 years agos/AttributesImpl/AttributeImpl/g This is going to apply to Attribute, not Attributes.
Bill Wendling [Thu, 20 Dec 2012 01:36:59 +0000 (01:36 +0000)]
s/AttributesImpl/AttributeImpl/g This is going to apply to Attribute, not Attributes.

llvm-svn: 170631

11 years agoDo not introduce vector operations in functions marked with noimplicitfloat.
Bob Wilson [Thu, 20 Dec 2012 01:36:20 +0000 (01:36 +0000)]
Do not introduce vector operations in functions marked with noimplicitfloat.

<rdar://problem/12879313>

llvm-svn: 170630

11 years agoClean up some DOxygen comments.
Jim Grosbach [Thu, 20 Dec 2012 01:14:48 +0000 (01:14 +0000)]
Clean up some DOxygen comments.

llvm-svn: 170629

11 years agoClean up some DOxygen comments.
Jim Grosbach [Thu, 20 Dec 2012 01:14:45 +0000 (01:14 +0000)]
Clean up some DOxygen comments.

llvm-svn: 170628

11 years agoFix an uninitialized member variable, found by -fsanitize=bool.
Richard Smith [Thu, 20 Dec 2012 01:05:39 +0000 (01:05 +0000)]
Fix an uninitialized member variable, found by -fsanitize=bool.

llvm-svn: 170627

11 years agowhitespace
Nadav Rotem [Thu, 20 Dec 2012 00:49:56 +0000 (00:49 +0000)]
whitespace

llvm-svn: 170626

11 years ago[analyzer] Add the pointer escaped callback.
Anna Zaks [Thu, 20 Dec 2012 00:38:25 +0000 (00:38 +0000)]
[analyzer] Add the pointer escaped callback.

Instead of using several callbacks to identify the pointer escape event,
checkers now can register for the checkPointerEscape.

Converted the Malloc checker to use the new callback.
SimpleStreamChecker will be converted next.

llvm-svn: 170625

11 years ago[ELF][Reader] Ignore SHF_GROUP when switching on flags.
Michael J. Spencer [Thu, 20 Dec 2012 00:37:24 +0000 (00:37 +0000)]
[ELF][Reader] Ignore SHF_GROUP when switching on flags.

llvm-svn: 170624

11 years agoStyle fixes.
Michael J. Spencer [Thu, 20 Dec 2012 00:37:10 +0000 (00:37 +0000)]
Style fixes.

llvm-svn: 170623

11 years agodoc: resize the image.
Nadav Rotem [Thu, 20 Dec 2012 00:29:18 +0000 (00:29 +0000)]
doc: resize the image.

llvm-svn: 170622

11 years agoTarget/R600: Update MIB according to r170588.
NAKAMURA Takumi [Thu, 20 Dec 2012 00:22:11 +0000 (00:22 +0000)]
Target/R600: Update MIB according to r170588.

llvm-svn: 170620

11 years agoSetting TestInferiorChanged.py to expectedFailureLinux because of bugzilla 14662.
Andrew Kaylor [Thu, 20 Dec 2012 00:19:27 +0000 (00:19 +0000)]
Setting TestInferiorChanged.py to expectedFailureLinux because of bugzilla 14662.

Note that the test actually fails before reaching the assertion described in that bug, but the failure is a trivial matter of adding OS-conditional expected stop reason strings (as noted by new comments in this patch).  However, with the stop reason strings changed, the test fails for the more substantial reason noted in bugzilla 14662.

llvm-svn: 170619

11 years agoDoc: update the chart.
Nadav Rotem [Thu, 20 Dec 2012 00:03:36 +0000 (00:03 +0000)]
Doc: update the chart.

llvm-svn: 170618

11 years ago[preprocessor] When "merging" macro argument tokens into one SLocEntry chunk,
Argyrios Kyrtzidis [Wed, 19 Dec 2012 23:55:44 +0000 (23:55 +0000)]
[preprocessor] When "merging" macro argument tokens into one SLocEntry chunk,
make sure they came from the same kind of FileIDs.

Thanks to Abramo Bagnara for providing the test case.

llvm-svn: 170616

11 years agoAdd a context so that once we uniquify strings we can access them easily.
Bill Wendling [Wed, 19 Dec 2012 23:55:43 +0000 (23:55 +0000)]
Add a context so that once we uniquify strings we can access them easily.

llvm-svn: 170615

11 years agoTypo.
Chad Rosier [Wed, 19 Dec 2012 23:47:16 +0000 (23:47 +0000)]
Typo.

llvm-svn: 170613

11 years ago<rdar://problem/12446222>
Enrico Granata [Wed, 19 Dec 2012 23:42:07 +0000 (23:42 +0000)]
<rdar://problem/12446222>

Implement the ability for Python commands to be interrupted by pressing CTRL+C
Also add a new Mutex subclass that attempts to be helpful for debugging by logging actions performed on it

FYI of all interested - there is a separate deadlocking issue related to how LLDB dispatches CTRL+C that might cause LLDB to deadlock upon pressing CTRL+C while in a Python command.
This is not a regression, and was just previously masked by us not even trying to bail out of Python commands, so that it would not be clear from a user perspective whether we were
deadlocked or stuck in an inconsistent state within the Python interpreter.

llvm-svn: 170612

11 years ago[driver] Have -isysroot warn on nonexistent paths.
Chad Rosier [Wed, 19 Dec 2012 23:41:50 +0000 (23:41 +0000)]
[driver] Have -isysroot warn on nonexistent paths.
rdar://12282267

llvm-svn: 170611

11 years agoMC: Add MCInstrDesc::mayAffectControlFlow() method.
Jim Grosbach [Wed, 19 Dec 2012 23:38:53 +0000 (23:38 +0000)]
MC: Add MCInstrDesc::mayAffectControlFlow() method.

MC disassembler clients (LLDB) are interested in querying if an
instruction may affect control flow other than by virtue of being
an explicit branch instruction. For example, instructions which
write directly to the PC on some architectures.

llvm-svn: 170610

11 years agoAdd isSubRegisterEq() and isSuperRegisterEq().
Jim Grosbach [Wed, 19 Dec 2012 23:38:49 +0000 (23:38 +0000)]
Add isSubRegisterEq() and isSuperRegisterEq().

isSub and isSuper return false if RegA == RegB. Add variants which also
include the identity function.

llvm-svn: 170609

11 years agoMove isSubRegister() and isSuperRegister to MCRegisterInfo.
Jim Grosbach [Wed, 19 Dec 2012 23:38:46 +0000 (23:38 +0000)]
Move isSubRegister() and isSuperRegister to MCRegisterInfo.

These were defined on TargetRegisterInfo, but they don't use any information
that's not available in MCRegisterInfo, so sink them down to be available
at the MC layer.

llvm-svn: 170608

11 years agoFix doc comment. '///' not '//'.
Jim Grosbach [Wed, 19 Dec 2012 23:38:44 +0000 (23:38 +0000)]
Fix doc comment. '///' not '//'.

llvm-svn: 170607

11 years agoAudit DeclPrinter with -ast-dump on Cocoa.h and
Fariborz Jahanian [Wed, 19 Dec 2012 23:36:00 +0000 (23:36 +0000)]
Audit DeclPrinter with -ast-dump on Cocoa.h and
fix any bad objectiveC syntax coming out of
DeclPrinter. This is on going. Also, introduce a new
PrintPolicy and use it as needed when declaration tag
is to be produced via DeclPrinter.

llvm-svn: 170606

11 years agoMark register tests as expectedFailureLinux because of bugzilla reports 14600 and...
Andrew Kaylor [Wed, 19 Dec 2012 23:31:12 +0000 (23:31 +0000)]
Mark register tests as expectedFailureLinux because of bugzilla reports 14600 and 14661.

llvm-svn: 170605

11 years agoDisable confirmation prompt in TestProcessLaunch (to avoid hang on Linux once bug...
Daniel Malea [Wed, 19 Dec 2012 23:22:11 +0000 (23:22 +0000)]
Disable confirmation prompt in TestProcessLaunch (to avoid hang on Linux once bug is fixed)

llvm-svn: 170603

11 years agoRefactor isIntrinsic() to be quicker, and change classof() (and thus, isa<IntrinsicIn...
Michael Ilseman [Wed, 19 Dec 2012 23:17:20 +0000 (23:17 +0000)]
Refactor isIntrinsic() to be quicker, and change classof() (and thus, isa<IntrinsicInst>()) to use it. This decreases the number of occurrences of the slow-path string matching performed by getIntrinsicID().

llvm-svn: 170602

11 years agoThis patch removes the SymbolFileSymtab support
Sean Callanan [Wed, 19 Dec 2012 23:05:01 +0000 (23:05 +0000)]
This patch removes the SymbolFileSymtab support
for reporting class types from Objective-C runtime
class symbols.  Instead, LLDB now queries the
Objective-C runtime for class types.

We have also added a (minimal) Objective-C runtime
type vendor for Objective-C runtime version 1, to
prevent regressions when calling class methods in
the V1 runtime.

Other components of this fix include:

- We search the Objective-C runtime in a few more
  places.

- We enable enumeration of all members of
  Objective-C classes, which Clang does in certain
  circumstances.

- SBTarget::FindFirstType and SBTarget::FindTypes
  now query the Objective-C runtime as needed.

- I fixed several test cases.

<rdar://problem/12885034>

llvm-svn: 170601

11 years agos/AttributeListImpl/AttributeSetImpl/g to match the namechange of AttributeList.
Bill Wendling [Wed, 19 Dec 2012 22:42:22 +0000 (22:42 +0000)]
s/AttributeListImpl/AttributeSetImpl/g to match the namechange of AttributeList.

llvm-svn: 170600

11 years agoAlways use addOperand(MF, MO) from MachineInstrBuilder.
Jakob Stoklund Olesen [Wed, 19 Dec 2012 22:35:46 +0000 (22:35 +0000)]
Always use addOperand(MF, MO) from MachineInstrBuilder.

The single-argument MachineInstr::addOperand(MO) will be removed soon.

llvm-svn: 170599

11 years ago[PCH/Modules] In ASTReader::completeVisibleDeclsMap, make sure to visit all
Argyrios Kyrtzidis [Wed, 19 Dec 2012 22:21:18 +0000 (22:21 +0000)]
[PCH/Modules] In ASTReader::completeVisibleDeclsMap, make sure to visit all
modules when getting the decls for a namespace or translation unit.

Otherwise the code-completion results will not be complete.

rdar://12889089

llvm-svn: 170596

11 years agoAdd a missing 'else'. Found by grep '} if'
Dmitri Gribenko [Wed, 19 Dec 2012 22:13:01 +0000 (22:13 +0000)]
Add a missing 'else'.  Found by grep '} if'

No testcase because it is apparently not so trivial to construct.

llvm-svn: 170595

11 years agoR600: Add entry in CODE_OWNERS.TXT
Tom Stellard [Wed, 19 Dec 2012 22:10:35 +0000 (22:10 +0000)]
R600: Add entry in CODE_OWNERS.TXT

llvm-svn: 170594

11 years agoR600: Remove unecessary VREG alignment.
Tom Stellard [Wed, 19 Dec 2012 22:10:34 +0000 (22:10 +0000)]
R600: Remove unecessary VREG alignment.

Unlike SGPRs VGPRs doesn't need to be aligned.

Patch by: Christian König

Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: Christian König <deathsimple@vodafone.de>
llvm-svn: 170593

11 years agoR600: control flow optimization
Tom Stellard [Wed, 19 Dec 2012 22:10:33 +0000 (22:10 +0000)]
R600: control flow optimization

Branch if we have enough instructions so that it makes sense.
Also remove branches if they don't make sense.

Patch by: Christian König

Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: Christian König <deathsimple@vodafone.de>
llvm-svn: 170592

11 years agoR600: New control flow for SI v2
Tom Stellard [Wed, 19 Dec 2012 22:10:31 +0000 (22:10 +0000)]
R600: New control flow for SI v2

This patch replaces the control flow handling with a new
pass which structurize the graph before transforming it to
machine instruction. This has a couple of different advantages
and currently fixes 20 piglit tests without a single regression.

It is now a general purpose transformation that could be not
only be used for SI/R6xx, but also for other hardware
implementations that use a form of structurized control flow.

v2: further cleanup, fixes and documentation

Patch by: Christian König

Signed-off-by: Christian König <deathsimple@vodafone.de>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
llvm-svn: 170591

11 years agoDocumentation: UsersManual.rst: some cleanups after semi-automatic conversion
Dmitri Gribenko [Wed, 19 Dec 2012 22:06:59 +0000 (22:06 +0000)]
Documentation: UsersManual.rst: some cleanups after semi-automatic conversion

llvm-svn: 170590

11 years agoSplit out abbreviations for the skeleton info from the rest of
Eric Christopher [Wed, 19 Dec 2012 22:02:53 +0000 (22:02 +0000)]
Split out abbreviations for the skeleton info from the rest of
the abbreviations. Part of implementing split dwarf.

llvm-svn: 170589

11 years agoRemove the explicit MachineInstrBuilder(MI) constructor.
Jakob Stoklund Olesen [Wed, 19 Dec 2012 21:31:56 +0000 (21:31 +0000)]
Remove the explicit MachineInstrBuilder(MI) constructor.

Use the version that also takes an MF reference instead.

It would technically be possible to extract an MF reference from the MI
as MI->getParent()->getParent(), but that would not work for MIs that
are not inserted into any basic block.

Given the reasonably small number of places this constructor was used at
all, I preferred the compile time check to a run time assertion.

llvm-svn: 170588

11 years agoFix a bug that was found by building clang with -fsanitize.
Nadav Rotem [Wed, 19 Dec 2012 20:47:04 +0000 (20:47 +0000)]
Fix a bug that was found by building clang with -fsanitize.
I introduced it in r166785. PR14291.

If TD is unavailable use getScalarSizeInBits, but don't optimize
pointers or vectors of pointers.

llvm-svn: 170586

11 years agodocs: Fix title underline warnings
Meador Inge [Wed, 19 Dec 2012 20:16:40 +0000 (20:16 +0000)]
docs: Fix title underline warnings

Building Vectorizers.rst produces a few warnings of the form:

   WARNING: Title underline too short.

Fixed by adding the extra needed dashes under the title.

llvm-svn: 170582

11 years agoLLVM sdisel normalize bit extraction of the form:
Evan Cheng [Wed, 19 Dec 2012 20:16:09 +0000 (20:16 +0000)]
LLVM sdisel normalize bit extraction of the form:
 ((x & 0xff00) >> 8) << 2
to
 (x >> 6) & 0x3fc

This is general goodness since it folds a left shift into the mask. However,
the trailing zeros in the mask prevents the ARM backend from using the bit
extraction instructions. And worse since the mask materialization may require
an addition instruction. This comes up fairly frequently when the result of
the bit twiddling is used as memory address. e.g.

 = ptr[(x & 0xFF0000) >> 16]

We want to generate:
  ubfx   r3, r1, #16, #8
  ldr.w  r3, [r0, r3, lsl #2]

vs.
  mov.w  r9, #1020
  and.w  r2, r9, r1, lsr #14
  ldr    r2, [r0, r2]

Add a late ARM specific isel optimization to
ARMDAGToDAGISel::PreprocessISelDAG(). It folds the left shift to the
'base + offset' address computation; change the mask to one which doesn't have
trailing zeros and enable the use of ubfx.

Note the optimization has to be done late since it's target specific and we
don't want to change the DAG normalization. It's also fairly restrictive
as shifter operands are not always free. It's only done for lsh 1 / 2. It's
known to be free on some cpus and they are most common for address
computation.

This is a slight win for blowfish, rijndael, etc.

rdar://12870177

llvm-svn: 170581

11 years agoRemove edis remnant.
Benjamin Kramer [Wed, 19 Dec 2012 20:11:17 +0000 (20:11 +0000)]
Remove edis remnant.

llvm-svn: 170580

11 years agoRemove edis - the enhanced disassembler. Fixes PR14654.
Roman Divacky [Wed, 19 Dec 2012 19:55:47 +0000 (19:55 +0000)]
Remove edis - the enhanced disassembler. Fixes PR14654.

llvm-svn: 170578

11 years agoTransform (x&C)>V into (x&C)!=0 where possible
Paul Redmond [Wed, 19 Dec 2012 19:47:13 +0000 (19:47 +0000)]
Transform (x&C)>V into (x&C)!=0 where possible

When the least bit of C is greater than V, (x&C) must be greater than V
if it is not zero, so the comparison can be simplified.

Although this was suggested in Target/X86/README.txt, it benefits any
architecture with a directly testable form of AND.

Patch by Kevin Schoedel

llvm-svn: 170576

11 years agoSkip libc++ data formatter tests on Linux because there is no standard location for...
Andrew Kaylor [Wed, 19 Dec 2012 19:32:40 +0000 (19:32 +0000)]
Skip libc++ data formatter tests on Linux because there is no standard location for the makefile to find libc++.

llvm-svn: 170575

11 years agoAdd an MF argument to MachineInstr::addOperand().
Jakob Stoklund Olesen [Wed, 19 Dec 2012 19:19:01 +0000 (19:19 +0000)]
Add an MF argument to MachineInstr::addOperand().

Just like for addMemOperand(), the function pointer provides a context
for allocating memory. This will make it possible to use a better memory
allocation strategy for the MI operand list, which is currently a slow
std::vector.

Most calls to addOperand() come from MachineInstrBuilder, so give that
class an MF reference as well. Code using BuildMI() won't need changing
at all since the MF reference is already required to allocate a
MachineInstr.

Future patches will fix code that calls MI::addOperand(Op) directly, as
well as code that uses the now deprecated MachineInstrBuilder(MI)
constructor.

llvm-svn: 170574

11 years agoobjective-C: Don't warn of unimplemented property of protocols in
Fariborz Jahanian [Wed, 19 Dec 2012 18:58:55 +0000 (18:58 +0000)]
objective-C: Don't warn of unimplemented property of protocols in
category, when those properties will be implemented in category's
primary class or one of its super classes. // rdar://12568064

llvm-svn: 170573

11 years agoForgot to remove trailing whitespace when I converted the BlockLanguageSpec.txt ...
Michael Gottesman [Wed, 19 Dec 2012 18:42:42 +0000 (18:42 +0000)]
Forgot to remove trailing whitespace when I converted the BlockLanguageSpec.txt => BlockLanguageSpec.rst. It has been eliminated.

llvm-svn: 170572

11 years agoConverted BlockLanguageSpec.txt => BlockLanguageSpec.rst.
Michael Gottesman [Wed, 19 Dec 2012 18:41:09 +0000 (18:41 +0000)]
Converted BlockLanguageSpec.txt => BlockLanguageSpec.rst.

llvm-svn: 170571

11 years agoChange test to dump Filecheck output to an intermediate file. This makes it easier...
Ted Kremenek [Wed, 19 Dec 2012 18:30:38 +0000 (18:30 +0000)]
Change test to dump Filecheck output to an intermediate file.  This makes it easier to update this test.

llvm-svn: 170570

11 years agoRemove superfluous brief command from getAsString.
Chad Rosier [Wed, 19 Dec 2012 18:06:44 +0000 (18:06 +0000)]
Remove superfluous brief command from getAsString.

llvm-svn: 170569

11 years agodoc: add subsections.
Nadav Rotem [Wed, 19 Dec 2012 18:04:44 +0000 (18:04 +0000)]
doc: add subsections.

llvm-svn: 170568

11 years agoDOC: document the use of O2, O3 and Os with -fvectorize.
Nadav Rotem [Wed, 19 Dec 2012 18:02:36 +0000 (18:02 +0000)]
DOC: document the use of O2, O3 and Os with -fvectorize.

llvm-svn: 170567

11 years agoFix PR14591: Windows newlines in doxygen comments cause failed assertion in
Dmitri Gribenko [Wed, 19 Dec 2012 17:34:55 +0000 (17:34 +0000)]
Fix PR14591: Windows newlines in doxygen comments cause failed assertion in
TextDiagnostic

Patch by Janusz Chorko.

llvm-svn: 170566

11 years agoAdd a missing 'else'. Found by grep '} if'
Dmitri Gribenko [Wed, 19 Dec 2012 17:29:30 +0000 (17:29 +0000)]
Add a missing 'else'.  Found by grep '} if'

No testcase because this did not affect correctness: a declaration can only be
ClassTemplateDecl or a FunctionTemplateDecl, not both.

llvm-svn: 170565

11 years agoTest suite cleanup for Linux: mark test cases expected to fail due to open bugzillas
Daniel Malea [Wed, 19 Dec 2012 17:19:28 +0000 (17:19 +0000)]
Test suite cleanup for Linux: mark test cases expected to fail due to open bugzillas
- bugzillas covered: 14323, 14600, 14541, 14437, 14540, 14541

llvm-svn: 170564

11 years agoComment parsing: add a missing 'else'. Found by inspection.
Dmitri Gribenko [Wed, 19 Dec 2012 17:17:09 +0000 (17:17 +0000)]
Comment parsing: add a missing 'else'.  Found by inspection.

No testcase because we were just building an extra AST node and eventually
throwing it away, so it did not affect correctness.

llvm-svn: 170563

11 years agoImprove on header comment suggested by James Dennet.
Fariborz Jahanian [Wed, 19 Dec 2012 17:03:46 +0000 (17:03 +0000)]
Improve on header comment suggested by James Dennet.

llvm-svn: 170555

11 years ago[ASan] explicitly link with dynamic ASan runtime when building unittests on Android
Alexey Samsonov [Wed, 19 Dec 2012 15:52:30 +0000 (15:52 +0000)]
[ASan] explicitly link with dynamic ASan runtime when building unittests on Android

llvm-svn: 170552

11 years agoPowerPC: Expand VSELECT nodes.
Benjamin Kramer [Wed, 19 Dec 2012 15:49:14 +0000 (15:49 +0000)]
PowerPC: Expand VSELECT nodes.

There's probably a better expansion for those nodes than the default for
altivec, but this is better than crashing. VSELECTs occur in loop vectorizer
output.

llvm-svn: 170551

11 years agoChange AsmOperandInfo::ConstraintVT to MVT, instead of EVT.
Patrik Hagglund [Wed, 19 Dec 2012 15:19:11 +0000 (15:19 +0000)]
Change AsmOperandInfo::ConstraintVT to MVT, instead of EVT.

Accordingly, add MVT::getVT.

llvm-svn: 170550

11 years ago[ASan] Support building both 32- and 64-bit unit tests if we can target both architec...
Alexey Samsonov [Wed, 19 Dec 2012 15:17:23 +0000 (15:17 +0000)]
[ASan] Support building both 32- and 64-bit unit tests if we can target both architectures

llvm-svn: 170549

11 years ago[asan] asan_allocator2: add mmap/munmap stats
Kostya Serebryany [Wed, 19 Dec 2012 14:56:38 +0000 (14:56 +0000)]
[asan] asan_allocator2: add mmap/munmap stats

llvm-svn: 170548

11 years agoRevert 170545 while I debug the ppc failures.
Rafael Espindola [Wed, 19 Dec 2012 14:48:05 +0000 (14:48 +0000)]
Revert 170545 while I debug the ppc failures.

llvm-svn: 170547

11 years agoMake TargetLowering::getTypeConversion more resilient against odd illegal MVTs.
Benjamin Kramer [Wed, 19 Dec 2012 14:34:28 +0000 (14:34 +0000)]
Make TargetLowering::getTypeConversion more resilient against odd illegal MVTs.

- An MVT can become an EVT when being split (e.g. v2i8 -> v1i8, the latter doesn't exist)
- Return the scalar value when an MVT is scalarized (v1i64 -> i64)

Fixes PR14639ff.

llvm-svn: 170546

11 years agoAdd r170095 back.
Rafael Espindola [Wed, 19 Dec 2012 14:15:04 +0000 (14:15 +0000)]
Add r170095 back.

I cannot reproduce it the failures locally, so I will keep an eye at the ppc
bots. This patch does add the change to the "Disassembly of section" message,
but that is not what was failing on the bots.

Original message:

Add a funciton to get the segment name of a section.

On MachO, sections also have segment names. When a tool looking at a .o file
prints a segment name, this is what they mean. In reality, a .o has only one
anonymous, segment.

This patch adds a MachO only function to fetch that segment name. I named it
getSectionFinalSegmentName since the main use for the name seems to be infor
the linker with segment this section should go to.

The patch also changes MachOObjectFile::getSectionName to return just the
section name instead of computing SegmentName,SectionName.

llvm-svn: 170545

11 years ago[msan] Add track-origins argument to the pass constructor.
Evgeniy Stepanov [Wed, 19 Dec 2012 13:55:51 +0000 (13:55 +0000)]
[msan] Add track-origins argument to the pass constructor.

llvm-svn: 170544

11 years ago[ASan] make sure Android unittests depend on ASan runtime
Alexey Samsonov [Wed, 19 Dec 2012 13:46:58 +0000 (13:46 +0000)]
[ASan] make sure Android unittests depend on ASan runtime

llvm-svn: 170543

11 years agoDocumentation: add a missing space
Dmitri Gribenko [Wed, 19 Dec 2012 12:51:48 +0000 (12:51 +0000)]
Documentation: add a missing space

llvm-svn: 170542

11 years agoSignificantly change the way we build ASan unittests in CMake
Alexey Samsonov [Wed, 19 Dec 2012 12:33:39 +0000 (12:33 +0000)]
Significantly change the way we build ASan unittests in CMake
build tree. Now just-built Clang is used to:
  1) compile instrumented sources (as before);
  2) compile non-instrumented sources;
  3) compile our own instrumented version of googletest;
  4) link it all together using -fsanitize=address flag
     (instead of trying to copy linker behavior in
      CMake build rules).

This makes ASan unittests pretty much self-consistent
and independent of other LLVM libraries.

llvm-svn: 170541

11 years agoSplit the usage of 'EVT PartVT' into 'MVT PartVT' and 'EVT PartEVT'.
Patrik Hagglund [Wed, 19 Dec 2012 12:33:30 +0000 (12:33 +0000)]
Split the usage of 'EVT PartVT' into 'MVT PartVT' and 'EVT PartEVT'.

llvm-svn: 170540

11 years agoCMake: factor out a function that returns the expected directory for unit test
Alexey Samsonov [Wed, 19 Dec 2012 12:30:33 +0000 (12:30 +0000)]
CMake: factor out a function that returns the expected directory for unit test

llvm-svn: 170539

11 years agoChange RegVT in BitTestBlock and RegsForValue, to contain MVTs,
Patrik Hagglund [Wed, 19 Dec 2012 12:23:01 +0000 (12:23 +0000)]
Change RegVT in BitTestBlock and RegsForValue, to contain MVTs,
instead of EVTs.

llvm-svn: 170538

11 years agoChange TargetLowering::getTypeForExtArgOrReturn to take and return
Patrik Hagglund [Wed, 19 Dec 2012 12:02:25 +0000 (12:02 +0000)]
Change TargetLowering::getTypeForExtArgOrReturn to take and return
MVTs, instead of EVTs.

llvm-svn: 170537

11 years agoChange a parameter of TargetLowering::getVectorTypeBreakdown to MVT,
Patrik Hagglund [Wed, 19 Dec 2012 11:53:21 +0000 (11:53 +0000)]
Change a parameter of TargetLowering::getVectorTypeBreakdown to MVT,
from EVT.

llvm-svn: 170536

11 years agoChange TargetLowering::RegisterTypeForVT to contain MVTs, instead of
Patrik Hagglund [Wed, 19 Dec 2012 11:48:16 +0000 (11:48 +0000)]
Change TargetLowering::RegisterTypeForVT to contain MVTs, instead of
EVTs.

llvm-svn: 170535

11 years agoChange TargetLowering::TransformToType to contain MVTs, instead of
Patrik Hagglund [Wed, 19 Dec 2012 11:42:00 +0000 (11:42 +0000)]
Change TargetLowering::TransformToType to contain MVTs, instead of
EVTs.

llvm-svn: 170534

11 years agoChange TargetLowering::getRepRegClassCostFor, getIndexedLoadAction,
Patrik Hagglund [Wed, 19 Dec 2012 11:37:12 +0000 (11:37 +0000)]
Change TargetLowering::getRepRegClassCostFor, getIndexedLoadAction,
getIndexedStoreAction, and addRegisterClass to take and MVT, instead
of EVT.

llvm-svn: 170533

11 years agoChange TargetLowering::findRepresentativeClass to take an MVT, instead
Patrik Hagglund [Wed, 19 Dec 2012 11:30:36 +0000 (11:30 +0000)]
Change TargetLowering::findRepresentativeClass to take an MVT, instead
of EVT.

llvm-svn: 170532

11 years ago[ASan] Change the boilerplate check in the libdispatch tests to fix them.
Alexander Potapenko [Wed, 19 Dec 2012 11:26:41 +0000 (11:26 +0000)]
[ASan] Change the boilerplate check in the libdispatch tests to fix them.

llvm-svn: 170531

11 years ago[msan] Heuristically instrument unknown intrinsics.
Evgeniy Stepanov [Wed, 19 Dec 2012 11:22:04 +0000 (11:22 +0000)]
[msan] Heuristically instrument unknown intrinsics.

This changes adds shadow and origin propagation for unknown intrinsics
by examining the arguments and ModRef behaviour. For now, only 3 classes
of intrinsics are handled:
- those that look like simple SIMD store
- those that look like simple SIMD load
- those that don't have memory effects and look like arithmetic/logic/whatever
  operation on simple types.

llvm-svn: 170530

11 years agoChange TargetLowering::getTypeToPromoteTo to take and return MVTs,
Patrik Hagglund [Wed, 19 Dec 2012 11:21:04 +0000 (11:21 +0000)]
Change TargetLowering::getTypeToPromoteTo to take and return MVTs,
instead of EVTs.

llvm-svn: 170529

11 years agoLoopVectorize: Make iteration over induction variables not depend on pointer values.
Benjamin Kramer [Wed, 19 Dec 2012 11:09:15 +0000 (11:09 +0000)]
LoopVectorize: Make iteration over induction variables not depend on pointer values.

MapVector is a bit heavyweight, but I don't see a simpler way. Also the
InductionList is unlikely to be large. This should help 3-stage selfhost
compares (PR14647).

llvm-svn: 170528

11 years agoMapVector: Add lookup().
Benjamin Kramer [Wed, 19 Dec 2012 11:08:33 +0000 (11:08 +0000)]
MapVector: Add lookup().

llvm-svn: 170527

11 years agoChange TargetLowering::isCondCodeLegal to take an MVT, instead of EVT.
Patrik Hagglund [Wed, 19 Dec 2012 10:19:55 +0000 (10:19 +0000)]
Change TargetLowering::isCondCodeLegal to take an MVT, instead of EVT.

llvm-svn: 170524

11 years agoX86ISelLowering.cpp: Fix warnings. [-Wlogical-op-parentheses]
NAKAMURA Takumi [Wed, 19 Dec 2012 10:12:48 +0000 (10:12 +0000)]
X86ISelLowering.cpp: Fix warnings. [-Wlogical-op-parentheses]

llvm-svn: 170523

11 years agoChange TargetLowering::getCondCodeAction to take an MVT, instead of
Patrik Hagglund [Wed, 19 Dec 2012 10:09:26 +0000 (10:09 +0000)]
Change TargetLowering::getCondCodeAction to take an MVT, instead of
EVT.

llvm-svn: 170522

11 years ago[asan] print the shadow bytes in different colors and also output the shadow byte...
Kostya Serebryany [Wed, 19 Dec 2012 09:53:32 +0000 (09:53 +0000)]
[asan] print the shadow bytes in different colors and also output the shadow byte legend

llvm-svn: 170520

11 years ago[TSan] build only gtest-all.o when building TSan unit tests
Alexey Samsonov [Wed, 19 Dec 2012 09:19:57 +0000 (09:19 +0000)]
[TSan] build only gtest-all.o when building TSan unit tests

llvm-svn: 170519

11 years agoInline hasFunctionOnlyAttrs into its only use.
Bill Wendling [Wed, 19 Dec 2012 09:15:11 +0000 (09:15 +0000)]
Inline hasFunctionOnlyAttrs into its only use.

llvm-svn: 170518

11 years agoInline the only use of the hasParameterOnlyAttrs method.
Bill Wendling [Wed, 19 Dec 2012 09:04:58 +0000 (09:04 +0000)]
Inline the only use of the hasParameterOnlyAttrs method.

llvm-svn: 170517

11 years agoInline the 'hasIncompatibleWithVarArgsAttrs' method into its only uses. And some...
Bill Wendling [Wed, 19 Dec 2012 08:57:40 +0000 (08:57 +0000)]
Inline the 'hasIncompatibleWithVarArgsAttrs' method into its only uses. And some minor comment reformatting.

llvm-svn: 170516

11 years agotsan: add lint check back into presubmit script
Dmitry Vyukov [Wed, 19 Dec 2012 08:53:31 +0000 (08:53 +0000)]
tsan: add lint check back into presubmit script

llvm-svn: 170515

11 years ago[Sanitizer] add missing header on Windows
Alexey Samsonov [Wed, 19 Dec 2012 08:51:39 +0000 (08:51 +0000)]
[Sanitizer] add missing header on Windows

llvm-svn: 170514

11 years agoDOC: fix the url format.
Nadav Rotem [Wed, 19 Dec 2012 08:43:05 +0000 (08:43 +0000)]
DOC: fix the url format.

llvm-svn: 170513

11 years ago[asan] asan_allocator2: improve FindHeapChunkByAddress to find memory chunks to the...
Kostya Serebryany [Wed, 19 Dec 2012 08:32:50 +0000 (08:32 +0000)]
[asan] asan_allocator2: improve FindHeapChunkByAddress to find memory chunks to the left of a given address. Almost all tests pass with the new allocator now, only 6 are left to fix.

llvm-svn: 170511

11 years agoChange TargetLowering::getTruncStoreAction to take MVTs, instead of EVTs.
Patrik Hagglund [Wed, 19 Dec 2012 08:28:51 +0000 (08:28 +0000)]
Change TargetLowering::getTruncStoreAction to take MVTs, instead of EVTs.

llvm-svn: 170510

11 years agoDOC: add a benchmarks that compares us to gcc and icc.
Nadav Rotem [Wed, 19 Dec 2012 08:28:24 +0000 (08:28 +0000)]
DOC: add a benchmarks that compares us to gcc and icc.

llvm-svn: 170509