oota-llvm.git
15 years agoThread LLVMContext through the constant folding APIs, which touches a lot of files.
Owen Anderson [Mon, 6 Jul 2009 18:42:36 +0000 (18:42 +0000)]
Thread LLVMContext through the constant folding APIs, which touches a lot of files.

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

15 years ago* Allow skipping parts of the installation to be able to do it in parts if one
Misha Brukman [Mon, 6 Jul 2009 18:29:03 +0000 (18:29 +0000)]
* Allow skipping parts of the installation to be able to do it in parts if one
  phase fails and the user wants to reinstall one of the components.
* Fixed LLVM-GCC configuration flags: s/--with-gnu-{as,ld}/--with-{as,ld}/
  The former is a boolean flag, the latter is a flag that takes a path.
* Added a new flag CROSS_MARCH, defaults to armv6.

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

15 years agopic16 doesn't have a Data64bitsDirective. Set it NULL explicitly to tell the generic...
Sanjiv Gupta [Mon, 6 Jul 2009 18:09:11 +0000 (18:09 +0000)]
pic16 doesn't have a Data64bitsDirective. Set it NULL explicitly to tell the generic code to not pick the default.

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

15 years agopic16 isn't ready to handle llvm.metadata yet.
Sanjiv Gupta [Mon, 6 Jul 2009 18:07:06 +0000 (18:07 +0000)]
pic16 isn't ready to handle llvm.metadata yet.

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

15 years agoAdd two new accessors to the C bindings, patch by Wladimir van der Laan!
Chris Lattner [Mon, 6 Jul 2009 17:29:59 +0000 (17:29 +0000)]
Add two new accessors to the C bindings, patch by Wladimir van der Laan!

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

15 years agoimprove portability to windows, patch by Xerces Ranby!
Chris Lattner [Mon, 6 Jul 2009 17:24:48 +0000 (17:24 +0000)]
improve portability to windows, patch by Xerces Ranby!

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

15 years agoOops, I #included errno.h from inside the llvm::sys namespace.
Jeffrey Yasskin [Mon, 6 Jul 2009 16:50:27 +0000 (16:50 +0000)]
Oops, I #included errno.h from inside the llvm::sys namespace.

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

15 years agoMark this test as Darwin only. Patch by Bill Wendling.
Stuart Hastings [Mon, 6 Jul 2009 15:36:23 +0000 (15:36 +0000)]
Mark this test as Darwin only.  Patch by Bill Wendling.

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

15 years agoFix the cmake build - patch by Xerxes Rånby.
Duncan Sands [Mon, 6 Jul 2009 14:28:32 +0000 (14:28 +0000)]
Fix the cmake build - patch by Xerxes Rånby.

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

15 years agoReverting back the changes checked-in accidently.
Sanjiv Gupta [Mon, 6 Jul 2009 10:34:10 +0000 (10:34 +0000)]
Reverting back the changes checked-in accidently.

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

15 years agoImplement _CONFIG macro to allow users to se to configuration settings on the part.
Sanjiv Gupta [Mon, 6 Jul 2009 10:18:37 +0000 (10:18 +0000)]
Implement _CONFIG macro to allow users to se to configuration settings on the part.
Implement _section macro to allow users to place objects in specific sections.
Implement _address macro to allow users to place objects at a particular address.
Placing objects at a memory address:
crate a unique section name from varname, address, object type and put that section at specified address. Mark this section a full (size = banksize) so that other objects do not compete for it while placing objects to sections in AsmPrinter.

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

15 years agoChanged ELFCodeEmitter to inherit from ObjectCodeEmitter
Bruno Cardoso Lopes [Mon, 6 Jul 2009 09:26:48 +0000 (09:26 +0000)]
Changed ELFCodeEmitter to inherit from ObjectCodeEmitter

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

15 years agoCorrected the names description. Change in a comment. No functionality change.
Sanjiv Gupta [Mon, 6 Jul 2009 08:22:15 +0000 (08:22 +0000)]
Corrected the names description. Change in a comment. No functionality change.

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

15 years agoCleanup MachO writer and code emitter. Fix 80 cols problems, remove extra spaces...
Bruno Cardoso Lopes [Mon, 6 Jul 2009 06:40:51 +0000 (06:40 +0000)]
Cleanup MachO writer and code emitter. Fix 80 cols problems, remove extra spaces, shrink down includes and move some methods out-of-line

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

15 years agoJust forgot to include the two new files
Bruno Cardoso Lopes [Mon, 6 Jul 2009 05:16:40 +0000 (05:16 +0000)]
Just forgot to include the two new files

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

15 years agoAdd the Object Code Emitter class. Original patch by Aaron Gray, I did some
Bruno Cardoso Lopes [Mon, 6 Jul 2009 05:09:34 +0000 (05:09 +0000)]
Add the Object Code Emitter class. Original patch by Aaron Gray, I did some
cleanup, removed some #includes and moved Object Code Emitter out-of-line.

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

15 years agoMore LLVMContext-ification.
Owen Anderson [Mon, 6 Jul 2009 01:34:54 +0000 (01:34 +0000)]
More LLVMContext-ification.

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

15 years agoCMake: Fixes previous change: CMAKE_BUILD_TYPE is unknown when
Oscar Fuentes [Sun, 5 Jul 2009 23:58:20 +0000 (23:58 +0000)]
CMake: Fixes previous change: CMAKE_BUILD_TYPE is unknown when
generating project files for MSVC.

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

15 years agoMore LLVMContext-ification.
Owen Anderson [Sun, 5 Jul 2009 22:41:43 +0000 (22:41 +0000)]
More LLVMContext-ification.

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

15 years agoThere are five floating point types.
Nick Lewycky [Sun, 5 Jul 2009 22:35:49 +0000 (22:35 +0000)]
There are five floating point types.

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

15 years agoThere are *four* lights!
Nick Lewycky [Sun, 5 Jul 2009 22:23:28 +0000 (22:23 +0000)]
There are *four* lights!

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

15 years agoCMake: Avoids defining _DEBUG on MSVC Release builds. Fixes PR 4379.
Oscar Fuentes [Sun, 5 Jul 2009 18:43:52 +0000 (18:43 +0000)]
CMake: Avoids defining _DEBUG on MSVC Release builds. Fixes PR 4379.

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

15 years agoClarify that later compiler versions are known to
Duncan Sands [Sun, 5 Jul 2009 12:01:44 +0000 (12:01 +0000)]
Clarify that later compiler versions are known to
fail to build the Ada front-end.

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

15 years agoWhen comparing constants, consider a less wide constant to be "less complex"
Nick Lewycky [Sat, 4 Jul 2009 17:24:52 +0000 (17:24 +0000)]
When comparing constants, consider a less wide constant to be "less complex"
than a wider one, before trying to compare their contents which will crash
if their sizes are different.

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

15 years agoHave cmake define HAVE_STRERROR and friends to 1 when they're defined at all.
Jeffrey Yasskin [Sat, 4 Jul 2009 16:37:12 +0000 (16:37 +0000)]
Have cmake define HAVE_STRERROR and friends to 1 when they're defined at all.

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

15 years agoMake -save-temps=obj play better with -o.
Mikhail Glushenkov [Sat, 4 Jul 2009 14:23:32 +0000 (14:23 +0000)]
Make -save-temps=obj play better with -o.

Use only the *dirname* of the pathname given to -o, so that -o can still be used
to name the output executable. This is more like what GCC 4.5 does.

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

15 years agoRegenerate.
Mikhail Glushenkov [Sat, 4 Jul 2009 14:23:08 +0000 (14:23 +0000)]
Regenerate.

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

15 years agoLLVMC can be now compiled w/o dynamic plugin support.
Mikhail Glushenkov [Sat, 4 Jul 2009 03:55:25 +0000 (03:55 +0000)]
LLVMC can be now compiled w/o dynamic plugin support.

Controlled via the --enable-llvmc-dynamic-plugins option.

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

15 years agoLLVMC doesn't need ENABLE_PIC to build now.
Mikhail Glushenkov [Sat, 4 Jul 2009 03:54:54 +0000 (03:54 +0000)]
LLVMC doesn't need ENABLE_PIC to build now.

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

15 years agoFix build.
Mike Stump [Fri, 3 Jul 2009 22:11:58 +0000 (22:11 +0000)]
Fix build.

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

15 years agoEven more passes being LLVMContext'd.
Owen Anderson [Fri, 3 Jul 2009 19:42:02 +0000 (19:42 +0000)]
Even more passes being LLVMContext'd.

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

15 years agoAdd Static Single Information construction pass written by André Tavares!
Nick Lewycky [Fri, 3 Jul 2009 19:28:36 +0000 (19:28 +0000)]
Add Static Single Information construction pass written by André Tavares!
Use it by requiring it through the pass manager, then calling its createSSI
method on the variables that you want in SSI form.

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

15 years agoSilence a warning when assertions are turned off.
Duncan Sands [Fri, 3 Jul 2009 16:11:59 +0000 (16:11 +0000)]
Silence a warning when assertions are turned off.

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

15 years agoSilence a warning when assertions are turned off.
Duncan Sands [Fri, 3 Jul 2009 16:11:34 +0000 (16:11 +0000)]
Silence a warning when assertions are turned off.

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

15 years agoSilence warning when building without assertions.
Duncan Sands [Fri, 3 Jul 2009 16:06:07 +0000 (16:06 +0000)]
Silence warning when building without assertions.

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

15 years agoSilence warnings when assertions are turned off.
Duncan Sands [Fri, 3 Jul 2009 16:03:33 +0000 (16:03 +0000)]
Silence warnings when assertions are turned off.

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

15 years agoIn this unreachable code, return an initialized value.
Duncan Sands [Fri, 3 Jul 2009 16:00:23 +0000 (16:00 +0000)]
In this unreachable code, return an initialized value.
This stops gcc warning about possible uses of an uninitialized
value when compiling with assertions turned off.

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

15 years agoAdd newline at end of file.
Duncan Sands [Fri, 3 Jul 2009 15:38:01 +0000 (15:38 +0000)]
Add newline at end of file.

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

15 years agoAdd newline at end of file.
Duncan Sands [Fri, 3 Jul 2009 15:30:58 +0000 (15:30 +0000)]
Add newline at end of file.

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

15 years agoFix typo: intepreter->interpreter.
Torok Edwin [Fri, 3 Jul 2009 12:11:32 +0000 (12:11 +0000)]
Fix typo: intepreter->interpreter.

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

15 years agoFix the build: provide uint8_t.
Duncan Sands [Fri, 3 Jul 2009 08:12:51 +0000 (08:12 +0000)]
Fix the build: provide uint8_t.

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

15 years agoFor extended loads of type i1 to i8, we will need to at least one byte from memory.
Sanjiv Gupta [Fri, 3 Jul 2009 07:58:59 +0000 (07:58 +0000)]
For extended loads of type i1 to i8, we will need to at least one byte from memory.
The change in the .td file is to mark the side effects of mov insn.

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

15 years agoVarious small changes related to the Condition Register on PowerPC.
Tilmann Scheller [Fri, 3 Jul 2009 06:47:55 +0000 (06:47 +0000)]
Various small changes related to the Condition Register on PowerPC.

Don't spill to the CR save area when using the SVR4 ABI for now.
Don't rely on constants assigned for registers to be in order (they aren't assigned in order).
Make sure CR bits are mapped to the corresponding CR field.

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

15 years agoRefactor ABI code in the PowerPC backend.
Tilmann Scheller [Fri, 3 Jul 2009 06:47:08 +0000 (06:47 +0000)]
Refactor ABI code in the PowerPC backend.

Make CalculateParameterAndLinkageAreaSize() Darwin-specific.
Remove SVR4 specific code from LowerCALL_Darwin() and LowerFORMAL_ARGUMENTS_Darwin().
Rename MachoABI to DarwinABI for consistency.
Rename ELF ABI to SVR4 ABI for consistency.
Factor out common call return lowering between the Darwin and SVR4 ABI.
Factor out common call lowering between the Darwin and SVR4 ABI.

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

15 years agoImplement the SVR4 ABI for PowerPC.
Tilmann Scheller [Fri, 3 Jul 2009 06:45:56 +0000 (06:45 +0000)]
Implement the SVR4 ABI for PowerPC.

Implement LowerFORMAL_ARGUMENTS_SVR4().
Implement LowerCALL_SVR4().
Add support for split arguments.
Implement by value parameter passing for aggregates.
Add support for variable argument lists.
Create the spill area for argument registers of variable argument functions no longer at a fixed offset.
Make sure callee saved registers are spilled to the correct stack offsets.
Change allocation order of non-volatile floating-point registers.
Add VRSAVE to the list of callee-saved registers, add CallConvLowering for vararg calls.
Add support for variable argument calls with Vector arguments.
Add support for VR and VRSAVE save area, improve allocation order for non-volatile vector registers.
Stop creating illegal i8 values in LowerVASTART().
Add memory access width hints.
Make sure to reserve space on the stack for the frame pointer.
When using the SVR4 ABI, reserve r13 for the Small Data Area pointer.
Assure that the frame pointer is spilled to the correct location on the stack.
Some FP registers were not marked as volatile.
Make sure the i64 words from a long double are passed either both in registers or both on the stack.
Only put integer arguments in registers which are not marked with the inreg flag.

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

15 years agoAdd NumFixedArgs attribute to CallSDNode which indicates the number of fixed argument...
Tilmann Scheller [Fri, 3 Jul 2009 06:44:53 +0000 (06:44 +0000)]
Add NumFixedArgs attribute to CallSDNode which indicates the number of fixed arguments in a vararg call.

With the SVR4 ABI on PowerPC, vector arguments for vararg calls are passed differently depending on whether they are a fixed or a variable argument. Variable vector arguments always go into memory, fixed vector arguments are put
into vector registers. If there are no free vector registers available, fixed vector arguments are put on the stack.

The NumFixedArgs attribute allows to decide for an argument in a vararg call whether it belongs to the fixed or variable portion of the parameter list.

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

15 years agoSmall cleanups in the PowerPC backend.
Tilmann Scheller [Fri, 3 Jul 2009 06:43:35 +0000 (06:43 +0000)]
Small cleanups in the PowerPC backend.

Small refactoring in LowerFORMAL_ARGUMENTS().
Correct minor formatting issues.
Remove size argument of CreateCopyOfByValArgument().
Remove dead argument from CalculateStackSlotSize().
Remove unused variable ReturnAddrIndex from various targets.

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

15 years agoFactor some code out and support for Jump Table relocations
Bruno Cardoso Lopes [Fri, 3 Jul 2009 04:36:26 +0000 (04:36 +0000)]
Factor some code out and support for Jump Table relocations

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

15 years agoAdd --enable-llvmc-dynamic configure option.
Mikhail Glushenkov [Fri, 3 Jul 2009 03:52:47 +0000 (03:52 +0000)]
Add --enable-llvmc-dynamic configure option.

Controls whether libCompilerDriver should be loaded dynamically. By default this
is needed only on Win32, to make dynamic plugins work.

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

15 years agoTrailing whitespace.
Mikhail Glushenkov [Fri, 3 Jul 2009 03:52:07 +0000 (03:52 +0000)]
Trailing whitespace.

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

15 years agoAdd thumb2 sign / zero extend with rotate instructions.
Evan Cheng [Fri, 3 Jul 2009 01:43:10 +0000 (01:43 +0000)]
Add thumb2 sign / zero extend with rotate instructions.

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

15 years agoMinor improvement to the LDA debug output.
Andreas Bolka [Fri, 3 Jul 2009 01:42:52 +0000 (01:42 +0000)]
Minor improvement to the LDA debug output.

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

15 years agoSecond batch of passes using LLVMContext.
Owen Anderson [Fri, 3 Jul 2009 00:54:20 +0000 (00:54 +0000)]
Second batch of passes using LLVMContext.

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

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