Owen Anderson
5f218b8612
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.
llvm-svn: 108818
2010-07-20 08:26:15 +00:00
Bruno Cardoso Lopes
b127fa9a01
Fix Mips PR7473. Patch by stetorvs@gmail.com
...
llvm-svn: 108816
2010-07-20 07:58:51 +00:00
Lang Hames
7be6158391
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.
llvm-svn: 108815
2010-07-20 07:41:44 +00:00
Eric Christopher
71a1a1a937
Grammar.
...
llvm-svn: 108814
2010-07-20 06:56:13 +00:00
Owen Anderson
cf625d0179
Reapply r108794, a fix for the failing test from last time.
...
llvm-svn: 108813
2010-07-20 06:52:42 +00:00
Eric Christopher
ff47f8d94f
Constify some arguments.
...
llvm-svn: 108812
2010-07-20 06:52:21 +00:00
Daniel Dunbar
3280e3aebf
Revert r108794, "Separate PassInfo into two classes: a constructor-free
...
superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo).", it is
breaking teh everything.
llvm-svn: 108805
2010-07-20 03:06:07 +00:00
Owen Anderson
3502f9a91b
Separate PassInfo into two classes: a constructor-free superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo).
...
llvm-svn: 108794
2010-07-20 01:19:58 +00:00
Dan Gohman
3a3e97cdbd
Minor code simplification.
...
llvm-svn: 108793
2010-07-20 00:57:18 +00:00
Dale Johannesen
6b9a191b08
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
.
llvm-svn: 108792
2010-07-20 00:50:13 +00:00
Bruno Cardoso Lopes
a4ef0f6f09
x86_32 tests for vbroadcast
...
llvm-svn: 108789
2010-07-20 00:11:50 +00:00
Bruno Cardoso Lopes
88869cb4db
Add AVX vbroadcast new instruction
...
llvm-svn: 108788
2010-07-20 00:11:13 +00:00
Daniel Dunbar
15f94c52e6
Update CMake files.
...
llvm-svn: 108787
2010-07-20 00:08:13 +00:00
Stuart Hastings
587ed4918c
Correct line info for declarations/definitions. Radar 8063111.
...
llvm-svn: 108784
2010-07-19 23:56:30 +00:00
Chris Lattner
9ae74337ef
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.
llvm-svn: 108783
2010-07-19 23:44:46 +00:00
Chris Lattner
4d232b674d
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.
llvm-svn: 108782
2010-07-19 23:41:57 +00:00
Bruno Cardoso Lopes
4ca44dda21
Add 256-bit vaddsub, vhadd, vhsub, vblend and vdpp instructions!
...
llvm-svn: 108769
2010-07-19 23:32:44 +00:00
Devang Patel
3b57155acd
Fix memory leak reported by valgrind.
...
Do not visit operands of old instruction. Visit all operands of new instruction.
llvm-svn: 108767
2010-07-19 23:25:39 +00:00
Dan Gohman
28f747a608
After a custom inserter, in a block which has constant instructions,
...
update the current basic block in addition to the current insert
position, so that they remain consistent. This fixes rdar://8204072.
llvm-svn: 108765
2010-07-19 22:48:56 +00:00
Evan Cheng
b2ad0066f5
ARM has to provide its own TargetLowering::findRepresentativeClass because its scalar floating point registers alias its vector registers.
...
llvm-svn: 108761
2010-07-19 22:15:08 +00:00
Jim Grosbach
6542666d70
long past time I added myself to this, I suppose.
...
llvm-svn: 108759
2010-07-19 22:04:28 +00:00
Owen Anderson
522ef60c01
Change the implemented interfaces list on PassInfo from a std::vector to a manually implemented
...
linked list. This is a little slower and involves more malloc'ing, but these lists are
typically short, and it allows PassInfo to be entirely constant initializable.
llvm-svn: 108755
2010-07-19 21:44:48 +00:00
Bob Wilson
0a947ba099
Save a copy of the unstripped libLTO.dylib in $SYM_DIR. Clean up the code
...
for dealing with libLTO.dylib to put it all in one place and to allow
use of DISABLE_USR_LINKS.
llvm-svn: 108753
2010-07-19 21:33:07 +00:00
Daniel Dunbar
ee5365dc8b
MC/Mach-O: Silently ignore .file directives instead of error'ing out on
...
them. They aren't important enough to abort the entire assembly, and failing
early makes testing more annoying.
llvm-svn: 108747
2010-07-19 20:44:20 +00:00
Daniel Dunbar
1dd74c37c5
X86: Mark JMP{32,64}[mr] as requires 32-bit/64-bit mode. They are the same
...
instruction, we only want to allow the one for the current subtarget.
- This also fixes suffix matching for jmp instructions, because it eliminates
the ambiguity between 'jmpl' and 'jmpq'.
llvm-svn: 108746
2010-07-19 20:44:16 +00:00
Owen Anderson
bf4c855c22
Regenerate.
...
llvm-svn: 108740
2010-07-19 19:42:01 +00:00
Owen Anderson
9130b1b272
Remove extraneous character.
...
llvm-svn: 108739
2010-07-19 19:41:52 +00:00
Owen Anderson
7fa1f7a769
Regenerate.
...
llvm-svn: 108738
2010-07-19 19:24:55 +00:00
Owen Anderson
6b9042dfd8
Add support for detecting <mach-o/getsect.h> and the getsect() function.
...
llvm-svn: 108737
2010-07-19 19:24:37 +00:00
Owen Anderson
0217b8e1d9
Tweak per Chris' comments.
...
llvm-svn: 108736
2010-07-19 19:23:32 +00:00
Evan Cheng
cecae7f56c
Teach computeRegisterProperties() to compute "representative" register class for legal value types. A "representative" register class is the largest legal super-reg register class for a value type. e.g. On i386, GR32 is the rep register class for i8 / i16 / i32; on x86_64 it would be GR64.
...
This property will be used by the register pressure tracking instruction scheduler.
llvm-svn: 108735
2010-07-19 18:47:01 +00:00
Jakob Stoklund Olesen
186d86d916
Spillers may alter MachineLoopInfo when breaking critical edges, so make it
...
non-const.
llvm-svn: 108734
2010-07-19 18:41:20 +00:00
Dale Johannesen
0e5f8a53fd
Testcase for 108732 (8195660).
...
llvm-svn: 108733
2010-07-19 18:22:40 +00:00
Devang Patel
e401bfe168
Fix PR 7662.
...
Do not try to insert local variable info to a DIE used for function declaration.
llvm-svn: 108731
2010-07-19 17:53:55 +00:00
Jim Grosbach
dc21ac2e0a
Since ARM emits inline jump tables as part of the ConstantIsland pass,
...
it should set the jump table encloding the EK_Inline. This prevents
a second, unused, copy of the table from being emitted after the function
body. PR6581.
llvm-svn: 108730
2010-07-19 17:20:38 +00:00
Jim Grosbach
5b8c14ce8a
revert so I can get the right PR# in the log message.
...
llvm-svn: 108727
2010-07-19 17:19:40 +00:00
Jim Grosbach
42f3134738
Since ARM emits inline jump tables as part of the ConstantIsland pass,
...
it should set the jump table encloding the EK_Inline. This prevents
a second, unused, copy of the table from being emitted after the function
body. PR7499.
llvm-svn: 108722
2010-07-19 17:18:28 +00:00
Mikhail Glushenkov
9f13396bae
Remove code duplication.
...
llvm-svn: 108718
2010-07-19 17:17:22 +00:00
Mikhail Glushenkov
3bf7681ab1
Better error reporting for switch_list.
...
llvm-svn: 108714
2010-07-19 17:17:10 +00:00
Benjamin Kramer
67f13ffdc2
Update CMake build.
...
llvm-svn: 108700
2010-07-19 15:37:03 +00:00
Duncan Sands
7439f193bb
Expose BasicBlock::moveBefore and moveAfter in C API, patch
...
by Benjamin Saunders.
llvm-svn: 108699
2010-07-19 15:31:07 +00:00
Lang Hames
304ecc0487
Render MachineFunctions to HTML pages, with options to render register
...
pressure estimates and liveness alongside.
Still experimental.
llvm-svn: 108698
2010-07-19 15:22:28 +00:00
Gabor Greif
e35b95f719
precompute 20 tags
...
llvm-svn: 108695
2010-07-19 14:48:15 +00:00
Duncan Sands
d4fcfc6539
Fix indentation.
...
llvm-svn: 108691
2010-07-19 09:36:45 +00:00
Duncan Sands
dcdd9f3a78
Expose JIT::recompileAndRelinkFunction for use through the C API.
...
Patch by Benjamin Saunders.
llvm-svn: 108690
2010-07-19 09:33:13 +00:00
Owen Anderson
f66e1873ea
Testcase for r108687.
...
llvm-svn: 108689
2010-07-19 08:14:26 +00:00
Owen Anderson
acd445be06
Remove r108639 now that it is handled by InstCombine instead.
...
llvm-svn: 108688
2010-07-19 08:10:24 +00:00
Owen Anderson
8159755faa
Reimplement r108639 in InstCombine rather than DAGCombine.
...
llvm-svn: 108687
2010-07-19 08:09:34 +00:00
Daniel Dunbar
220bd809bf
X86-64: Mark WINCALL and more tail call instructions as code gen only.
...
llvm-svn: 108685
2010-07-19 07:21:07 +00:00
Daniel Dunbar
fa2847103d
X86: Mark some tail call pseduo instruction as code gen only.
...
llvm-svn: 108684
2010-07-19 07:21:04 +00:00