Chris Lattner [Sat, 10 Oct 2009 23:50:30 +0000 (23:50 +0000)]
switch GVN to use SSAUpdater. Besides removing a lot of complexity
from GVN, this also speeds it up, inserts fewer PHI nodes (see the
testcase) and allows it to remove more loads (due to fewer PHI nodes
standing in the way).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83746
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 23:41:48 +0000 (23:41 +0000)]
add a simple helper method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83745
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 23:15:24 +0000 (23:15 +0000)]
add ability for clients of SSAUpdater to find out about the
PHI nodes inserted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83744
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 23:05:42 +0000 (23:05 +0000)]
clarify
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83743
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 23:04:12 +0000 (23:04 +0000)]
remove dead code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83742
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 23:00:11 +0000 (23:00 +0000)]
add the ability to get a rewritten value from the middle of a block,
not just at the end. Add a big comment explaining when this could
be useful (which never happens for jump threading).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83741
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 22:41:58 +0000 (22:41 +0000)]
rename GetValueInBlock -> GetValueAtEndOfBlock to better reflect
what it does.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83740
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sat, 10 Oct 2009 22:17:47 +0000 (22:17 +0000)]
It seems that OR operation does not affect status reg at all.
Remove impdef of SRW. This fixes PR4779
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83739
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 22:15:25 +0000 (22:15 +0000)]
fix broken link
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83738
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 22:13:38 +0000 (22:13 +0000)]
final changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83737
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 22:02:58 +0000 (22:02 +0000)]
down to 'major changes'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83736
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 21:40:13 +0000 (21:40 +0000)]
more updates
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83735
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 21:37:16 +0000 (21:37 +0000)]
add a link to the GSG for info on how to check out svn trunk
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83734
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 21:30:55 +0000 (21:30 +0000)]
x86 uses 5 operands for most memory refs now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83733
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Sat, 10 Oct 2009 20:06:04 +0000 (20:06 +0000)]
More spelling and grammar tweaks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83728
91177308-0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Sat, 10 Oct 2009 19:45:13 +0000 (19:45 +0000)]
More spelling fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83724
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Sat, 10 Oct 2009 19:30:16 +0000 (19:30 +0000)]
Spelling fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83722
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 19:26:21 +0000 (19:26 +0000)]
more tweaks
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83721
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Sat, 10 Oct 2009 19:16:25 +0000 (19:16 +0000)]
Remove an inappropriate line in the description of the
clang static analyser. Decrease duplication in the text.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83720
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 19:00:55 +0000 (19:00 +0000)]
continue decoding chris scribble.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83719
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 18:40:48 +0000 (18:40 +0000)]
remove some dead passes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83717
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 18:33:13 +0000 (18:33 +0000)]
checkpoint.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83716
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 18:26:06 +0000 (18:26 +0000)]
fix broken anchors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83715
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 09:09:20 +0000 (09:09 +0000)]
use a typedef instead of spelling out an insane type. Yay for auto someday.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83707
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 09:05:58 +0000 (09:05 +0000)]
Change jump threading to use the new SSAUpdater class instead of
DemoteRegToStack. This makes it more efficient (because it isn't
creating a ton of load/stores that are eventually removed by a later
mem2reg), and more slightly more effective (because those load/stores
don't get in the way of threading).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83706
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 09:04:27 +0000 (09:04 +0000)]
Implement an efficient and fully general SSA update mechanism that
works on unstructured CFGs. This implements PR217, our oldest open PR.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83705
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 08:27:29 +0000 (08:27 +0000)]
add some WeakVH::operator='s. Without these, assigning
a Value* to a WeakVH was constructing a temporary WeakVH
(due to the implicit assignment operator). This avoids
that cost.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83704
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 08:01:27 +0000 (08:01 +0000)]
change some static_cast into cast, pointed out by Gabor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83703
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 07:42:42 +0000 (07:42 +0000)]
add a version of PHINode::getIncomingBlock that takes a raw
Use, to complement the version that takes a use_iterator.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83702
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 10 Oct 2009 06:22:45 +0000 (06:22 +0000)]
random tidying
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83701
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Sat, 10 Oct 2009 01:32:21 +0000 (01:32 +0000)]
Create a new InstrEmitter class for translating SelectionDAG nodes
into MachineInstrs. This is mostly just moving the code from
ScheduleDAGSDNodesEmit.cpp into a new class. This decouples MachineInstr
emitting from scheduling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83699
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Sat, 10 Oct 2009 01:29:16 +0000 (01:29 +0000)]
Make getMachineNode return a MachineSDNode* instead of a generic SDNode*
since it won't do any folding. This will help avoid some inconvenient
casting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83698
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Sat, 10 Oct 2009 00:36:09 +0000 (00:36 +0000)]
Remove a no-longer-necessary #include.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83697
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Sat, 10 Oct 2009 00:34:18 +0000 (00:34 +0000)]
Replace X86's CanRematLoadWithDispOperand by calling the target-independent
MachineInstr::isInvariantLoad instead, which has the benefit of being
more complete.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83696
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Sat, 10 Oct 2009 00:15:38 +0000 (00:15 +0000)]
Fix a missing initialization of PostRAScheduler's AA member.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83695
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 9 Oct 2009 23:33:48 +0000 (23:33 +0000)]
The ScheduleDAG framework now requires an AliasAnalysis argument, though
it isn't needed in the ScheduleDAGSDNodes schedulers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83691
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 9 Oct 2009 23:31:04 +0000 (23:31 +0000)]
Update this test; the code is the same but it gets counted as one
fewer remat.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83690
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 9 Oct 2009 23:28:27 +0000 (23:28 +0000)]
Mark the LDR instruction with isReMaterializable, as it is rematerializable
when loading from an invariant memory location.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83688
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 9 Oct 2009 23:27:56 +0000 (23:27 +0000)]
Factor out LiveIntervalAnalysis' code to determine whether an instruction
is trivially rematerializable and integrate it into
TargetInstrInfo::isTriviallyReMaterializable. This way, all places that
need to know whether an instruction is rematerializable will get the
same answer.
This enables the useful parts of the aggressive-remat option by
default -- using AliasAnalysis to determine whether a memory location
is invariant, and removes the questionable parts -- rematting operations
with virtual register inputs that may not be live everywhere.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83687
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 9 Oct 2009 22:42:28 +0000 (22:42 +0000)]
Extract scope information from the variable itself, instead of relying on alloca or llvm.dbg.declare location.
While recording beginning of a function, use scope info from the first location entry instead of just relying on first location entry itself.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83684
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Fri, 9 Oct 2009 22:10:27 +0000 (22:10 +0000)]
ExecutionEngine::clearGlobalMappingsFromModule failed to remove reverse
mappings, which could cause errors and assert-failures. This patch fixes that,
adds a test, and refactors the global-mapping-removal code into a single place.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83678
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 9 Oct 2009 22:09:05 +0000 (22:09 +0000)]
Add a const qualifier.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83677
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Fri, 9 Oct 2009 21:42:02 +0000 (21:42 +0000)]
Use names instead of numbers for some of the magic
constants used in inlining heuristics (especially
those used in more than one file). No functional change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83675
91177308-0d34-0410-b5e6-
96231b3b80d8
Kevin Enderby [Fri, 9 Oct 2009 21:12:28 +0000 (21:12 +0000)]
Added another bit of the ARM target assembler to llvm-mc to parse register
lists. Changed ARMAsmParser::MatchRegisterName to return -1 instead of 0 on
errors so 0-15 values could be returned as register numbers. Also added the
rest of the arm register names to the currently hacked up version to allow more
testing. Some changes to ARMAsmParser::ParseOperand to give different errors
for things not yet supported and some additions to the hacked
ARMAsmParser::MatchInstruction to allow more testing for now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83673
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 9 Oct 2009 21:02:10 +0000 (21:02 +0000)]
isTriviallyReMaterializable checks the
TargetInstrDesc::isRematerializable flag, so it isn't necessary to do
this check in its callers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83671
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 9 Oct 2009 20:35:19 +0000 (20:35 +0000)]
Fix the x86 test-shrink optimization so that it doesn't shrink comparisons
when one of the bits being tested would end up being the sign bit in the
narrower type, and a signed comparison is being performed, since this would
change the result of the signed comparison. This fixes PR5132.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83670
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Fri, 9 Oct 2009 20:20:54 +0000 (20:20 +0000)]
Merge a bunch of NEON tests into larger files so they run faster.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83667
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 9 Oct 2009 18:10:05 +0000 (18:10 +0000)]
Add basic infrastructure and x86 support for preserving MachineMemOperand
information when unfolding memory references.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83656
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 9 Oct 2009 17:51:49 +0000 (17:51 +0000)]
Check invalid debug info for enums. This may happen when underlyng enum is optimized away. Eventually DwarfChecker will clean this up during llvm verification stage.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83655
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 9 Oct 2009 17:33:33 +0000 (17:33 +0000)]
when previous scratch register is killed, flag the value as no longer tracking
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83653
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Fri, 9 Oct 2009 17:20:46 +0000 (17:20 +0000)]
Convert some ARM tests with lots of greps to use FileCheck.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83651
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 9 Oct 2009 16:35:06 +0000 (16:35 +0000)]
Revert r83606 and add comments explaining why it isn't safe.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83649
91177308-0d34-0410-b5e6-
96231b3b80d8
Nicolas Geoffray [Fri, 9 Oct 2009 13:17:57 +0000 (13:17 +0000)]
As it turns out, the bug fixes in GC codegen did not make it
to llvm-2.6. Remove the precise garbage collection feature.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83638
91177308-0d34-0410-b5e6-
96231b3b80d8
Nicolas Geoffray [Fri, 9 Oct 2009 10:17:14 +0000 (10:17 +0000)]
80-columns!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83628
91177308-0d34-0410-b5e6-
96231b3b80d8
Nicolas Geoffray [Fri, 9 Oct 2009 10:13:08 +0000 (10:13 +0000)]
Add initial information on VMKit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83627
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 9 Oct 2009 06:36:25 +0000 (06:36 +0000)]
more random updates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83625
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 9 Oct 2009 06:31:25 +0000 (06:31 +0000)]
Give Dan and my recent changes, machine LICM is now code size neutral.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83624
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 9 Oct 2009 06:24:25 +0000 (06:24 +0000)]
checkpoint.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83623
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 9 Oct 2009 06:21:52 +0000 (06:21 +0000)]
Fix a logic error that caused non-rematable loop invariants loads to be licm'ed out of loop.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83622
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 9 Oct 2009 05:55:04 +0000 (05:55 +0000)]
checkpoint.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83621
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Fri, 9 Oct 2009 05:45:38 +0000 (05:45 +0000)]
Slight rewording.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83620
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Fri, 9 Oct 2009 05:45:21 +0000 (05:45 +0000)]
Omit the 'out_file_index != -1' check when possible.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83619
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Fri, 9 Oct 2009 05:45:01 +0000 (05:45 +0000)]
Use llvm-as only for compiling .ll -> .bc.
llc can compile .ll files directly these days.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83618
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Fri, 9 Oct 2009 05:31:56 +0000 (05:31 +0000)]
Commit one last NEON test to use FileCheck. That's all of them now!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83617
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Fri, 9 Oct 2009 05:14:48 +0000 (05:14 +0000)]
Convert more NEON tests to use FileCheck.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83616
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 9 Oct 2009 05:01:15 +0000 (05:01 +0000)]
update clang section.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83615
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Fri, 9 Oct 2009 04:15:52 +0000 (04:15 +0000)]
Raise the limit on built-in plugins in llvmc to 10.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83614
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Fri, 9 Oct 2009 02:40:01 +0000 (02:40 +0000)]
Reconfigure automatically when Base.td.in is changed.
Thanks to Chris for heads-up!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83613
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 9 Oct 2009 01:17:11 +0000 (01:17 +0000)]
Reset kill markers after live interval is reconstructed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83608
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 9 Oct 2009 00:57:38 +0000 (00:57 +0000)]
Indentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83607
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 9 Oct 2009 00:41:22 +0000 (00:41 +0000)]
Preserve HasNSW and HasNUW when constructing SCEVs for Add and Mul
instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83606
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Fri, 9 Oct 2009 00:11:32 +0000 (00:11 +0000)]
When considering whether to inline Callee into Caller,
and that will make Caller too big to inline, see if it
might be better to inline Caller into its callers instead.
This situation is described in PR 2973, although I haven't
tried the specific case in SPASS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83602
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 9 Oct 2009 00:10:36 +0000 (00:10 +0000)]
Add the ability to track HasNSW and HasNUW on more kinds of SCEV expressions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83601
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Fri, 9 Oct 2009 00:01:36 +0000 (00:01 +0000)]
Add codegen support for NEON vst4lane intrinsics with 128-bit vectors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83600
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 8 Oct 2009 23:51:31 +0000 (23:51 +0000)]
Add codegen support for NEON vst3lane intrinsics with 128-bit vectors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83598
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 8 Oct 2009 23:38:24 +0000 (23:38 +0000)]
Add codegen support for NEON vst2lane intrinsics with 128-bit vectors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83596
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 8 Oct 2009 23:33:03 +0000 (23:33 +0000)]
Convert more NEON tests to use FileCheck.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83595
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 8 Oct 2009 22:53:57 +0000 (22:53 +0000)]
Add codegen support for NEON vld4lane intrinsics with 128-bit vectors.
Also fix some copy-and-paste errors in previous changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83590
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 8 Oct 2009 22:42:35 +0000 (22:42 +0000)]
Remove code that makes no sense.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83589
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 8 Oct 2009 22:33:53 +0000 (22:33 +0000)]
Convert more NEON tests to use FileCheck.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83587
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 8 Oct 2009 22:27:33 +0000 (22:27 +0000)]
Add codegen support for NEON vld3lane intrinsics with 128-bit vectors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83585
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 8 Oct 2009 21:24:34 +0000 (21:24 +0000)]
Update CMake build yet again after a source file was removed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83575
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Thu, 8 Oct 2009 20:52:51 +0000 (20:52 +0000)]
It's possible for a global variable to be optimized out of a metadata object. So
we should allow a "null" with this dyn_cast.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83573
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Thu, 8 Oct 2009 20:43:22 +0000 (20:43 +0000)]
Use lower16 / upper16 imm modifiers to asmprint 32-bit imms splitted via movt/movw pair.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83572
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 8 Oct 2009 20:41:17 +0000 (20:41 +0000)]
Clear variable debug info map at the end of the function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83571
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 8 Oct 2009 18:56:10 +0000 (18:56 +0000)]
Add codegen support for NEON vld2lane intrinsics with 128-bit vectors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83568
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 8 Oct 2009 18:52:56 +0000 (18:52 +0000)]
Clean up some unnecessary initializations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83566
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 8 Oct 2009 18:51:31 +0000 (18:51 +0000)]
Clean up a comment (indentation was wrong).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83565
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 8 Oct 2009 18:49:46 +0000 (18:49 +0000)]
Add a SelectionDAG getTargetInsertSubreg convenience function,
similar to getTargetExtractSubreg.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83564
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 8 Oct 2009 18:48:03 +0000 (18:48 +0000)]
Do not record line number to implicitly mark start of function if function has arguments. Extra line number entries trip gdb in some cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83563
91177308-0d34-0410-b5e6-
96231b3b80d8
Richard Osborne [Thu, 8 Oct 2009 17:14:57 +0000 (17:14 +0000)]
Add missing names for the XCore specific LADD and LSUB nodes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83556
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 8 Oct 2009 17:00:02 +0000 (17:00 +0000)]
Add a form of addPreserved which takes a string argument, to allow passes
to declare that they preserve other passes without needing to pull in
additional header file or library dependencies. Convert MachineFunctionPass
and CodeGenLICM to make use of this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83555
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 8 Oct 2009 16:01:33 +0000 (16:01 +0000)]
some updates from users of llvm
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83551
91177308-0d34-0410-b5e6-
96231b3b80d8
Richard Osborne [Thu, 8 Oct 2009 15:38:17 +0000 (15:38 +0000)]
Add some peepholes for signed comparisons using ashr X, X, 32.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83549
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 8 Oct 2009 07:01:46 +0000 (07:01 +0000)]
all content split into sections, still much work to be done.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83532
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 8 Oct 2009 06:42:44 +0000 (06:42 +0000)]
remove LoopVR pass. According to Nick:
"LoopVR's logic was copied into ScalarEvolution::getUnsignedRange and
::getSignedRange. Please delete LoopVR."
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83531
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 8 Oct 2009 06:27:53 +0000 (06:27 +0000)]
checkpoint, this is still not comprehendible.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83530
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Thu, 8 Oct 2009 06:03:38 +0000 (06:03 +0000)]
Unbreak the build.
Forgot about the need to reconfigure after modifying Base.td.in....
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83529
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 8 Oct 2009 06:02:10 +0000 (06:02 +0000)]
Convert more NEON tests to use FileCheck.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83528
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 8 Oct 2009 05:18:18 +0000 (05:18 +0000)]
Add codegen support for NEON vst4 intrinsics with <1 x i64> vectors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83526
91177308-0d34-0410-b5e6-
96231b3b80d8