oota-llvm.git
15 years agoAdd Thumb2 load / store multiple instructions. Not used yet.
Evan Cheng [Fri, 3 Jul 2009 00:18:36 +0000 (00:18 +0000)]
Add Thumb2 load / store multiple instructions. Not used yet.

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

15 years agoConvert the first batch of passes to use LLVMContext.
Owen Anderson [Fri, 3 Jul 2009 00:17:18 +0000 (00:17 +0000)]
Convert the first batch of passes to use LLVMContext.

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

15 years agoReplace std::iostreams with raw_ostream in TableGen.
Daniel Dunbar [Fri, 3 Jul 2009 00:10:29 +0000 (00:10 +0000)]
Replace std::iostreams with raw_ostream in TableGen.
 - Sorry, I can't help myself.

 - No intended functionality change.

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

15 years agot2LDR_PRE etc are loads.
Evan Cheng [Fri, 3 Jul 2009 00:08:19 +0000 (00:08 +0000)]
t2LDR_PRE etc are loads.

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

15 years agoAdded indexed stores.
Evan Cheng [Fri, 3 Jul 2009 00:06:39 +0000 (00:06 +0000)]
Added indexed stores.

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

15 years agoFill in a few more missing accessors.
Owen Anderson [Thu, 2 Jul 2009 23:58:19 +0000 (23:58 +0000)]
Fill in a few more missing accessors.

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

15 years agoSign extending pre/post indexed loads.
Evan Cheng [Thu, 2 Jul 2009 23:16:11 +0000 (23:16 +0000)]
Sign extending pre/post indexed loads.

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

15 years agoswitch the .ll parser to use SourceMgr.
Chris Lattner [Thu, 2 Jul 2009 23:08:13 +0000 (23:08 +0000)]
switch the .ll parser to use SourceMgr.

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

15 years agoswitch the .ll parser into SMDiagnostic.
Chris Lattner [Thu, 2 Jul 2009 22:46:18 +0000 (22:46 +0000)]
switch the .ll parser into SMDiagnostic.

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

15 years agoSimplify debug info intrisinc lowering.
Devang Patel [Thu, 2 Jul 2009 22:43:26 +0000 (22:43 +0000)]
Simplify debug info intrisinc lowering.

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

15 years agoadd an explicit class for holding llvm::SourceMgr diagnostics and use
Chris Lattner [Thu, 2 Jul 2009 22:24:20 +0000 (22:24 +0000)]
add an explicit class for holding llvm::SourceMgr diagnostics and use
it to print them.  This gives us column numbers in the diag line.  Before:

t.s:4: error: unexpected token in argument list
 mov %eax %edx
          ^

now:
t.s:4:11: error: unexpected token in argument list
 mov %eax %edx
          ^

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

15 years agoCheckpoint refactoring of ThumbInstrInfo and ThumbRegisterInfo into Thumb1InstrInfo...
David Goodwin [Thu, 2 Jul 2009 22:18:33 +0000 (22:18 +0000)]
Checkpoint refactoring of ThumbInstrInfo and ThumbRegisterInfo into Thumb1InstrInfo, Thumb2InstrInfo, Thumb1RegisterInfo and Thumb2RegisterInfo. Move methods from ARMInstrInfo to ARMBaseInstrInfo to prepare for sharing with Thumb2.

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

15 years agoimplement error recovery in the llvm-mc parser. Feel the power!
Chris Lattner [Thu, 2 Jul 2009 21:53:43 +0000 (21:53 +0000)]
implement error recovery in the llvm-mc parser.  Feel the power!

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

15 years agoMake the current LLVMContext available to passes.
Owen Anderson [Thu, 2 Jul 2009 20:23:41 +0000 (20:23 +0000)]
Make the current LLVMContext available to passes.

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

15 years agoCMake build fixes, from Xerxes Ranby
Douglas Gregor [Thu, 2 Jul 2009 18:53:52 +0000 (18:53 +0000)]
CMake build fixes, from Xerxes Ranby

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

15 years agoshrinking down #includes
Bruno Cardoso Lopes [Thu, 2 Jul 2009 18:29:24 +0000 (18:29 +0000)]
shrinking down #includes

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

15 years agoAdd an accessor to Function so that Passes can easily get access to the context.
Owen Anderson [Thu, 2 Jul 2009 18:03:58 +0000 (18:03 +0000)]
Add an accessor to Function so that Passes can easily get access to the context.

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

15 years agoPrefix bin dir to executables.
Sanjiv Gupta [Thu, 2 Jul 2009 17:51:09 +0000 (17:51 +0000)]
Prefix bin dir to executables.

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

15 years agoRemove tabs.
Devang Patel [Thu, 2 Jul 2009 17:39:40 +0000 (17:39 +0000)]
Remove tabs.

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

15 years agoFixed handling of -c option.wq
Sanjiv Gupta [Thu, 2 Jul 2009 17:35:38 +0000 (17:35 +0000)]
Fixed handling of -c option.wq

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

15 years agoUse LLVMContext for generating MDStrings too.
Owen Anderson [Thu, 2 Jul 2009 17:28:30 +0000 (17:28 +0000)]
Use LLVMContext for generating MDStrings too.

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

15 years agoUse LLVMContext to generate metadata constants.
Owen Anderson [Thu, 2 Jul 2009 17:20:28 +0000 (17:20 +0000)]
Use LLVMContext to generate metadata constants.

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

15 years agoAdd accessors for metadata constants.
Owen Anderson [Thu, 2 Jul 2009 17:19:47 +0000 (17:19 +0000)]
Add accessors for metadata constants.

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

15 years agoFix typo.
Devang Patel [Thu, 2 Jul 2009 17:17:03 +0000 (17:17 +0000)]
Fix typo.
Thanks Duncan!

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

15 years agoAdd accessor for MDNode.
Owen Anderson [Thu, 2 Jul 2009 17:12:48 +0000 (17:12 +0000)]
Add accessor for MDNode.

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

15 years agoUse LLVMContext for generating UndefValue constants too!
Owen Anderson [Thu, 2 Jul 2009 17:04:01 +0000 (17:04 +0000)]
Use LLVMContext for generating UndefValue constants too!

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

15 years agoAdd accessor for getting UndefValue's.
Owen Anderson [Thu, 2 Jul 2009 16:51:51 +0000 (16:51 +0000)]
Add accessor for getting UndefValue's.

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

15 years agoDescribe the LLVMContext API change.
Owen Anderson [Thu, 2 Jul 2009 16:48:38 +0000 (16:48 +0000)]
Describe the LLVMContext API change.

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

15 years agosimplify some logic by using isWeakForLinker(). Thanks to Anton for
Chris Lattner [Thu, 2 Jul 2009 16:08:53 +0000 (16:08 +0000)]
simplify some logic by using isWeakForLinker().  Thanks to Anton for
pointing this out.

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

15 years agodo not try to analyze bitcasts from i64 to <2 x i32> in ComputedMaskedBits. While
Chris Lattner [Thu, 2 Jul 2009 16:04:08 +0000 (16:04 +0000)]
do not try to analyze bitcasts from i64 to <2 x i32> in ComputedMaskedBits.  While
we could do this, doing so requires adjusting the demanded mask and the code isn't
doing that yet.  This fixes PR4495

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

15 years agofix inverted logic pointed out by John McCall, noticed by inspection.
Chris Lattner [Thu, 2 Jul 2009 15:39:39 +0000 (15:39 +0000)]
fix inverted logic pointed out by John McCall, noticed by inspection.

This was considering vector intrinsics to have cost 2, but non-vector
intrinsics to have cost 1, which is backward.

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

15 years agoFix windows build, patch by Howard Su.
Duncan Sands [Thu, 2 Jul 2009 12:09:50 +0000 (12:09 +0000)]
Fix windows build, patch by Howard Su.

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

15 years agoThumb2 pre/post indexed loads.
Evan Cheng [Thu, 2 Jul 2009 07:28:31 +0000 (07:28 +0000)]
Thumb2 pre/post indexed loads.

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

15 years agoAck, missed one incompatibility.
Owen Anderson [Thu, 2 Jul 2009 07:21:49 +0000 (07:21 +0000)]
Ack, missed one incompatibility.

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

15 years agoRestore other bits of the C API that I tore up. All pre-existing APIs default to...
Owen Anderson [Thu, 2 Jul 2009 07:17:57 +0000 (07:17 +0000)]
Restore other bits of the C API that I tore up.  All pre-existing APIs default to using the
default global context, while new *InContext() APIs have been added that take a LLVMContextRef parameter.

Apologies to anyone affected by this breakage.

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

15 years ago80 col violation.
Evan Cheng [Thu, 2 Jul 2009 06:44:30 +0000 (06:44 +0000)]
80 col violation.

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

15 years agoChange the meaning of predicate hasThumb2 to mean thumb2 ISA is available, not that...
Evan Cheng [Thu, 2 Jul 2009 06:38:40 +0000 (06:38 +0000)]
Change the meaning of predicate hasThumb2 to mean thumb2 ISA is available, not that it's in thumb mode and thumb2 is available. Added isThumb2 predicate to replace the old predicate.

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

15 years ago@GOTPCREL is also rip-relative. Fix fast-isel to do the right thing.
Chris Lattner [Thu, 2 Jul 2009 04:22:01 +0000 (04:22 +0000)]
@GOTPCREL is also rip-relative.  Fix fast-isel to do the right thing.
This fixes an llvm-gcc bootstrap problem I introduced.

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

15 years agoFix yet-another bug I introduced into fastisel, this time handling
Chris Lattner [Thu, 2 Jul 2009 03:14:25 +0000 (03:14 +0000)]
Fix yet-another bug I introduced into fastisel, this time handling
constant pool references that weren't getting properly rip-relative.

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

15 years agollvm-mc/x86: Test case for x86 operand parsing.
Daniel Dunbar [Thu, 2 Jul 2009 02:28:23 +0000 (02:28 +0000)]
llvm-mc/x86: Test case for x86 operand parsing.

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

15 years agollvm-mc/x86: Fix various nit-picky bugs in displacement parsing.
Daniel Dunbar [Thu, 2 Jul 2009 02:26:39 +0000 (02:26 +0000)]
llvm-mc/x86: Fix various nit-picky bugs in displacement parsing.
 - Test case to follow.

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

15 years agoRemove getFunctionAlignment from TargetELFInfo and use new MachineFunction alignment...
Bruno Cardoso Lopes [Thu, 2 Jul 2009 02:13:13 +0000 (02:13 +0000)]
Remove getFunctionAlignment from TargetELFInfo and use new MachineFunction alignment method

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

15 years agollvm-mc/x86: Fix bug in disambiguation of displacement operand, introduced by me
Daniel Dunbar [Thu, 2 Jul 2009 02:09:07 +0000 (02:09 +0000)]
llvm-mc/x86: Fix bug in disambiguation of displacement operand, introduced by me
(I think).
 - We weren't properly parsing the leading parenthesized expression in something
   like 'push (4)(%eax)'.

 - Added ParseParenRelocatableExpression to support this. I suspect we should
   just use lookahead, though.

 - Test case to follow.

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

15 years agollvm-mc/x86: Factor out ParseX86Register.
Daniel Dunbar [Thu, 2 Jul 2009 01:58:24 +0000 (01:58 +0000)]
llvm-mc/x86: Factor out ParseX86Register.

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

15 years ago80 col violation.
Evan Cheng [Thu, 2 Jul 2009 01:30:04 +0000 (01:30 +0000)]
80 col violation.

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

15 years agoclarify: stub emission depends on the version of the linker you use, it has nothing
Chris Lattner [Thu, 2 Jul 2009 01:24:34 +0000 (01:24 +0000)]
clarify: stub emission depends on the version of the linker you use, it has nothing
to do with the target.  Also, the stub elimination optimization *requires* making the
stub explicit.

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

15 years agoFactor out ARM indexed load matching code.
Evan Cheng [Thu, 2 Jul 2009 01:23:32 +0000 (01:23 +0000)]
Factor out ARM indexed load matching code.

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

15 years agoAdd debug info utility routines.
Devang Patel [Thu, 2 Jul 2009 01:15:24 +0000 (01:15 +0000)]
Add debug info utility routines.

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

15 years agollvm-mc/x86: Rename X86Operand::ScaleReg to IndexReg and make order consistent
Daniel Dunbar [Thu, 2 Jul 2009 00:51:52 +0000 (00:51 +0000)]
llvm-mc/x86: Rename X86Operand::ScaleReg to IndexReg and make order consistent
with syntax.

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

15 years agoMaintain the old LTO API, by using the global context.
Owen Anderson [Thu, 2 Jul 2009 00:31:14 +0000 (00:31 +0000)]
Maintain the old LTO API, by using the global context.

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

15 years agoSimplify.
Devang Patel [Thu, 2 Jul 2009 00:28:03 +0000 (00:28 +0000)]
Simplify.

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

15 years agoFix a bunch of other places that used operator[] to test whether
Dan Gohman [Thu, 2 Jul 2009 00:17:47 +0000 (00:17 +0000)]
Fix a bunch of other places that used operator[] to test whether
a key is present in a std::map or DenseMap to use find instead.

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

15 years agoAdd a C wrapper for accessing the global default context.
Owen Anderson [Thu, 2 Jul 2009 00:16:38 +0000 (00:16 +0000)]
Add a C wrapper for accessing the global default context.

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

15 years agofix ld error with -no-undefined switch, which is undefined on darwin8
John Mosby [Thu, 2 Jul 2009 00:10:23 +0000 (00:10 +0000)]
fix ld error with -no-undefined switch, which is undefined on darwin8

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

15 years agoSimplify. No intentional functionality change.
Devang Patel [Thu, 2 Jul 2009 00:08:09 +0000 (00:08 +0000)]
Simplify. No intentional functionality change.

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

15 years agoTry again at converting the LLParser to use LLVMContext, without massive breakage...
Owen Anderson [Wed, 1 Jul 2009 23:57:11 +0000 (23:57 +0000)]
Try again at converting the LLParser to use LLVMContext, without massive breakage this time.

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

15 years agoAdd a few methods that got left out earlier.
Owen Anderson [Wed, 1 Jul 2009 23:56:45 +0000 (23:56 +0000)]
Add a few methods that got left out earlier.

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

15 years agoTry to clarify a point about getting DominatorTree info from a module pass.
Daniel Dunbar [Wed, 1 Jul 2009 23:38:44 +0000 (23:38 +0000)]
Try to clarify a point about getting DominatorTree info from a module pass.

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

15 years agoAdd darwin stub removal to wishlist.
Dale Johannesen [Wed, 1 Jul 2009 23:36:02 +0000 (23:36 +0000)]
Add darwin stub removal to wishlist.

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

15 years agoFix the LTO header for LLVMContext changes.
Owen Anderson [Wed, 1 Jul 2009 23:28:55 +0000 (23:28 +0000)]
Fix the LTO header for LLVMContext changes.

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

15 years agoRequest LCSSA after LoopSimplify. This fixes a problem in which the
Dan Gohman [Wed, 1 Jul 2009 23:21:38 +0000 (23:21 +0000)]
Request LCSSA after LoopSimplify. This fixes a problem in which the
PassManager was scheduling LCSSA before LoopSimplify, which does not
preserve LCSSA.

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

15 years agoRefactor. No functionality change.
Devang Patel [Wed, 1 Jul 2009 23:19:01 +0000 (23:19 +0000)]
Refactor. No functionality change.

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

15 years agoAdd a new addressing mode for NEON load/store instructions.
Bob Wilson [Wed, 1 Jul 2009 23:16:05 +0000 (23:16 +0000)]
Add a new addressing mode for NEON load/store instructions.

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

15 years agoMake the use of const with respect to LLVMContext sane. Hopefully this is the last...
Owen Anderson [Wed, 1 Jul 2009 23:13:44 +0000 (23:13 +0000)]
Make the use of const with respect to LLVMContext sane.  Hopefully this is the last time, for the
moment, that I will need to make far-reaching changes.

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

15 years agoUse find instead of operator[] to test whether an element is in a std::map.
Dan Gohman [Wed, 1 Jul 2009 23:12:33 +0000 (23:12 +0000)]
Use find instead of operator[] to test whether an element is in a std::map.
This fixes a bug that caused -debug-pass=Details to abort.

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

15 years ago--- Reverse-merging (from foreign repository) r74648 into '.':
Bill Wendling [Wed, 1 Jul 2009 22:33:26 +0000 (22:33 +0000)]
--- Reverse-merging (from foreign repository) r74648 into '.':
U    include/llvm/LLVMContext.h
U    lib/VMCore/LLVMContext.cpp
U    lib/AsmParser/LLParser.cpp
U    lib/AsmParser/LLParser.h

Temporarily reverting r74648. It was causing massive failures in release mode.

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

15 years agoKeep DIDescriptor methods together.
Devang Patel [Wed, 1 Jul 2009 22:10:23 +0000 (22:10 +0000)]
Keep DIDescriptor methods together.
No functionality change.

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

15 years agoFix a comment typo.
Bob Wilson [Wed, 1 Jul 2009 21:59:43 +0000 (21:59 +0000)]
Fix a comment typo.

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

15 years agoFix typo.
Owen Anderson [Wed, 1 Jul 2009 21:58:14 +0000 (21:58 +0000)]
Fix typo.

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

15 years agoConvert LLParser to use LLVMContext for creating constants.
Owen Anderson [Wed, 1 Jul 2009 21:57:44 +0000 (21:57 +0000)]
Convert LLParser to use LLVMContext for creating constants.

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

15 years agoUse AA to check objects before LDA.
Andreas Bolka [Wed, 1 Jul 2009 21:45:23 +0000 (21:45 +0000)]
Use AA to check objects before LDA.

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

15 years agoFix an instcombine abort on a scalar-to-vector bitcast. This fixes PR4487.
Dan Gohman [Wed, 1 Jul 2009 21:38:46 +0000 (21:38 +0000)]
Fix an instcombine abort on a scalar-to-vector bitcast. This fixes PR4487.

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

15 years agoTweak FindExecutable so that relative executable paths work as well.
Daniel Dunbar [Wed, 1 Jul 2009 21:36:28 +0000 (21:36 +0000)]
Tweak FindExecutable so that relative executable paths work as well.

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

15 years agoAdd getMDNode() to access metadata node.
Devang Patel [Wed, 1 Jul 2009 21:26:41 +0000 (21:26 +0000)]
Add getMDNode() to access metadata node.

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

15 years agoFix up a comment: besides the >80col lines, the operation for this
Bob Wilson [Wed, 1 Jul 2009 21:22:45 +0000 (21:22 +0000)]
Fix up a comment: besides the >80col lines, the operation for this
addressing mode is encoded in the second operand, not the third.

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

15 years agoHold the LLVMContext by reference rather than by pointer.
Owen Anderson [Wed, 1 Jul 2009 21:22:36 +0000 (21:22 +0000)]
Hold the LLVMContext by reference rather than by pointer.

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

15 years agoFix metadata unittests
Devang Patel [Wed, 1 Jul 2009 20:59:15 +0000 (20:59 +0000)]
Fix metadata unittests

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

15 years agonew test case
Devang Patel [Wed, 1 Jul 2009 19:40:59 +0000 (19:40 +0000)]
new test case

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

15 years agoDo not print stranded metadata.
Devang Patel [Wed, 1 Jul 2009 19:39:39 +0000 (19:39 +0000)]
Do not print stranded metadata.

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

15 years agoSupport stand alone metadata syntax.
Devang Patel [Wed, 1 Jul 2009 19:21:12 +0000 (19:21 +0000)]
Support stand alone metadata syntax.

!0 = constant metadata !{i32 21, i32 22}
@llvm.blah = constant metadata !{i32 1000, i16 200, metadata !0}

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

15 years agoAdd machine operand for MDNodes. This will be used to communicate debug info.
Devang Patel [Wed, 1 Jul 2009 19:08:07 +0000 (19:08 +0000)]
Add machine operand for MDNodes. This will be used to communicate debug info.

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

15 years agollvm.dbg.declare is always used for local variable's debug info.
Devang Patel [Wed, 1 Jul 2009 18:51:07 +0000 (18:51 +0000)]
llvm.dbg.declare is always used for local variable's debug info.

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

15 years agoUpdate comments to make it clear that the function alignment is the Log2 of the
Bill Wendling [Wed, 1 Jul 2009 18:50:55 +0000 (18:50 +0000)]
Update comments to make it clear that the function alignment is the Log2 of the
bytes and not bytes.

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

15 years agoUpdate configure and config.h.in from r74621.
Jeffrey Yasskin [Wed, 1 Jul 2009 18:30:10 +0000 (18:30 +0000)]
Update configure and config.h.in from r74621.

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

15 years agoFix unit tests for LLVMContext+Module.
Owen Anderson [Wed, 1 Jul 2009 18:14:20 +0000 (18:14 +0000)]
Fix unit tests for LLVMContext+Module.

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

15 years agoAdd a portable strerror*() wrapper, llvm::sys::StrError(). This includes the
Jeffrey Yasskin [Wed, 1 Jul 2009 18:11:20 +0000 (18:11 +0000)]
Add a portable strerror*() wrapper, llvm::sys::StrError().  This includes the
Windows variant, strerror_s, but I couldn't test that.

I'll update configure and config.h.in in a subsequent patch.

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

15 years agoUse correct format for LLVM header #includes.
Misha Brukman [Wed, 1 Jul 2009 17:51:56 +0000 (17:51 +0000)]
Use correct format for LLVM header #includes.

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

15 years agoI give up on trying to use reader/writer locks for recursive type refinement. Use...
Owen Anderson [Wed, 1 Jul 2009 17:22:27 +0000 (17:22 +0000)]
I give up on trying to use reader/writer locks for recursive type refinement.  Use a recursive mutex instead, which will (in theory) generate more contention, but is really
a much more natural fit for what's going on during recursive type refinement.

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

15 years agoAdd a pointer to the owning LLVMContext to Module. This requires threading LLVMConte...
Owen Anderson [Wed, 1 Jul 2009 16:58:40 +0000 (16:58 +0000)]
Add a pointer to the owning LLVMContext to Module.  This requires threading LLVMContext through a lot
of the bitcode reader and ASM parser APIs, as well as supporting it in all of the tools.

Patches for Clang and LLVM-GCC to follow.

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

15 years agoFix codegen for references to available_externally symbols. This fixes
Chris Lattner [Wed, 1 Jul 2009 16:53:44 +0000 (16:53 +0000)]
Fix codegen for references to available_externally symbols.  This fixes
PR4482.

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

15 years agoTry again at making this work on OpenBSD.
Owen Anderson [Wed, 1 Jul 2009 16:19:23 +0000 (16:19 +0000)]
Try again at making this work on OpenBSD.

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

15 years agoExecutables will be at InstallDir/bin directory. Std header files will be at InstallD...
Sanjiv Gupta [Wed, 1 Jul 2009 16:10:29 +0000 (16:10 +0000)]
Executables will be at InstallDir/bin directory. Std header files will be at InstallDir/include, libs will be at InstallDir/lib. Define hooks for these and use them in the options for various tools.

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

15 years agoInsure that __block_holder_tmp is allocated on the stack when a byref
Stuart Hastings [Wed, 1 Jul 2009 15:40:10 +0000 (15:40 +0000)]
Insure that __block_holder_tmp is allocated on the stack when a byref
variable is present.

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

15 years agoFix FindExecutable to work if given an absolute executable path name.
Daniel Dunbar [Wed, 1 Jul 2009 15:26:13 +0000 (15:26 +0000)]
Fix FindExecutable to work if given an absolute executable path name.
 - Patch by Viktor Kutuzov, with tweaks by me.

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

15 years agollvm-mc: Add some more doxyments.
Daniel Dunbar [Wed, 1 Jul 2009 15:14:50 +0000 (15:14 +0000)]
llvm-mc: Add some more doxyments.

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

15 years agoNewNightlyTest: Include minutes/seconds in log file names, to support running
Daniel Dunbar [Wed, 1 Jul 2009 14:52:59 +0000 (14:52 +0000)]
NewNightlyTest: Include  minutes/seconds in log file names, to  support running
multiple runs per day (insane, I know).

Also, remove some unused variables.

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

15 years agoAdded step-by-step directions on how to use the script to build and install an
Misha Brukman [Wed, 1 Jul 2009 13:51:59 +0000 (13:51 +0000)]
Added step-by-step directions on how to use the script to build and install an
x86_64/Linux -> ARM/Linux crosstool.

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

15 years agoCommuteChangesDestination() should check if to-be-commuted instruction defines any...
Evan Cheng [Wed, 1 Jul 2009 08:29:08 +0000 (08:29 +0000)]
CommuteChangesDestination() should check if to-be-commuted instruction defines any register. Also teaches the default commuteInstruction() to commute instruction without definitions (e.g. X86::test / ARM::tsp).

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

15 years agoRemove special handling of implicit_def. Fix a couple more bugs in liveintervalanalys...
Evan Cheng [Wed, 1 Jul 2009 08:19:36 +0000 (08:19 +0000)]
Remove special handling of implicit_def. Fix a couple more bugs in liveintervalanalysis and coalescer handling of implicit_def.

Note, isUndef marker must be placed even on implicit_def def operand or else the scavenger will not ignore it. This is necessary because -O0 path does not use liveintervalanalysis, it treats implicit_def just like any other def.

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

15 years agoTweak MCSymbol doxyments.
Daniel Dunbar [Wed, 1 Jul 2009 07:03:41 +0000 (07:03 +0000)]
Tweak MCSymbol doxyments.

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