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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Daniel Dunbar [Wed, 1 Jul 2009 06:56:54 +0000 (06:56 +0000)]
llvm-mc: Fill in the rest of tokens for 'as-lex' mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74598
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 1 Jul 2009 06:53:29 +0000 (06:53 +0000)]
Fix the build on OpenBSD.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74597
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 1 Jul 2009 06:48:00 +0000 (06:48 +0000)]
Rename MCValue::isConstant to isAbsolute.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74596
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 1 Jul 2009 06:36:49 +0000 (06:36 +0000)]
add some of the new tokens, others are still missing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74595
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 1 Jul 2009 06:35:48 +0000 (06:35 +0000)]
llvm-mc: Emit parsed instructions to the MCStreamer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74594
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 1 Jul 2009 06:35:03 +0000 (06:35 +0000)]
Dump MCInsts in the MC .s printer, for now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74593
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 1 Jul 2009 06:31:49 +0000 (06:31 +0000)]
add comments, privatize interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74592
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 1 Jul 2009 06:23:14 +0000 (06:23 +0000)]
disable some ctors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74591
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 1 Jul 2009 06:21:53 +0000 (06:21 +0000)]
add some comments to MCSymbol header, make the ctor private so that only MCContext can create these.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74590
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 1 Jul 2009 06:08:37 +0000 (06:08 +0000)]
improve comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74589
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 1 Jul 2009 04:13:31 +0000 (04:13 +0000)]
improve the APIs for creating struct and function types with no arguments/elements
to not have to create a temporary vector (in the API at least). Patch by Jay Foad!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74584
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 1 Jul 2009 03:27:19 +0000 (03:27 +0000)]
Fix some fast-isel problems selecting global variable addressing in
pic mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74582
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 1 Jul 2009 01:59:31 +0000 (01:59 +0000)]
Handle IMPLICIT_DEF with isUndef operand marker, part 2. This patch moves the code to annotate machineoperands to LiveIntervalAnalysis. It also add markers for implicit_def that define physical registers. The rest, is just a lot of details.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74580
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 1 Jul 2009 01:48:54 +0000 (01:48 +0000)]
Remove unused AsmPrinter OptLevel argument, and propogate.
- This more or less amounts to a revert of r65379. I'm curious to know what
happened that caused this variable to become unused.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74579
91177308-0d34-0410-b5e6-
96231b3b80d8
David Goodwin [Wed, 1 Jul 2009 00:01:13 +0000 (00:01 +0000)]
Add PIC load and store patterns for Thumb-2.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74577
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Tue, 30 Jun 2009 23:39:59 +0000 (23:39 +0000)]
Add a global context, for easing backwards compatibility.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74574
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 30 Jun 2009 23:38:38 +0000 (23:38 +0000)]
llvm-mc: Introduce method to match a parsed x86 instruction into an MCInst.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74573
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 30 Jun 2009 23:37:44 +0000 (23:37 +0000)]
Fill in some methods for the MCValue field of an MCOperand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74572
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 30 Jun 2009 23:02:44 +0000 (23:02 +0000)]
llvm-mc: Accept relocatable expressions when parsing displacements and
immediates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74568
91177308-0d34-0410-b5e6-
96231b3b80d8
David Goodwin [Tue, 30 Jun 2009 22:50:01 +0000 (22:50 +0000)]
Thumb-2 load and store double description. But nothing yet creates them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74566
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 30 Jun 2009 22:49:27 +0000 (22:49 +0000)]
llvm-mc: Symbols in a relocatable expression of the (a - b + cst) form are
allowed to be undefined when the expression is seen, we cannot enforce the
same-section requirement until the entire assembly file has been seen.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74565
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 30 Jun 2009 22:38:32 +0000 (22:38 +0000)]
Add an "alignment" field to the MachineFunction object. It makes more sense to
have the alignment be calculated up front, and have the back-ends obey whatever
alignment is decided upon.
This allows for future work that would allow for precise no-op placement and the
like.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74564
91177308-0d34-0410-b5e6-
96231b3b80d8
David Goodwin [Tue, 30 Jun 2009 22:11:34 +0000 (22:11 +0000)]
Add thumb-2 store word, halfword, and byte.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74555
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Bolka [Tue, 30 Jun 2009 21:33:56 +0000 (21:33 +0000)]
Drop redundant print impl.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74553
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 30 Jun 2009 20:13:32 +0000 (20:13 +0000)]
Minor code cleanups.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74551
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 30 Jun 2009 20:10:56 +0000 (20:10 +0000)]
Reapply 74494, this time removing the conflicting definition of operator<<
in APIntTest.cpp.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74550
91177308-0d34-0410-b5e6-
96231b3b80d8
David Goodwin [Tue, 30 Jun 2009 19:50:22 +0000 (19:50 +0000)]
Improve Thumb-2 jump table support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74549
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Tue, 30 Jun 2009 19:24:59 +0000 (19:24 +0000)]
Add 256-bit memory operand support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74548
91177308-0d34-0410-b5e6-
96231b3b80d8
David Goodwin [Tue, 30 Jun 2009 18:04:13 +0000 (18:04 +0000)]
Add conditional and unconditional thumb-2 branch. Add thumb-2 jump table.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74543
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Tue, 30 Jun 2009 17:50:28 +0000 (17:50 +0000)]
Add wrappers for type construction to LLVMContext.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74542
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 30 Jun 2009 17:10:19 +0000 (17:10 +0000)]
add a FAQ.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74538
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Tue, 30 Jun 2009 17:06:46 +0000 (17:06 +0000)]
Fix up header comments to make Chris happy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74537
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Tue, 30 Jun 2009 16:40:03 +0000 (16:40 +0000)]
Fix PR4485.
Avoid unnecessary duplication of operand 0 of X86::FpSET_ST0_80. This duplication would
cause one register to remain on the stack at the function return.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74534
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 30 Jun 2009 16:26:57 +0000 (16:26 +0000)]
Revert my intentional breakage.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74531
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 30 Jun 2009 16:11:58 +0000 (16:11 +0000)]
Intentionally break a unittest to test my buildbot gtest command.
- Apologies in advance for the noise.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74530
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 30 Jun 2009 16:02:47 +0000 (16:02 +0000)]
Suppress may-be-used-uninitialized warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74529
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 30 Jun 2009 14:37:26 +0000 (14:37 +0000)]
Fix CMake build
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74527
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Tue, 30 Jun 2009 14:12:28 +0000 (14:12 +0000)]
Fixed assert that checks return value of TlsSetValue.
See http://msdn.microsoft.com/en-us/library/ms686818(VS.85).aspx
Patch by Olaf Krzikalla!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74526
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Tue, 30 Jun 2009 12:18:16 +0000 (12:18 +0000)]
Fix PR4484.
This was caused by me confounding FP0 and ST(0).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74523
91177308-0d34-0410-b5e6-
96231b3b80d8