oota-llvm.git
11 years agoARM: Share applyFixup between ELF and Darwin.
Benjamin Kramer [Sat, 24 Nov 2012 14:36:43 +0000 (14:36 +0000)]
ARM: Share applyFixup between ELF and Darwin.

The implementations already diverged a bit, merge them back together.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168542 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoPPC: MCize most of the darwin PIC emission.
Benjamin Kramer [Sat, 24 Nov 2012 13:18:25 +0000 (13:18 +0000)]
PPC: MCize most of the darwin PIC emission.

The last remaining bit is "bcl 20, 31, AnonSymbol", which I couldn't find the
instruction definition for. Only whitespace changes in assembly output.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168541 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoPPC: Share applyFixup between ELF and Darwin.
Benjamin Kramer [Sat, 24 Nov 2012 13:18:17 +0000 (13:18 +0000)]
PPC: Share applyFixup between ELF and Darwin.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168540 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoPPC: Simplify code with Twines.
Benjamin Kramer [Sat, 24 Nov 2012 13:18:11 +0000 (13:18 +0000)]
PPC: Simplify code with Twines.

No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168539 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoFactor some common code out of individual if blocks.
Craig Topper [Sat, 24 Nov 2012 08:22:37 +0000 (08:22 +0000)]
Factor some common code out of individual if blocks.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168538 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoChange the representation of MCCFIInstruction.
Rafael Espindola [Sat, 24 Nov 2012 04:33:48 +0000 (04:33 +0000)]
Change the representation of MCCFIInstruction.

We now store the Register and Offset directly. MachineLocation is gone (from
this file)!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168536 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoGive each MCCFIInstruction its own opcode.
Rafael Espindola [Sat, 24 Nov 2012 03:10:54 +0000 (03:10 +0000)]
Give each MCCFIInstruction its own opcode.
This untangles the switch cases of the old Move and RelMove opcodes a bit
and makes it clear how to add new instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168534 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoMove a bit of duplicated code into a helper function.
Rafael Espindola [Sat, 24 Nov 2012 02:18:49 +0000 (02:18 +0000)]
Move a bit of duplicated code into a helper function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168533 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoRefactor how MCCFIInstructions are created.
Rafael Espindola [Sat, 24 Nov 2012 02:01:08 +0000 (02:01 +0000)]
Refactor how MCCFIInstructions are created.

Give MCCFIInstruction a single, private constructor and add helper static
methods that create each type of cfi instruction. This is is preparation
for changing its representation. The representation with a pair
MachineLocations older than MC and has been abused quiet a bit to support
more cfi instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168532 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoCodeGenPrepare: Move ret duplication out of the instruction iteration loop.
Benjamin Kramer [Fri, 23 Nov 2012 19:17:06 +0000 (19:17 +0000)]
CodeGenPrepare: Move ret duplication out of the instruction iteration loop.

It can delete the block, and the loop continues on free'd memory.
No change in output. Found by valgrind.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168525 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoRefactor a bit to make some helper functions static.
Craig Topper [Fri, 23 Nov 2012 18:38:31 +0000 (18:38 +0000)]
Refactor a bit to make some helper functions static.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168524 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoAdd a -disable-cfi option to llvm-mc. This is useful for debugging as
Rafael Espindola [Fri, 23 Nov 2012 17:37:34 +0000 (17:37 +0000)]
Add a -disable-cfi option to llvm-mc. This is useful for debugging as
it will expand any .cfi_* directives in the input assembly.

Unfortunately this cannot replace elf-dump in tests as the asm streamer
cannot relax the line advance opcodes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168522 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoImplement .cfi_undefined. Based on a patch from PaX team, updated by
Rafael Espindola [Fri, 23 Nov 2012 16:59:41 +0000 (16:59 +0000)]
Implement .cfi_undefined. Based on a patch from PaX team, updated by
Roman Divacky. I just added the testcase.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168520 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoDisallow the undocumented practice of starting the datalayout string with '-'.
Patrik Hägglund [Fri, 23 Nov 2012 14:51:42 +0000 (14:51 +0000)]
Disallow the undocumented practice of starting the datalayout string with '-'.

Update some test cases accordingly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168516 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoUpdate call to the new syntax.
Bill Wendling [Fri, 23 Nov 2012 11:05:35 +0000 (11:05 +0000)]
Update call to the new syntax.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168512 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoRemove unused parameter Penalty from the BoundsChecking pass.
Joey Gouly [Fri, 23 Nov 2012 10:47:35 +0000 (10:47 +0000)]
Remove unused parameter Penalty from the BoundsChecking pass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168511 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoCleanup: Simplify loop end logic in computeRegisterProperties().
Patrik Hägglund [Fri, 23 Nov 2012 08:35:04 +0000 (08:35 +0000)]
Cleanup: Simplify loop end logic in computeRegisterProperties().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168507 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoAdded me as the owner of the Sparc backend
Venkatraman Govindaraju [Thu, 22 Nov 2012 22:14:48 +0000 (22:14 +0000)]
Added me as the owner of the Sparc backend

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168504 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoMark me as the owner of the gold plugin.
Rafael Espindola [Thu, 22 Nov 2012 16:43:44 +0000 (16:43 +0000)]
Mark me as the owner of the gold plugin.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168502 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoAdd more functions to the target library information.
Meador Inge [Thu, 22 Nov 2012 15:36:42 +0000 (15:36 +0000)]
Add more functions to the target library information.

I discovered a few more missing functions while migrating optimizations
from the simplify-libcalls pass to the instcombine (I already added some
in r167659).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168501 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agollvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp: Prune AddressSanitizerCreat...
NAKAMURA Takumi [Thu, 22 Nov 2012 14:18:25 +0000 (14:18 +0000)]
llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp: Prune AddressSanitizerCreateGlobalRedzonesPass::ID. [-Wunused-variable]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168499 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoFix 80-col violation
Eli Bendersky [Thu, 22 Nov 2012 14:10:40 +0000 (14:10 +0000)]
Fix 80-col violation

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168498 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoIntelJITEventsWrapper.h: Prune two members, FinalizeThreadFunc and FinalizeProcessFun...
NAKAMURA Takumi [Thu, 22 Nov 2012 13:18:37 +0000 (13:18 +0000)]
IntelJITEventsWrapper.h: Prune two members, FinalizeThreadFunc and FinalizeProcessFunc, for now. [-Wunused-private-field]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168495 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoDocumentation: convert SourceLevelDebugging.html to reST
Dmitri Gribenko [Thu, 22 Nov 2012 11:56:02 +0000 (11:56 +0000)]
Documentation: convert SourceLevelDebugging.html to reST

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168493 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoRemove 'sretpromotion' pass from the documentation. This pass is long
Chandler Carruth [Thu, 22 Nov 2012 11:17:08 +0000 (11:17 +0000)]
Remove 'sretpromotion' pass from the documentation. This pass is long
dead.

Patch by Stephan Falke.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168492 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoGeneralize matching of add_executable to add_XXX_executable.
Ted Kremenek [Thu, 22 Nov 2012 07:48:52 +0000 (07:48 +0000)]
Generalize matching of add_executable to add_XXX_executable.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168490 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agollvm.fmuladd.* lowering should be checking isOperationLegalOrCustom, rather than
Lang Hames [Thu, 22 Nov 2012 03:31:45 +0000 (03:31 +0000)]
llvm.fmuladd.* lowering should be checking isOperationLegalOrCustom, rather than
isOperationLegal. Thanks to Craig Topper for pointing this out.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168485 91177308-0d34-0410-b5e6-96231b3b80d8

11 years ago[asan] rip off the creation of global redzones from the main AddressSanitizer class...
Kostya Serebryany [Thu, 22 Nov 2012 03:18:50 +0000 (03:18 +0000)]
[asan] rip off the creation of global redzones from the main AddressSanitizer class into a separate class. The intent is to make it a separate ModulePass in the following commmits

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168484 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoPull some code out into functions to make rearranging them a bit easier.
Eric Christopher [Thu, 22 Nov 2012 00:59:49 +0000 (00:59 +0000)]
Pull some code out into functions to make rearranging them a bit easier.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168481 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoCorrects a problem where we reply exclusively of GEPs to drive
Preston Briggs [Wed, 21 Nov 2012 23:50:04 +0000 (23:50 +0000)]
Corrects a problem where we reply exclusively of GEPs to drive
analysis.  Better is to look for cases with useful GEPs and use them
when possible.  When a pair of useful GEPs is not available, use the
raw SCEVs directly. This approach supports better analysis of pointer
dereferencing.

In parallel, all the test cases are updated appropriately.
Cases where we have a store to *B++ can now be analyzed!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168474 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoMips direct object xgot support
Jack Carter [Wed, 21 Nov 2012 23:38:59 +0000 (23:38 +0000)]
Mips direct object xgot support

This patch provides support for the MIPS relocations:

    *)  R_MIPS_GOT_HI16
    *)  R_MIPS_GOT_LO16
    *)  R_MIPS_CALL_HI16
    *)  R_MIPS_CALL_LO16

These are used for large GOT instruction sequences.

Contributer: Jack Carter

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168471 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoFix a typo in FileCheck.rst
Eli Bendersky [Wed, 21 Nov 2012 22:40:52 +0000 (22:40 +0000)]
Fix a typo in FileCheck.rst

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168466 91177308-0d34-0410-b5e6-96231b3b80d8

11 years ago[mips] Generate big GOT code.
Akira Hatanaka [Wed, 21 Nov 2012 20:40:38 +0000 (20:40 +0000)]
[mips] Generate big GOT code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168460 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoAdding tests for the Intel JIT event listener's MCJIT support.
Andrew Kaylor [Wed, 21 Nov 2012 20:38:26 +0000 (20:38 +0000)]
Adding tests for the Intel JIT event listener's MCJIT support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168459 91177308-0d34-0410-b5e6-96231b3b80d8

11 years ago[mips] Simplify lowering functions in MipsISelLowering.cpp by using the helper
Akira Hatanaka [Wed, 21 Nov 2012 20:30:40 +0000 (20:30 +0000)]
[mips] Simplify lowering functions in MipsISelLowering.cpp by using the helper
functions added in r168456.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168458 91177308-0d34-0410-b5e6-96231b3b80d8

11 years ago[mips] Add helper functions that create nodes for computing address.
Akira Hatanaka [Wed, 21 Nov 2012 20:26:38 +0000 (20:26 +0000)]
[mips] Add helper functions that create nodes for computing address.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168456 91177308-0d34-0410-b5e6-96231b3b80d8

11 years ago[mips] Add command line option "-mxgot".
Akira Hatanaka [Wed, 21 Nov 2012 20:21:11 +0000 (20:21 +0000)]
[mips] Add command line option "-mxgot".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168455 91177308-0d34-0410-b5e6-96231b3b80d8

11 years ago[mips] When a node which loads from a GOT is created, pass a MachinePointerInfo
Akira Hatanaka [Wed, 21 Nov 2012 20:16:34 +0000 (20:16 +0000)]
[mips] When a node which loads from a GOT is created, pass a MachinePointerInfo
referring to a GOT entry.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168453 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoAdd new predicates for the immediate operands.
Jyotsna Verma [Wed, 21 Nov 2012 20:05:09 +0000 (20:05 +0000)]
Add new predicates for the immediate operands.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168451 91177308-0d34-0410-b5e6-96231b3b80d8

11 years ago[mips] Add target operand flag enums for big GOT relocations.
Akira Hatanaka [Wed, 21 Nov 2012 19:59:51 +0000 (19:59 +0000)]
[mips] Add target operand flag enums for big GOT relocations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168450 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoUse one common 'let' expression to set PrintMethod for all immediate operands.
Jyotsna Verma [Wed, 21 Nov 2012 19:53:42 +0000 (19:53 +0000)]
Use one common 'let' expression to set PrintMethod for all immediate operands.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168449 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoAdd relocations used for mips big GOT.
Akira Hatanaka [Wed, 21 Nov 2012 19:50:22 +0000 (19:50 +0000)]
Add relocations used for mips big GOT.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168448 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agotest commit: added a few comments
Preston Briggs [Wed, 21 Nov 2012 18:53:19 +0000 (18:53 +0000)]
test commit: added a few comments

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168445 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoImplementing basic function-level profiling support in IntelJITEventListener.
Andrew Kaylor [Wed, 21 Nov 2012 18:50:33 +0000 (18:50 +0000)]
Implementing basic function-level profiling support in IntelJITEventListener.

Tests to follow in another patch.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168444 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoAdd support for varargs functions for msp430.
Anton Korobeynikov [Wed, 21 Nov 2012 17:28:27 +0000 (17:28 +0000)]
Add support for varargs functions for msp430.
Patch by Job Noorman!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168440 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoAdd support for byval args. Patch by Job Noorman!
Anton Korobeynikov [Wed, 21 Nov 2012 17:23:03 +0000 (17:23 +0000)]
Add support for byval args. Patch by Job Noorman!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168439 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoFinish the renaming.
Rafael Espindola [Wed, 21 Nov 2012 16:56:33 +0000 (16:56 +0000)]
Finish the renaming.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168437 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoRenamed HexagonImmediates.td -> HexagonOperands.td.
Jyotsna Verma [Wed, 21 Nov 2012 16:28:18 +0000 (16:28 +0000)]
Renamed HexagonImmediates.td -> HexagonOperands.td.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168434 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agollvm/test/Transforms/InstCombine/sdiv-1.ll: FileCheck-ize.
NAKAMURA Takumi [Wed, 21 Nov 2012 14:46:18 +0000 (14:46 +0000)]
llvm/test/Transforms/InstCombine/sdiv-1.ll: FileCheck-ize.

"not grep '-715827882'" performed as below...bad...

Usage: grep [OPTION]... PATTERN [FILE]...
Try `grep --help' for more information.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168430 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoUsing "not grep" is brittle as the test passes if llvm-as fails.
Rafael Espindola [Wed, 21 Nov 2012 14:17:23 +0000 (14:17 +0000)]
Using "not grep" is brittle as the test passes if llvm-as fails.
Fix the testcase to be valid IL and uses FileCheck.
Thanks to NAKAMURA Takumi for noticing it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168427 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoPR14055: Implement support for sub-vector operations in SROA.
Chandler Carruth [Wed, 21 Nov 2012 08:16:30 +0000 (08:16 +0000)]
PR14055: Implement support for sub-vector operations in SROA.

Now if we can transform an alloca into a single vector value, but it has
subvector, non-element accesses, we form the appropriate shufflevectors
to allow SROA to proceed. This fixes PR14055 which pointed out a very
common pattern that SROA couldn't handle -- mixed vec3 and vec4
operations on a single alloca.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168418 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoFix execution domain for packed FMA4 instructions.
Craig Topper [Wed, 21 Nov 2012 08:08:21 +0000 (08:08 +0000)]
Fix execution domain for packed FMA4 instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168417 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoMark ISD::FMA as Legal instead of custom for x86 with FMA3/FMA4. Needed so that llvm...
Craig Topper [Wed, 21 Nov 2012 05:36:24 +0000 (05:36 +0000)]
Mark ISD::FMA as Legal instead of custom for x86 with FMA3/FMA4. Needed so that llvm.muladd can be converted to ISD::FMA for fp_contract.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168413 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoMake calcLiveInMask method static.
Jakub Staszak [Wed, 21 Nov 2012 00:59:34 +0000 (00:59 +0000)]
Make calcLiveInMask method static.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168409 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoMake isScratchReg and isFPCopy methods static.
Jakub Staszak [Wed, 21 Nov 2012 00:50:57 +0000 (00:50 +0000)]
Make isScratchReg and isFPCopy methods static.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168407 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoWhitespace.
Eric Christopher [Wed, 21 Nov 2012 00:34:38 +0000 (00:34 +0000)]
Whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168402 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoUpdate for some of the coding standard before rearranging functions
Eric Christopher [Wed, 21 Nov 2012 00:34:35 +0000 (00:34 +0000)]
Update for some of the coding standard before rearranging functions
around.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168401 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoUpdate some comments.
Eric Christopher [Wed, 21 Nov 2012 00:17:49 +0000 (00:17 +0000)]
Update some comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168400 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoUpdate and add some comments.
Eric Christopher [Wed, 21 Nov 2012 00:03:31 +0000 (00:03 +0000)]
Update and add some comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168399 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoWhitespace.
Eric Christopher [Wed, 21 Nov 2012 00:03:28 +0000 (00:03 +0000)]
Whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168398 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoAdd a tests for the new -no-show-raw-insn option of llvm-objdump.
Eli Bendersky [Tue, 20 Nov 2012 23:44:22 +0000 (23:44 +0000)]
Add a tests for the new -no-show-raw-insn option of llvm-objdump.

This also initiates a test/tools directory where tools-specific tests can be
placed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168397 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoAdd obvious constantness.
Jakub Staszak [Tue, 20 Nov 2012 23:32:32 +0000 (23:32 +0000)]
Add obvious constantness.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168396 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoRemove constness from this, it modifies the output stream as does
Eric Christopher [Tue, 20 Nov 2012 23:30:11 +0000 (23:30 +0000)]
Remove constness from this, it modifies the output stream as does
everything else underneath.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168395 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoAdd the -no-show-raw-insn option to llvm-objdump, thus making it a bit more
Eli Bendersky [Tue, 20 Nov 2012 22:57:02 +0000 (22:57 +0000)]
Add the -no-show-raw-insn option to llvm-objdump, thus making it a bit more
conformant to binutils objdump.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168393 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoremoves a few "const" qualifiers
Sebastian Pop [Tue, 20 Nov 2012 22:28:04 +0000 (22:28 +0000)]
removes a few "const" qualifiers

so that I can (someday) call SE->getSCEV without complaint.
No semantic change intended.

Patch from Preston Briggs <preston.briggs@gmail.com>.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168391 91177308-0d34-0410-b5e6-96231b3b80d8

11 years ago[python] fix get_library()
Anders Waldenborg [Tue, 20 Nov 2012 22:27:55 +0000 (22:27 +0000)]
[python] fix get_library()

Before this fix, the LLVM Python bindings on SVN trunk always fail with:
Exception: LLVM shared library not found!
since it's still looking for a library named "LLVM-3.1svn".

Besides updating the LLVM version in the library name,
this patch also changes llvm.get_library() to make it possible to run
the unit tests without installing the LLVM shared library into a
default linker search path.

e.g. after this patch, running the llvm/python unit tests with:
LD_LIBRARY_PATH=../build/Debug+Asserts/lib nosetests -v bindings/python/llvm/tests/
would work on Linux.

Patch from Scott Tsai (with some minor modifications)

Patch also acked by Gregory Szorc

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168390 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoRemoving some unused instruction definitions from the Hexagon backend.
Jyotsna Verma [Tue, 20 Nov 2012 22:14:23 +0000 (22:14 +0000)]
Removing some unused instruction definitions from the Hexagon backend.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168388 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoRemove unused function argument, add a bit to the comment.
Eric Christopher [Tue, 20 Nov 2012 22:14:13 +0000 (22:14 +0000)]
Remove unused function argument, add a bit to the comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168387 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoFormatting.
Eric Christopher [Tue, 20 Nov 2012 20:34:47 +0000 (20:34 +0000)]
Formatting.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168384 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoWhitespace.
Eric Christopher [Tue, 20 Nov 2012 20:34:44 +0000 (20:34 +0000)]
Whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168383 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoSome sphinx-ing and consistency fixes
Eli Bendersky [Tue, 20 Nov 2012 19:37:58 +0000 (19:37 +0000)]
Some sphinx-ing and consistency fixes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168380 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoRemove some dead code.
Eric Christopher [Tue, 20 Nov 2012 18:37:40 +0000 (18:37 +0000)]
Remove some dead code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168374 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoBetter 80cols... *sigh*
Joe Abbey [Tue, 20 Nov 2012 18:14:15 +0000 (18:14 +0000)]
Better 80cols... *sigh*

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168373 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoFixing a broken link.
Joe Abbey [Tue, 20 Nov 2012 17:51:08 +0000 (17:51 +0000)]
Fixing a broken link.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168372 91177308-0d34-0410-b5e6-96231b3b80d8

11 years ago[asan] use names of globals instead of an external set to distinguish the globals...
Kostya Serebryany [Tue, 20 Nov 2012 14:16:08 +0000 (14:16 +0000)]
[asan] use names of globals instead of an external set to distinguish the globals generated by asan

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168368 91177308-0d34-0410-b5e6-96231b3b80d8

11 years ago[asan] don't instrument linker-initialized globals even with external linkage in...
Kostya Serebryany [Tue, 20 Nov 2012 13:11:32 +0000 (13:11 +0000)]
[asan] don't instrument linker-initialized globals even with external linkage in -asan-initialization-order mode

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168367 91177308-0d34-0410-b5e6-96231b3b80d8

11 years ago[asan] make sure that linker-initialized globals (non-extern) are not instrumented...
Kostya Serebryany [Tue, 20 Nov 2012 13:00:01 +0000 (13:00 +0000)]
[asan] make sure that linker-initialized globals (non-extern) are not instrumented even in -asan-initialization-order mode. This time with a test

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168366 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agodocs: Fix highlighting.
Sean Silva [Tue, 20 Nov 2012 12:36:27 +0000 (12:36 +0000)]
docs: Fix highlighting.

.git/config was marked as "bash" instead of "ini".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168365 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agollvm/test/ExecutionEngine/MCJIT/lit.local.cfg: ppc32-elf is not ready.
NAKAMURA Takumi [Tue, 20 Nov 2012 10:49:01 +0000 (10:49 +0000)]
llvm/test/ExecutionEngine/MCJIT/lit.local.cfg: ppc32-elf is not ready.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168364 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoFix a place where the declaration didn't use LLVM_ENABLE_DUMP but the
Chandler Carruth [Tue, 20 Nov 2012 10:23:50 +0000 (10:23 +0000)]
Fix a place where the declaration didn't use LLVM_ENABLE_DUMP but the
definition did.

The last part of PR14324.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168363 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoUse LLVM_ENABLE_DUMP for the variables used in printing as well as the
Chandler Carruth [Tue, 20 Nov 2012 10:23:07 +0000 (10:23 +0000)]
Use LLVM_ENABLE_DUMP for the variables used in printing as well as the
printing functions themselves.

Part of PR14324 (which should have just been a patch to the list, but
hey...)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168362 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoFix PR14132 and handle OOB loads speculated throuh PHI nodes.
Chandler Carruth [Tue, 20 Nov 2012 10:02:19 +0000 (10:02 +0000)]
Fix PR14132 and handle OOB loads speculated throuh PHI nodes.

The issue is that we may end up with newly OOB loads when speculating
a load into the predecessors of a PHI node, and this confuses the new
integer splitting logic in some cases, triggering an assertion failure.
In fact, the branch in question must be dead code as it loads from
a too-narrow alloca. Add code to handle this gracefully and leave the
requisite FIXMEs for both optimizing more aggressively and doing more to
aid sanitizing invalid code which triggers these patterns.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168361 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoFix physical register liveness calculations:
Tim Northover [Tue, 20 Nov 2012 09:56:11 +0000 (09:56 +0000)]
Fix physical register liveness calculations:

+ Take account of clobbers
+ Give outputs priority over inputs since they happen later.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168360 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoIntel OCL built-ins calling conventions now support MacOS 32-bit.
Elena Demikhovsky [Tue, 20 Nov 2012 09:37:57 +0000 (09:37 +0000)]
Intel OCL built-ins calling conventions now support MacOS 32-bit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168359 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoMarking remote mcjit tests as XFAIL for MIPS.
Simon Atanasyan [Tue, 20 Nov 2012 07:25:17 +0000 (07:25 +0000)]
Marking remote mcjit tests as XFAIL for MIPS.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168357 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoMake the AttrListPtr object a part of the LLVMContext.
Bill Wendling [Tue, 20 Nov 2012 05:09:20 +0000 (05:09 +0000)]
Make the AttrListPtr object a part of the LLVMContext.

When code deletes the context, the AttributeImpls that the AttrListPtr points to
are now invalid. Therefore, instead of keeping a separate managed static for the
AttrListPtrs that's reference counted, move it into the LLVMContext and delete
it when deleting the AttributeImpls.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168354 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoNote Freescale's contributions in the PPC release notes.
Hal Finkel [Tue, 20 Nov 2012 04:20:31 +0000 (04:20 +0000)]
Note Freescale's contributions in the PPC release notes.

This mainly reflects the work of Tobias von Koch.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168352 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agodocs: Sphinxify LLVMBuild documentation.
Sean Silva [Tue, 20 Nov 2012 03:13:53 +0000 (03:13 +0000)]
docs: Sphinxify LLVMBuild documentation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168348 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoAdd a comment to associate a FIXME with a PR where it is matters.
Chandler Carruth [Tue, 20 Nov 2012 01:27:48 +0000 (01:27 +0000)]
Add a comment to associate a FIXME with a PR where it is matters.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168347 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoRework the rewriting of loads and stores for vector and integer allocas
Chandler Carruth [Tue, 20 Nov 2012 01:12:50 +0000 (01:12 +0000)]
Rework the rewriting of loads and stores for vector and integer allocas
to properly handle the combinations of these with split integer loads
and stores. This essentially replaces Evan's r168227 by refactoring the
code in a different way, and trynig to mirror that refactoring in both
the load and store sides of the rewriting.

Generally speaking there was some really problematic duplicated code
here that led to poorly founded assumptions and then subtle bugs. Now
much of the code actually flows through and follows a more consistent
style and logical path. There is still a tiny bit of duplication on the
store side of things, but it is much less bad.

This also changes the logic to never re-use a load or store instruction
as that was simply too error prone in practice.

I've added a few tests (one a reduction of the one in Evan's original
patch, which happened to be the same as the report in PR14349). I'm
going to look at adding a few more tests for things I found and fixed in
passing (such as the volatile tests in the vectorizable predicate).

This patch has survived bootstrap, and modulo one bugfix survived
Duncan's test suite, but let me know if anything else explodes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168346 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoReST-ify some markup in the LIT document
Eli Bendersky [Tue, 20 Nov 2012 00:26:08 +0000 (00:26 +0000)]
ReST-ify some markup in the LIT document

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168345 91177308-0d34-0410-b5e6-96231b3b80d8

11 years ago80-column and whitespace fixups.
Eric Christopher [Tue, 20 Nov 2012 00:15:36 +0000 (00:15 +0000)]
80-column and whitespace fixups.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168344 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoAllow using MemoryBuffers with yaml::Stream directly.
Sean Silva [Mon, 19 Nov 2012 23:21:47 +0000 (23:21 +0000)]
Allow using MemoryBuffers with yaml::Stream directly.

The rationale is to get YAML filenames in diagnostics from
yaml::Stream::printError -- currently the filename is hard-coded as
"YAML" because there's no buffer information available.

Patch by Kim Gräsman!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168341 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoRemove a function argument and propagate const around accordingly.
Eric Christopher [Mon, 19 Nov 2012 22:42:15 +0000 (22:42 +0000)]
Remove a function argument and propagate const around accordingly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168338 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoWhitespace and 80-col.
Eric Christopher [Mon, 19 Nov 2012 22:42:10 +0000 (22:42 +0000)]
Whitespace and 80-col.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168337 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agodocs: Fix reference to "bold" part of code example.
Sean Silva [Mon, 19 Nov 2012 21:18:50 +0000 (21:18 +0000)]
docs: Fix reference to "bold" part of code example.

Fixes PR14380.

The prose was referring to a "bold" part of the code example, where the
boldness was lost in the transition from HTML. Unlike HTML, where one
can easily have a <b> inside a <pre>, reStructuredText is generally
unable to represent such nested markup.

Hack around it with the :emphasise-lines: option to the  code-block
directive to single out the regions instead. Thankfully the regions are
close-enough to being full lines for this to work.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168329 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoMake AsmPrinter::EmitTTypeReference() more robust - put
Anton Korobeynikov [Mon, 19 Nov 2012 21:17:20 +0000 (21:17 +0000)]
Make AsmPrinter::EmitTTypeReference() more robust - put
the zero GV check inside, so we won't forget it at the caller side.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168328 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoFactor out type info emission into separate routine.
Anton Korobeynikov [Mon, 19 Nov 2012 21:06:26 +0000 (21:06 +0000)]
Factor out type info emission into separate routine.
It turned out that ARM wants different layout of type infos.
This is yet another patch in attempt to fix PR7187

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168325 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoMove section label emission to module end. Nothing should be
Eric Christopher [Mon, 19 Nov 2012 19:43:59 +0000 (19:43 +0000)]
Move section label emission to module end. Nothing should be
depending on them being emitted before the text and/or data
sections and testing didn't uncover any.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168321 91177308-0d34-0410-b5e6-96231b3b80d8

11 years agoHandle mixed normal and early-clobber defs on inline asm.
Jakob Stoklund Olesen [Mon, 19 Nov 2012 19:31:10 +0000 (19:31 +0000)]
Handle mixed normal and early-clobber defs on inline asm.

PR14376.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168320 91177308-0d34-0410-b5e6-96231b3b80d8