OSDN Git Service
Evan Cheng [Fri, 10 Jul 2009 19:26:57 +0000 (19:26 +0000)]
CMOVxx doesn't swap operands which it's commuted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75266
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Jul 2009 19:15:51 +0000 (19:15 +0000)]
Remove TargetInstrInfo::CommuteChangesDestination and added findCommutedOpIndices which returns the operand indices which are swapped (when applicable). This allows for some code clean up and future enhancements.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75264
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjiv Gupta [Fri, 10 Jul 2009 19:04:05 +0000 (19:04 +0000)]
Link std.lib (.bc code) with llvm-ld.
Link devices.lib (processor specific variables) with mplink.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75263
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Fri, 10 Jul 2009 18:58:29 +0000 (18:58 +0000)]
Fix unit tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75262
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 18:34:47 +0000 (18:34 +0000)]
convert test to use FileCheck, which is much more precise and faster than
the previous RUN lines. Hopefully this will be an inspiration for future
tests :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75261
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 18:28:19 +0000 (18:28 +0000)]
add missing *, patch by Peter O'Gorman!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75259
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Fri, 10 Jul 2009 18:10:10 +0000 (18:10 +0000)]
Push LLVMContext through the TypeBuilder API. There are no users for this in-tree, so I can't really test it.
If you're using this, and it's broken, please send patches.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75257
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Fri, 10 Jul 2009 17:55:38 +0000 (17:55 +0000)]
Eliminate an unnecessary include.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75256
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Fri, 10 Jul 2009 17:35:01 +0000 (17:35 +0000)]
Push LLVMContext through the PatternMatch API.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75255
91177308-0d34-0410-b5e6-
96231b3b80d8
David Goodwin [Fri, 10 Jul 2009 17:03:29 +0000 (17:03 +0000)]
Predicate VFP instructions on HasVFP2 instead of IsARM. This allows VFP instructions with thumb-2.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75254
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 10 Jul 2009 16:42:52 +0000 (16:42 +0000)]
Generalize ScalarEvolution's cast-folding code to support more kinds
of loops. Add several new functions to for working with ScalarEvolution's
add-hoc value-range analysis functionality.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75252
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Fri, 10 Jul 2009 16:42:19 +0000 (16:42 +0000)]
Update for GlobalVariables ctor change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75251
91177308-0d34-0410-b5e6-
96231b3b80d8
David Goodwin [Fri, 10 Jul 2009 15:33:46 +0000 (15:33 +0000)]
t2LDM_RET does not fall-through.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75250
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Fri, 10 Jul 2009 08:31:50 +0000 (08:31 +0000)]
Add Thumb2ITBlockPass.cpp to CMakeLists.txt, fixing
the cmake build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75246
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 07:50:52 +0000 (07:50 +0000)]
make this more like printOperand. Perhaps some merging will happen
tomorrow.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75245
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 07:48:51 +0000 (07:48 +0000)]
simplify fast isel by using ClassifyGlobalReference. This
elimiantes the last use of GVRequiresExtraLoad, so delete it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75244
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 07:38:24 +0000 (07:38 +0000)]
eliminate GVRequiresRegister, replacing it with predicates we
need for other purposes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75243
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 07:34:39 +0000 (07:34 +0000)]
change a bunch of logic in LowerGlobalAddress to leverage the work
done in ClassifyGlobalReference instead of reconstructing the info
awkwardly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75240
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 07:33:30 +0000 (07:33 +0000)]
add a predicate to determine if a global var reference requires a
PIC-base to be added in.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75238
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 07:20:05 +0000 (07:20 +0000)]
move some classification logic around. Now GVRequiresExtraLoad
is just a trivial wrapper around "ClassifyGlobalReference", which
stole a ton of logic from LowerGlobalAddress.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75237
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 06:29:59 +0000 (06:29 +0000)]
change isGlobalStubReference to take target flags instead of a MachineOperand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75236
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 06:07:08 +0000 (06:07 +0000)]
convert some late code (called by regalloc and code emission)
to use isGlobalStubReference instead of GVRequiresExtraLoad
(which should really be part of isel).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75234
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 06:06:17 +0000 (06:06 +0000)]
add a new predicate method that says whether a GlobalValue
MachineOperand is a reference to a stub, not a reference to the
global variable itself. Look no context needed!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75233
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 05:52:02 +0000 (05:52 +0000)]
GVRequiresExtraLoad is now never used for calls, simplify it based on this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75232
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 05:48:03 +0000 (05:48 +0000)]
actually, just eliminate PCRelGVRequiresExtraLoad. It makes the code
more complex and slow than just directly testing what we care about.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75231
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 05:45:15 +0000 (05:45 +0000)]
There is only one case where GVRequiresExtraLoad returns true for calls:
split its handling out to PCRelGVRequiresExtraLoad, and simplify code
based on this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75230
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 05:37:11 +0000 (05:37 +0000)]
the "isDirectCall" operand of GVRequiresRegister is always false, eliminate it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75229
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 05:33:42 +0000 (05:33 +0000)]
split call handling out of X86SelectAddress into X86SelectCallAddress
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75228
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Jul 2009 05:27:43 +0000 (05:27 +0000)]
convert a helper method to be a static function instead of a
template. Also convert it to take a MachineOperand instead of a GV*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75227
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Jul 2009 05:20:19 +0000 (05:20 +0000)]
80 col violation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75226
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Jul 2009 02:10:17 +0000 (02:10 +0000)]
More info about Thumb1 predication support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75220
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Jul 2009 02:09:04 +0000 (02:09 +0000)]
We don't need separate thumb1 instructions tADDSi3 etc. for addc and subc. The "normal" version always modify condition register CPSR so we should just use def : pat to match to the same instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75219
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Jul 2009 01:54:42 +0000 (01:54 +0000)]
Add a thumb2 pass to insert IT blocks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75218
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Jul 2009 01:38:27 +0000 (01:38 +0000)]
Move isPredicated from .cpp to .h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75217
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Fri, 10 Jul 2009 00:49:53 +0000 (00:49 +0000)]
Finish pushing LLVMContext through the IRBuilder/ConstantFolder interface.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75213
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Jul 2009 00:45:16 +0000 (00:45 +0000)]
80 col violation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75212
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Fri, 10 Jul 2009 00:34:39 +0000 (00:34 +0000)]
Fix #include specification.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75208
91177308-0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 10 Jul 2009 00:33:43 +0000 (00:33 +0000)]
ImmutableMap/ImmutableSet: Allow caching of ImutAVLTree digests while the tree
is still mutable. My experiments show this reduces the amount of times we
compute a full tree digest by over 50% on very small cases, and potentially much
larger on others.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75207
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 10 Jul 2009 00:23:48 +0000 (00:23 +0000)]
Remove a bogus assertion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75206
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Fri, 10 Jul 2009 00:14:05 +0000 (00:14 +0000)]
Replace TM.getRegisterInfo() calls by TRI instance variable.
Use getAsmName() method instead of accessing AsmName field directly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75205
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Thu, 9 Jul 2009 23:56:35 +0000 (23:56 +0000)]
Redesign this to avoid standard stream classes. This stream class
provides pretty -printing of comments and other such things in asm
files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75202
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 9 Jul 2009 23:54:51 +0000 (23:54 +0000)]
Handle 'a' modifier on inline assembly operands.
This is part of the fix for pr4521.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75201
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 9 Jul 2009 23:48:35 +0000 (23:48 +0000)]
This started as a small change, I swear. Unfortunately, lots of things call the [I|F]CmpInst constructors. Who knew!?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75200
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Thu, 9 Jul 2009 23:43:41 +0000 (23:43 +0000)]
Add some hooks that a redesigned AsmStream needs to do its job. These
allow derived classes to examine the stream buffer before it's flushed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75199
91177308-0d34-0410-b5e6-
96231b3b80d8
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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