oota-llvm.git
15 years agoAdded Thumb IT instruction.
Evan Cheng [Thu, 9 Jul 2009 23:43:36 +0000 (23:43 +0000)]
Added Thumb IT instruction.

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

15 years agoFix an apparent copy-and-paste problem in an error message.
Bob Wilson [Thu, 9 Jul 2009 23:42:59 +0000 (23:42 +0000)]
Fix an apparent copy-and-paste problem in an error message.

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

15 years agoAnother todo entry.
Evan Cheng [Thu, 9 Jul 2009 23:17:28 +0000 (23:17 +0000)]
Another todo entry.

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

15 years agoRevert the part of 75177 that split ConstantRange into two classes, and
Dan Gohman [Thu, 9 Jul 2009 23:16:10 +0000 (23:16 +0000)]
Revert the part of 75177 that split ConstantRange into two classes, and
merge the new functionality and unittests into ConstantRange. Thanks to
Nick Lewycky for pointing out that it isn't necessary to have two separate
classes here.

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

15 years agoInitial support for load / store multiple opt pass Thumb2 support (post-allocation...
Evan Cheng [Thu, 9 Jul 2009 23:11:34 +0000 (23:11 +0000)]
Initial support for load / store multiple opt pass Thumb2 support (post-allocation only). It's kind of there, but not quite. I'll return to this later.

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

15 years agoFix ldm / stm unified syntax; add t2LDM_RET.
Evan Cheng [Thu, 9 Jul 2009 22:58:39 +0000 (22:58 +0000)]
Fix ldm / stm unified syntax; add t2LDM_RET.

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

15 years agoLDM_RET should be marked mayLoad.
Evan Cheng [Thu, 9 Jul 2009 22:57:41 +0000 (22:57 +0000)]
LDM_RET should be marked mayLoad.

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

15 years agoIf -fomit-frame-pointer is used, we still need to record when the %esp register
Bill Wendling [Thu, 9 Jul 2009 22:30:02 +0000 (22:30 +0000)]
If -fomit-frame-pointer is used, we still need to record when the %esp register
is modified. Otherwise, the unwinder will get confused. The old code (before I
started my hacking) did this. It dropped on the floor, because I wasn't aware of
this requirement.

On the plus side, if we use "alloca" in a function, we create frame pointers
even with -fomit-frame-pointer is enabled!

This is a Good Thing(tm)!!!

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

15 years agoFix ldrd / strd address mode matching code. It allows for +/- 8 bit offset. Also...
Evan Cheng [Thu, 9 Jul 2009 22:21:59 +0000 (22:21 +0000)]
Fix ldrd / strd address mode matching code. It allows for +/- 8 bit offset. Also change the printer to make the scale 4 explicit.

Note, we are not yet generating these instructions.

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

15 years agoFix typo, trailing whitespace.
Andreas Bolka [Thu, 9 Jul 2009 22:14:25 +0000 (22:14 +0000)]
Fix typo, trailing whitespace.

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

15 years agoAdd a ConstantSignedRange class, which does for signed integers
Dan Gohman [Thu, 9 Jul 2009 22:07:27 +0000 (22:07 +0000)]
Add a ConstantSignedRange class, which does for signed integers
what ConstantRange does for unsigned integers. Factor out a
common base class for common functionality.

Add some new functions for performing arithmetic on constant
ranges. Some of these are currently just stubbed out with
conservative implementations.

Add unittests for ConstantRange and ConstantSignedRange.

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

15 years agoMake EXTRACT_VECTOR_ELT a bit more flexible in terms of the returned
Eli Friedman [Thu, 9 Jul 2009 22:01:03 +0000 (22:01 +0000)]
Make EXTRACT_VECTOR_ELT a bit more flexible in terms of the returned
value.  Adjust other code to deal with that correctly.  Make
DAGTypeLegalizer::PromoteIntRes_EXTRACT_VECTOR_ELT take advantage of
this new flexibility to simplify the code and make it deal with unusual
vectors (like <4 x i1>) correctly.  Fixes PR3037.

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

15 years agoAdd a Thumb readme entry.
Evan Cheng [Thu, 9 Jul 2009 20:50:52 +0000 (20:50 +0000)]
Add a Thumb readme entry.

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

15 years agoCorrect comment.
Evan Cheng [Thu, 9 Jul 2009 20:40:44 +0000 (20:40 +0000)]
Correct comment.

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

15 years agobug 4524: Add MSP430 to the cmake build.
Richard Pennington [Thu, 9 Jul 2009 20:27:09 +0000 (20:27 +0000)]
bug 4524: Add MSP430 to the cmake build.

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

15 years agoHandle 'A' modifier in inline asms.
Dale Johannesen [Thu, 9 Jul 2009 20:06:27 +0000 (20:06 +0000)]
Handle 'A' modifier in inline asms.
gcc.apple/asm-block-13.c
gcc.apple/asm-block-57.c

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

15 years agoRegenerate.
Mikhail Glushenkov [Thu, 9 Jul 2009 19:39:49 +0000 (19:39 +0000)]
Regenerate.

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

15 years agoDocumentation update.
Mikhail Glushenkov [Thu, 9 Jul 2009 19:39:16 +0000 (19:39 +0000)]
Documentation update.

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

15 years agoWe don't need to set SaveTemps here.
Mikhail Glushenkov [Thu, 9 Jul 2009 19:38:32 +0000 (19:38 +0000)]
We don't need to set SaveTemps here.

'--temp-dir' always overrides 'save-temps'.

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

15 years agoAdjust comment.
Mikhail Glushenkov [Thu, 9 Jul 2009 19:37:58 +0000 (19:37 +0000)]
Adjust comment.

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

15 years agoRemove some duplication.
Mikhail Glushenkov [Thu, 9 Jul 2009 19:37:17 +0000 (19:37 +0000)]
Remove some duplication.

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

15 years agoRename -t to --temp-dir.
Mikhail Glushenkov [Thu, 9 Jul 2009 19:36:08 +0000 (19:36 +0000)]
Rename -t to --temp-dir.

-t is already used by gcc in the meaning 'ld -t' (trace). The Base plugin may
 want to emulate this behaviour.

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

15 years agoAs Chris pointed out, we don't actually need to pass the context around here.
Owen Anderson [Thu, 9 Jul 2009 18:44:09 +0000 (18:44 +0000)]
As Chris pointed out, we don't actually need to pass the context around here.

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

15 years agoback out r75156 for now.
Chris Lattner [Thu, 9 Jul 2009 18:41:57 +0000 (18:41 +0000)]
back out r75156 for now.

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

15 years agoA little bit more LLVMContextification.
Owen Anderson [Thu, 9 Jul 2009 18:36:20 +0000 (18:36 +0000)]
A little bit more LLVMContextification.

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

15 years agoHandle Thumb-2 addressing modes during FP elimination.
David Goodwin [Thu, 9 Jul 2009 18:35:52 +0000 (18:35 +0000)]
Handle Thumb-2 addressing modes during FP elimination.

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

15 years agoImmutableSet/ImmutableMap: Allow caching of null digests by properly using a flag...
Ted Kremenek [Thu, 9 Jul 2009 18:34:41 +0000 (18:34 +0000)]
ImmutableSet/ImmutableMap: Allow caching of null digests by properly using a flag to record if the digest of an ImutAVLTree has been cached.

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

15 years agoAdd some classes to produce pretty-printed asm. We'll use these
David Greene [Thu, 9 Jul 2009 18:27:23 +0000 (18:27 +0000)]
Add some classes to produce pretty-printed asm.  We'll use these
shortly to provide nicely printed comments and other goodies in
asm files.

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

15 years agoBy default -t is always on for mcc16 and it uses ./tmp-objs as the temp directory.
Sanjiv Gupta [Thu, 9 Jul 2009 18:09:26 +0000 (18:09 +0000)]
By default -t is always on for mcc16 and it uses ./tmp-objs as the temp directory.

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

15 years agoFixed handling of -t. It gets the prirority for temp dir name.
Sanjiv Gupta [Thu, 9 Jul 2009 18:06:27 +0000 (18:06 +0000)]
Fixed handling of -t. It gets the prirority for temp dir name.

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

15 years agoThread LLVMContext through MVT and related parts of SDISel.
Owen Anderson [Thu, 9 Jul 2009 17:57:24 +0000 (17:57 +0000)]
Thread LLVMContext through MVT and related parts of SDISel.

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

15 years agoResolve undefined behaviour when ManagedStatic is instantiated with a fixed-length...
Alisdair Meredith [Thu, 9 Jul 2009 17:26:16 +0000 (17:26 +0000)]
Resolve undefined behaviour when ManagedStatic is instantiated with a fixed-length array type.

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

15 years agoadd llvm-mc support for parsing the .lcomm directive, patch by Kevin Enderby!
Chris Lattner [Thu, 9 Jul 2009 17:25:12 +0000 (17:25 +0000)]
add llvm-mc support for parsing the .lcomm directive, patch by Kevin Enderby!

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

15 years agoRegenerate for GraphViz tool discovery.
David Greene [Thu, 9 Jul 2009 17:16:26 +0000 (17:16 +0000)]
Regenerate for GraphViz tool discovery.

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

15 years agoAdd support for other GraphViz display tools. This can help
David Greene [Thu, 9 Jul 2009 17:06:18 +0000 (17:06 +0000)]
Add support for other GraphViz display tools.  This can help
with very large graphs, where dot isn't necessarily the
most visually pleasing way of looking at the graph.

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

15 years agoremove dead function.
Chris Lattner [Thu, 9 Jul 2009 16:57:49 +0000 (16:57 +0000)]
remove dead function.

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

15 years agoMisc encoding fixes; reported on llvmdev.
Eli Friedman [Thu, 9 Jul 2009 16:49:25 +0000 (16:49 +0000)]
Misc encoding fixes; reported on llvmdev.

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

15 years agoeraseFromDisk no longer throws.
Chris Lattner [Thu, 9 Jul 2009 16:17:28 +0000 (16:17 +0000)]
eraseFromDisk no longer throws.

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

15 years agoThere's no need to consider PHI nodes in the same block as the instruction
Nick Lewycky [Thu, 9 Jul 2009 15:59:27 +0000 (15:59 +0000)]
There's no need to consider PHI nodes in the same block as the instruction
we're inserting sigma/phi functions for. Patch by Andre Tavares.

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

15 years agoForgot a couple files when adding the -ssi-everything pass.
Nick Lewycky [Thu, 9 Jul 2009 15:33:55 +0000 (15:33 +0000)]
Forgot a couple files when adding the -ssi-everything pass.

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

15 years agoAdd some statistics to SSI so we can see what it's up to.
Nick Lewycky [Thu, 9 Jul 2009 15:33:14 +0000 (15:33 +0000)]
Add some statistics to SSI so we can see what it's up to.
Add an -ssi-everything pass which calls createSSI on everything in the function.

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

15 years ago* Install crosstool in /usr/local/crosstool
Misha Brukman [Thu, 9 Jul 2009 15:24:04 +0000 (15:24 +0000)]
* Install crosstool in /usr/local/crosstool
* Updated LLVM and LLVM-GCC to newer revisions
* Allow separate revisions per SVN module
* Allow user to override MAKE_OPTS
* Removed unused function verifyNotDir()

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

15 years agoMissing )
Bill Wendling [Thu, 9 Jul 2009 08:48:45 +0000 (08:48 +0000)]
Missing )

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

15 years agoAdd a -t="dir" option to the driver. This can be used to specify the directory to...
Sanjiv Gupta [Thu, 9 Jul 2009 08:23:38 +0000 (08:23 +0000)]
Add a -t="dir" option to the driver. This can be used to specify the directory to be used as TempDir if somebody doesn't want to use the standard /tmp.

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

15 years agoAdded few more options to individual tools.
Sanjiv Gupta [Thu, 9 Jul 2009 08:20:25 +0000 (08:20 +0000)]
Added few more options to individual tools.

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

15 years agoReturn dir separator as per platform.
Sanjiv Gupta [Thu, 9 Jul 2009 08:17:55 +0000 (08:17 +0000)]
Return dir separator as per platform.

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

15 years agosimplify this logic a bit more.
Chris Lattner [Thu, 9 Jul 2009 07:02:30 +0000 (07:02 +0000)]
simplify this logic a bit more.

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

15 years agomove reasoning about darwin $non_lazy_ptr stubs from asmprinter into
Chris Lattner [Thu, 9 Jul 2009 06:59:17 +0000 (06:59 +0000)]
move reasoning about darwin $non_lazy_ptr stubs from asmprinter into
isel.

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

15 years agoTargets sometimes assign fixed stack object to spill certain callee-saved
Evan Cheng [Thu, 9 Jul 2009 06:53:48 +0000 (06:53 +0000)]
Targets sometimes assign fixed stack object to spill certain callee-saved
registers based on dynamic conditions. For example, X86 EBP/RBP, when used as
frame register has to be spilled in the first fixed object. It should inform
PEI this so it doesn't get allocated another stack object. Also, it should not
be spilled as other callee-saved registers but rather its spilling and restoring
are being handled by emitPrologue and emitEpilogue. Avoid spilling it twice.

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

15 years agoReorg includes.
Evan Cheng [Thu, 9 Jul 2009 06:49:09 +0000 (06:49 +0000)]
Reorg includes.

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

15 years agoadd default ctor.
Chris Lattner [Thu, 9 Jul 2009 06:44:01 +0000 (06:44 +0000)]
add default ctor.

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

15 years agorearrange some code, no functionality change.
Chris Lattner [Thu, 9 Jul 2009 06:41:35 +0000 (06:41 +0000)]
rearrange some code, no functionality change.

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

15 years agomake direct calls set MO_PLT or MO_DARWIN_STUB as appropriate with fast isel.
Chris Lattner [Thu, 9 Jul 2009 06:34:26 +0000 (06:34 +0000)]
make direct calls set MO_PLT or MO_DARWIN_STUB as appropriate with fast isel.

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

15 years agoDon't create undefined symbols for aliases.
Nick Lewycky [Thu, 9 Jul 2009 06:03:04 +0000 (06:03 +0000)]
Don't create undefined symbols for aliases.

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

15 years agoreduce nesting by rearranging branches.
Chris Lattner [Thu, 9 Jul 2009 05:55:04 +0000 (05:55 +0000)]
reduce nesting by rearranging branches.

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

15 years agomake isel use MO_PIC_BASE_OFFSET when lowering globalvalues on darwin in pic
Chris Lattner [Thu, 9 Jul 2009 05:47:33 +0000 (05:47 +0000)]
make isel use MO_PIC_BASE_OFFSET when lowering globalvalues on darwin in pic
mode, instead of having asmprinter just "know" to print them.

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

15 years agovarious minor cleanups, no functionality change.
Chris Lattner [Thu, 9 Jul 2009 05:42:07 +0000 (05:42 +0000)]
various minor cleanups, no functionality change.

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

15 years agomake isel decide whether to emit $stub's on darwin instead of asmprinter.
Chris Lattner [Thu, 9 Jul 2009 05:27:35 +0000 (05:27 +0000)]
make isel decide whether to emit $stub's on darwin instead of asmprinter.

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

15 years agopc-relative references are *always* to functions, never to globals. ISel
Chris Lattner [Thu, 9 Jul 2009 05:19:23 +0000 (05:19 +0000)]
pc-relative references are *always* to functions, never to globals.  ISel
is incapable of lowering direct references to globals like this, zap the code.

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

15 years agomake cygwin use its own stubs set, instead of overloading a darwin one.
Chris Lattner [Thu, 9 Jul 2009 05:09:24 +0000 (05:09 +0000)]
make cygwin use its own stubs set, instead of overloading a darwin one.

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

15 years agoMake isel determine where to emit PLT-relative calls instead of having
Chris Lattner [Thu, 9 Jul 2009 05:02:21 +0000 (05:02 +0000)]
Make isel determine where to emit PLT-relative calls instead of having
asmprinter do it.

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

15 years agoadd missing predicate.
Chris Lattner [Thu, 9 Jul 2009 04:56:23 +0000 (04:56 +0000)]
add missing predicate.

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

15 years agoisPICStyleStub() is now never true in -static mode, so simplify code.
Chris Lattner [Thu, 9 Jul 2009 04:43:12 +0000 (04:43 +0000)]
isPICStyleStub() is now never true in -static mode, so simplify code.

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

15 years agosimplify some code based on the fact that picstyles != none are only valid
Chris Lattner [Thu, 9 Jul 2009 04:39:06 +0000 (04:39 +0000)]
simplify some code based on the fact that picstyles != none are only valid
in pic or dynamic-no-pic mode. Also, x86-64 never used picstylegot.

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

15 years agoall this logic always returns true because GOT mode is never active in x86-64 mode.
Chris Lattner [Thu, 9 Jul 2009 04:27:47 +0000 (04:27 +0000)]
all this logic always returns true because GOT mode is never active in x86-64 mode.
Simplify it away, someone should evaluate this.

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

15 years agoisPICStyleRIPRel() and friends are never true in -static mode.
Chris Lattner [Thu, 9 Jul 2009 04:24:46 +0000 (04:24 +0000)]
isPICStyleRIPRel() and friends are never true in -static mode.
Simplify code based on this.

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

15 years agoMove PR4517 to README.txt.
Nick Lewycky [Thu, 9 Jul 2009 04:03:30 +0000 (04:03 +0000)]
Move PR4517 to README.txt.

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

15 years agoImproved tracking of value number kills. VN kills are now represented
Lang Hames [Thu, 9 Jul 2009 03:57:02 +0000 (03:57 +0000)]
Improved tracking of value number kills. VN kills are now represented
as an (index,bool) pair. The bool flag records whether the kill is a
PHI kill or not. This code will be used to enable splitting of live
intervals containing PHI-kills.

A slight change to live interval weights introduced an extra spill
into lsr-code-insertion (outside the critical sections). The test
condition has been updated to reflect this.

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

15 years ago.o file writing shouldn't mess around with pic/relo models like the JIT does.
Chris Lattner [Thu, 9 Jul 2009 03:40:30 +0000 (03:40 +0000)]
.o file writing shouldn't mess around with pic/relo models like the JIT does.

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

15 years agomove a hack out of the asm-printer specific path to the main target selection path.
Chris Lattner [Thu, 9 Jul 2009 03:37:30 +0000 (03:37 +0000)]
move a hack out of the asm-printer specific path to the main target selection path.

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

15 years agomany more cleanups, for example if in the "none" pic-style,
Chris Lattner [Thu, 9 Jul 2009 03:32:31 +0000 (03:32 +0000)]
many more cleanups, for example if in the "none" pic-style,
make sure we're set to static codegen.  Simplify the decision
tree of target->picstyle/picmode settings.

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

15 years agoReduce indentation in GVRequiresExtraLoad. Return true for windows
Chris Lattner [Thu, 9 Jul 2009 03:27:27 +0000 (03:27 +0000)]
Reduce indentation in GVRequiresExtraLoad.  Return true for windows
with DLLImport symbols even when in -static mode.

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

15 years agoWhen in -static mode, force the PIC style to none. Doing this requires fixing
Chris Lattner [Thu, 9 Jul 2009 03:15:51 +0000 (03:15 +0000)]
When in -static mode, force the PIC style to none.  Doing this requires fixing
code which conflated RIPRel PIC with x86-64.  Fix these to just check for X86-64
directly.

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

15 years agomerge two identical functions and simplify things that are GOT specific
Chris Lattner [Thu, 9 Jul 2009 02:55:47 +0000 (02:55 +0000)]
merge two identical functions and simplify things that are GOT specific

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

15 years agohoist check for IsTailCall to callers. Eliminate redundant check for
Chris Lattner [Thu, 9 Jul 2009 02:46:53 +0000 (02:46 +0000)]
hoist check for IsTailCall to callers.  Eliminate redundant check for
x86-64: GOT-style PIC is never used on x86-64.

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

15 years agochange a few methods to be static functions.
Chris Lattner [Thu, 9 Jul 2009 02:44:11 +0000 (02:44 +0000)]
change a few methods to be static functions.

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

15 years agoone more added assert.
Chris Lattner [Thu, 9 Jul 2009 02:43:55 +0000 (02:43 +0000)]
one more added assert.

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

15 years agoremove eh, convert to FileCheck style
Chris Lattner [Thu, 9 Jul 2009 01:07:22 +0000 (01:07 +0000)]
remove eh, convert to FileCheck style

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

15 years agomove handling of dllimport linkage in isel, not in asmprinter.
Chris Lattner [Thu, 9 Jul 2009 00:58:53 +0000 (00:58 +0000)]
move handling of dllimport linkage in isel, not in asmprinter.

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

15 years agowe have no tests for dllimport/export. Add one.
Chris Lattner [Thu, 9 Jul 2009 00:53:44 +0000 (00:53 +0000)]
we have no tests for dllimport/export.  Add one.

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

15 years agoWork around an ICE in gcc-4.2.4.
Jeffrey Yasskin [Thu, 9 Jul 2009 00:52:44 +0000 (00:52 +0000)]
Work around an ICE in gcc-4.2.4.

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

15 years agoone more assertion!
Chris Lattner [Thu, 9 Jul 2009 00:49:29 +0000 (00:49 +0000)]
one more assertion!

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

15 years agoadd some more assertions. Remove code to handle dllimport on darwin.
Chris Lattner [Thu, 9 Jul 2009 00:47:59 +0000 (00:47 +0000)]
add some more assertions.  Remove code to handle dllimport on darwin.

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

15 years agoMake SelectionDAG::getVectorShuffle work properly for VECTOR_SHUFFLE
Dan Gohman [Thu, 9 Jul 2009 00:46:33 +0000 (00:46 +0000)]
Make SelectionDAG::getVectorShuffle work properly for VECTOR_SHUFFLE
nodes with operand types that differ from the result type. (This
doesn't normally happen right now, because
SelectionDAGLowering::visitShuffleVector normalizes vector shuffles.)

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

15 years agoremove "asmcall", using print_pcrel_imm instead of printOperand.
Chris Lattner [Thu, 9 Jul 2009 00:39:19 +0000 (00:39 +0000)]
remove "asmcall", using print_pcrel_imm instead of printOperand.

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

15 years agosimplify some logic
Chris Lattner [Thu, 9 Jul 2009 00:32:12 +0000 (00:32 +0000)]
simplify some logic

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

15 years ago* add some assertions for sanity checking.
Chris Lattner [Thu, 9 Jul 2009 00:27:29 +0000 (00:27 +0000)]
* add some assertions for sanity checking.
* remove some old code that was needed when we'd put ESP in the scale instead of
  the base of some instructions.
* Fix a bug with the P modifier in inline asm that caused us to drop it.

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

15 years agostop on the first file mismatch.
Chris Lattner [Thu, 9 Jul 2009 00:19:21 +0000 (00:19 +0000)]
stop on the first file mismatch.

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

15 years agoadd a test for dale's recent change.
Chris Lattner [Thu, 9 Jul 2009 00:00:16 +0000 (00:00 +0000)]
add a test for dale's recent change.

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

15 years agoMake SmallPtrSet iterators real iterators
Douglas Gregor [Wed, 8 Jul 2009 23:53:54 +0000 (23:53 +0000)]
Make SmallPtrSet iterators real iterators

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

15 years agoLLVMContext-ification.
Owen Anderson [Wed, 8 Jul 2009 23:50:31 +0000 (23:50 +0000)]
LLVMContext-ification.

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

15 years agoswitch test to FileCheck-style and test the P and non-P cases.
Chris Lattner [Wed, 8 Jul 2009 23:44:06 +0000 (23:44 +0000)]
switch test to FileCheck-style and test the P and non-P cases.

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

15 years agorename a test to make it a feature test.
Chris Lattner [Wed, 8 Jul 2009 23:40:57 +0000 (23:40 +0000)]
rename a test to make it a feature test.

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

15 years agoUse common code for both ARM and Thumb-2 instruction and register info.
David Goodwin [Wed, 8 Jul 2009 23:10:31 +0000 (23:10 +0000)]
Use common code for both ARM and Thumb-2 instruction and register info.

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

15 years ago* manually concatenate two string literals
Chris Lattner [Wed, 8 Jul 2009 23:09:14 +0000 (23:09 +0000)]
* manually concatenate two string literals
* remove some dead code: darwin doesn't support dllimport linkage.

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

15 years ago- Add some NEON ld / st instruction static encoding.
Evan Cheng [Wed, 8 Jul 2009 22:51:32 +0000 (22:51 +0000)]
- Add some NEON ld / st instruction static encoding.
- Make bits 25-27 for ldrh, etc. explicitly zero. Previously only the JIT uses the encoding information and it's assuming anything not specified to be zero. Making them explicit so the disassembler is happy.
Patch by Sean Callanan.

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

15 years agoFix thinko.
Devang Patel [Wed, 8 Jul 2009 22:25:56 +0000 (22:25 +0000)]
Fix thinko.

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

15 years agoFix the AssertingVH unittests.
Jeffrey Yasskin [Wed, 8 Jul 2009 22:09:00 +0000 (22:09 +0000)]
Fix the AssertingVH unittests.

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

15 years agoAdd an option to allocate JITed global data separately from code. By
Jeffrey Yasskin [Wed, 8 Jul 2009 21:59:57 +0000 (21:59 +0000)]
Add an option to allocate JITed global data separately from code.  By
default, this option is not enabled to support clients who rely on
this behavior.

Fixes http://llvm.org/PR4483

A patch to allocate additional memory for globals after we run out is
forthcoming.

Patch by Reid Kleckner!

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

15 years agoReformat.
David Greene [Wed, 8 Jul 2009 21:57:46 +0000 (21:57 +0000)]
Reformat.

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