Owen Anderson
39b890dfa2
Convert the internal PassRegistrar class into a new, external PassRegistry class. No intended functionality change at this point.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108877 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 18:39:06 +00:00
Chris Lattner
ce61aed551
edis needs to link in mcdisassembler.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108876 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 18:35:23 +00:00
Chris Lattner
9ae2e3384e
update cmake.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108875 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 18:33:29 +00:00
Chris Lattner
fed3fed251
hopefully teach cmake to build the .inc file.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108874 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 18:33:21 +00:00
Chris Lattner
feb9cf4581
edinfo doesn't need to be built here.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108873 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 18:31:54 +00:00
Chris Lattner
ca2fcac09d
cmake too
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108872 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 18:30:37 +00:00
Chris Lattner
bd9de839c4
forgot to add a file
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108870 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 18:29:50 +00:00
Chris Lattner
847da55716
start straightening out libedis's dependencies and make it fit
...
better in the llvm world. Among other things, this changes:
1. The guts of libedis are now moved into lib/MC/MCDisassembler
2. llvm-mc now depends on lib/MC/MCDisassembler, not tools/edis,
so edis and mc don't have to be built in series.
3. lib/MC/MCDisassembler no longer depends on the C api, the C
API depends on it.
4. Various code cleanup changes.
There is still a lot to be done to make edis fit with the llvm
design, but this is an incremental step in the right direction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108869 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 18:25:19 +00:00
Gabor Greif
c4fd9afaf9
remove testing cruft, this can be found in unittests/Support/Casting.cpp now
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108868 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 17:20:25 +00:00
Dan Gohman
43ef3fbae1
Remember that the induction variable is always a PHINode and
...
use getIncomingValueForBlock instead of
LoopInfo::getCanonicalInductionVariableIncrement.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108865 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 17:18:52 +00:00
Gabor Greif
e8950977a5
migrate essentially everything from under #ifdef DEBUG_CAST_OPERATORS into this file
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108864 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 17:06:28 +00:00
Dan Gohman
fc3678a346
Fix SCEV denormalization of expressions where the exit value from
...
one loop is involved in the increment of an addrec for another
loop. This fixes rdar://8168938.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108863 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 17:06:20 +00:00
Owen Anderson
2dcacabc71
Pull out r108755. After offline discussion with Chris, we're going to go a different direction with this.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108856 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 16:55:05 +00:00
Dan Gohman
eb4152c192
Add a fast path for x - x.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108855 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 16:53:00 +00:00
Gabor Greif
08993c03ab
extend to cast<> and cast_or_null<> tests
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108854 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 16:51:18 +00:00
Dan Gohman
133e295b36
Simplify this code; LoopInfo::getCanonicalInductionVariable will only
...
find integer induction variables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108853 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 16:46:58 +00:00
Dan Gohman
7c58dbd88c
Make getOrInsertCanonicalInductionVariable guarantee that its
...
result is a PHINode*.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108852 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 16:44:52 +00:00
Gabor Greif
af8e2ef649
isa<> tests
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108851 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 16:38:12 +00:00
Dan Gohman
b7391fadff
Change an argument from an Instruction* to a Value*, which is all
...
that is needed here.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108850 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 16:34:50 +00:00
Gabor Greif
ee57dae3d8
initial checkin for unittest to exercise Support/Casting.h
...
this is still minimal on purpose, but I plan to migrate the ugly
hack under #ifdef DEBUG_CAST_OPERATORS into this file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108849 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 16:32:20 +00:00
Dan Gohman
082d6b6536
Minor code cleanups.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108848 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 16:32:11 +00:00
Jim Grosbach
f27ca42552
update tests for smarter BIC usage
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108846 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 16:16:48 +00:00
Jakob Stoklund Olesen
abff28087f
Appease the colonials.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108845 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 16:12:37 +00:00
Jim Grosbach
f084a5e81d
Using BIC for immediates needs an extra bump for its complexity to get
...
instruction selection to prefer it when possible. rdar://7903972
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108844 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 16:07:04 +00:00
Duncan Sands
6bf8eee264
The same problem was being tracked in PR7652.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108843 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 15:52:32 +00:00
Jakob Stoklund Olesen
8ae0263471
Beginning SplitKit - utility classes for live range splitting.
...
This is a work in progress. So far we have some basic loop analysis to help
determine where it is useful to split a live range around a loop.
The actual loop splitting code from Splitter.cpp is also going to move in here.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108842 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 15:41:07 +00:00
Jim Grosbach
26ede6834e
Removed un-used code.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108841 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 14:51:32 +00:00
Lang Hames
6089e464dd
Updated css classes for the pressure table legend.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108839 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 14:35:55 +00:00
Lang Hames
2725abd039
Oops - I tables render poorly in Chrome without this explicit height specification.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108824 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 10:29:46 +00:00
Lang Hames
f80f31eb9f
Use run-length encoding to represent identical adjacent cells in the pressure
...
and interval table. Reduces output HTML file sizes by ~80% in my test cases.
Also fix access of private member type by << operator.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108823 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 10:18:54 +00:00
Lang Hames
245581b1ac
Added support for turning HTML indentation on and off (indentation off by default).
...
Reduces output file size ~20% on my test cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108822 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 09:13:29 +00:00
Bruno Cardoso Lopes
6651b3f45f
Enable LLVM to compile on Mips. Fix PR5828
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108821 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 08:44:20 +00:00
Bruno Cardoso Lopes
46773793cb
Fix PR7174, a couple o Mips fixes:
...
- Fix a typo for PIC check during jmp table lowering
- Also fix the "first jump table basic block is not
considered only reachable by fall through" problem, use this
ad-hoc solution until I come up with something better.
Patch by stetorvs@gmail.com
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108820 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 08:37:04 +00:00
Owen Anderson
8be3291f59
Speculatively revert r108813, in an attempt to get the self-host buildbots working again. I don't see why this patch
...
would cause them to fail the way they are, but none of the other intervening patches seem likely either.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108818 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 08:26:15 +00:00
Bruno Cardoso Lopes
29e9daa750
Fix Mips PR7473. Patch by stetorvs@gmail.com
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108816 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 07:58:51 +00:00
Lang Hames
c4bcc778a8
Switched to rendering after allocation (but before rewriting) in PBQP.
...
Updated renderer to use allocation information from VirtRegMap (if
available) to render spilled intervals differently.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108815 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 07:41:44 +00:00
Eric Christopher
735317c0e8
Grammar.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108814 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 06:56:13 +00:00
Owen Anderson
9e081004da
Reapply r108794, a fix for the failing test from last time.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108813 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 06:52:42 +00:00
Eric Christopher
72852a8cfb
Constify some arguments.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108812 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 06:52:21 +00:00
Daniel Dunbar
e8a469cdb4
Revert r108794, "Separate PassInfo into two classes: a constructor-free
...
superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo).", it is
breaking teh everything.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108805 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 03:06:07 +00:00
Owen Anderson
8ba15cb709
Separate PassInfo into two classes: a constructor-free superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108794 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 01:19:58 +00:00
Dan Gohman
fb272ad614
Minor code simplification.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108793 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 00:57:18 +00:00
Dale Johannesen
bf1ae5e254
Don't hoist things out of a large switch inside a
...
loop, for the reasons in the comments. This is a
major win on 253.perlbmk on ARM Darwin. I expect it
to be a good heuristic in general, but it's possible
some things will regress; I'll be watching.
7940152.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108792 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 00:50:13 +00:00
Bruno Cardoso Lopes
7a2b701ef6
x86_32 tests for vbroadcast
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108789 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 00:11:50 +00:00
Bruno Cardoso Lopes
43945d99de
Add AVX vbroadcast new instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108788 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 00:11:13 +00:00
Daniel Dunbar
7b81a0ef17
Update CMake files.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108787 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20 00:08:13 +00:00
Stuart Hastings
0db4271069
Correct line info for declarations/definitions. Radar 8063111.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108784 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-19 23:56:30 +00:00
Chris Lattner
f447a5f144
sink the arm implementations of ASmPrinter and MCInstLower
...
out of the AsmPrinter directory into libarm. Now the
ARM InstPrinters depend jsut on the MC stuff, not on vmcore
or codegen.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108783 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-19 23:44:46 +00:00
Chris Lattner
aef40351f6
fix a layering problem by moving the x86 implementation
...
of AsmPrinter and InstLowering into libx86 and out of the
asmprinter subdirectory. Now X86/AsmPrinter just depends on
MC stuff, not all of codegen and LLVM IR.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108782 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-19 23:41:57 +00:00
Bruno Cardoso Lopes
94143ee625
Add 256-bit vaddsub, vhadd, vhsub, vblend and vdpp instructions!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108769 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-19 23:32:44 +00:00