Chris Lattner
8be174c089
filecheckize a test and mark these wiht a cpu so it passes
...
on hosts without cmovs.
llvm-svn: 98521
2010-03-14 22:31:16 +00:00
Chris Lattner
7d4cb40969
all 64-bit cpus have cmov, this should fix CodeGen/X86/cmov.ll
...
(at least) on non-x86 builders.
llvm-svn: 98520
2010-03-14 22:24:34 +00:00
Benjamin Kramer
be3d9aadbd
Remove pointless forward declaration, MSVC got confused by this.
...
llvm-svn: 98519
2010-03-14 22:00:28 +00:00
Duncan Sands
217cec1786
Turn calls to copysignl into an FCOPYSIGN node. Handle FCOPYSIGN nodes
...
with ppc_f128 type by having the type legalizer turn these back into a
call to copysignl.
llvm-svn: 98514
2010-03-14 21:08:40 +00:00
Evan Cheng
f91618ae9f
Rename SDDbgValue.h to SDNodeDbgValue.h for consistency.
...
llvm-svn: 98513
2010-03-14 19:56:39 +00:00
Chris Lattner
70eca8f78e
fix ShrinkDemandedOps to not leave dead nodes around,
...
fixing PR6607
llvm-svn: 98512
2010-03-14 19:46:02 +00:00
Chris Lattner
5393443ed6
rewrite ShrinkDemandedOps to be faster and indent less,
...
no functionality change.
llvm-svn: 98511
2010-03-14 19:43:04 +00:00
Evan Cheng
6bc9eccbe4
Fix jit encoding bugs.
...
llvm-svn: 98510
2010-03-14 19:28:34 +00:00
Chris Lattner
f656ba2910
make -view-isel-dags print after the 'ShrinkDemandedOps' pass.
...
llvm-svn: 98509
2010-03-14 19:27:55 +00:00
Chris Lattner
95e0a61b2d
don't have i386-specific tests in CodeGen/Generic, PR6601.
...
llvm-svn: 98508
2010-03-14 18:51:18 +00:00
Chris Lattner
c50b8b27f5
fix PR6605, X86ISD::CMP always returns i32 (EFLAGS), not
...
the operand type.
llvm-svn: 98507
2010-03-14 18:44:35 +00:00
Anton Korobeynikov
9333c20518
Fix typo
...
llvm-svn: 98506
2010-03-14 18:42:52 +00:00
Anton Korobeynikov
51a709db4d
Document fp16 intrinsics
...
llvm-svn: 98505
2010-03-14 18:42:47 +00:00
Anton Korobeynikov
3997a71ef8
Feature test for half precision FP.
...
llvm-svn: 98504
2010-03-14 18:42:43 +00:00
Anton Korobeynikov
90fcfccc91
Add substarget feature for FP16
...
llvm-svn: 98503
2010-03-14 18:42:38 +00:00
Anton Korobeynikov
48357cdc62
Add codegen support for FP16 on ARM
...
llvm-svn: 98502
2010-03-14 18:42:31 +00:00
Anton Korobeynikov
2cb4451ae6
Make default expansion for FP16 <-> FP32 nodes into libcalls
...
llvm-svn: 98501
2010-03-14 18:42:24 +00:00
Anton Korobeynikov
95f830f289
Add DAG nodes to represent FP16 <-> FP32 intrinsics
...
llvm-svn: 98500
2010-03-14 18:42:15 +00:00
Anton Korobeynikov
2f953c5850
Cleanup
...
llvm-svn: 98499
2010-03-14 18:42:08 +00:00
Anton Korobeynikov
e29762e78e
The fp16 <-> fp32 intrinsics are pure, mark them so they can be CSE'd, etc.
...
llvm-svn: 98498
2010-03-14 18:42:04 +00:00
Anton Korobeynikov
92e88294ce
Add intrinsics to represent fp16 <-> fp32 conversions
...
llvm-svn: 98497
2010-03-14 18:41:50 +00:00
Chris Lattner
1469c1b01e
add support for pentium class CPUs which do not have cmov,
...
PR4841. Patch by Craig Smith!
llvm-svn: 98496
2010-03-14 18:31:44 +00:00
Chris Lattner
2bdb0765f8
fix AsmPrinter::GetBlockAddressSymbol to always return a unique
...
label instead of trying to form one based on the BB name (which
causes collisions if the name is empty). This fixes PR6608
llvm-svn: 98495
2010-03-14 17:53:23 +00:00
Chris Lattner
fbf6891967
comment fix.
...
llvm-svn: 98494
2010-03-14 17:10:52 +00:00
Chris Lattner
239d05bad6
shrink 4-byte branches to 1-byte branches when lowering from
...
MachineInstr -> MCInst. This is what the assembler backend wants,
it relaxes from smaller to larger things. This fixes rdar://7750815
llvm-svn: 98493
2010-03-14 17:04:18 +00:00
Bill Wendling
0b0be33c46
Skip over debug info when trying to merge two return BBs.
...
llvm-svn: 98491
2010-03-14 10:40:55 +00:00
Bill Wendling
3320ee3d10
Make returns more consistent with others.
...
llvm-svn: 98490
2010-03-14 10:40:28 +00:00
Chris Lattner
9331acc6d7
get MMI out of the label uniquing business, just go to MCContext
...
to get unique assembler temporary labels.
llvm-svn: 98489
2010-03-14 08:36:50 +00:00
Chris Lattner
e939096a3b
fix these two get the mcsymbol operand instead of imm operand.
...
llvm-svn: 98487
2010-03-14 08:28:48 +00:00
Chris Lattner
3eb55835b5
add a new CreateTempSymbol method, the use case for
...
CreateTempSymbol vs GetOrCreateTemporarySymbol are
completely different.
llvm-svn: 98486
2010-03-14 08:23:30 +00:00
Chris Lattner
5af59dfd1b
don't use getDWLabel("label" anymore, always go through MMI.
...
llvm-svn: 98485
2010-03-14 08:18:13 +00:00
Chris Lattner
49130c09d0
remove now-dead code, all labels use MCSymbols.
...
llvm-svn: 98484
2010-03-14 08:17:53 +00:00
Chris Lattner
5ee7841af2
change SrcLineInfo to contain a label instead of a label ID.
...
llvm-svn: 98483
2010-03-14 08:15:55 +00:00
Chris Lattner
23ec7363b8
Now that DBG_LABEL is updated, we can finally make MachineMove
...
contain an MCSymbol instead of a label index.
llvm-svn: 98482
2010-03-14 08:12:40 +00:00
Chris Lattner
ba3b320aa3
change the DBG_LABEL MachineInstr to always be created
...
with an MCSymbol instead of an immediate.
llvm-svn: 98481
2010-03-14 07:56:48 +00:00
Chris Lattner
c90ed01cf3
xfail properly
...
llvm-svn: 98479
2010-03-14 07:55:34 +00:00
Chris Lattner
45aceed227
unbreak the build, grr symlinks.
...
llvm-svn: 98477
2010-03-14 07:36:49 +00:00
Chris Lattner
3e251f1db0
xfail these tests temporarily to get teh buildbots back to happy land.
...
llvm-svn: 98476
2010-03-14 07:32:48 +00:00
Chris Lattner
35d8b4e3e5
Change this code to allocate temporary labels from mccontext,
...
not from MMI.
llvm-svn: 98475
2010-03-14 07:29:45 +00:00
Chris Lattner
853b4f38df
switch GC_LABEL to use an MCSymbol operand instead of a label ID operand.
...
llvm-svn: 98474
2010-03-14 07:27:07 +00:00
Chris Lattner
ee71bdd77f
Fix some EH failures on NNT I introduced in r98461
...
llvm-svn: 98471
2010-03-14 07:02:50 +00:00
Chris Lattner
961e202df4
fix a bug I introduced in r98459, causing some NNT failures.
...
llvm-svn: 98470
2010-03-14 06:50:56 +00:00
Evan Cheng
01e271db2e
Check in tablegen changes to fix disassembler related failures caused by r98465.
...
llvm-svn: 98468
2010-03-14 05:15:39 +00:00
Evan Cheng
7d8c39bb1c
Do not force indirect tailcall through fixed registers: eax, r11. Add support to allow loads to be folded to tail call instructions.
...
llvm-svn: 98465
2010-03-14 03:48:46 +00:00
Daniel Dunbar
03a9f8588c
MC: Fix a crash on invalid, attempting to evaluate undefined symbols.
...
llvm-svn: 98464
2010-03-14 03:10:40 +00:00
Chris Lattner
5fef80c5aa
change the LabelSDNode to be EHLabelSDNode and make it hold
...
an MCSymbol. Make the EH_LABEL MachineInstr hold its label
with an MCSymbol instead of ID. Fix a bug in MMI.cpp which
would return labels named "Label4" instead of "label4".
llvm-svn: 98463
2010-03-14 02:33:54 +00:00
Chris Lattner
de49dbc188
eliminate InvalidateLabel and LabelIDList from MMI and replace
...
them with a counter.
llvm-svn: 98462
2010-03-14 02:24:55 +00:00
Chris Lattner
f856c407af
use Label->isDefined() instead of isLabelDeleted() now that we
...
consistently use MCSymbol and only call this predicate after
they should have been emitted.
llvm-svn: 98461
2010-03-14 02:20:58 +00:00
Chris Lattner
72761c4e3d
fix some pointless layering violations.
...
llvm-svn: 98460
2010-03-14 01:56:06 +00:00
Chris Lattner
149cf816bb
change EH related stuff (other than EH_LABEL) to use MCSymbol
...
instead of label ID's. This cleans up and regularizes a bunch
of code and makes way for future progress.
Unfortunately, this pointed out to me that JITDwarfEmitter.cpp
is largely copy and paste from DwarfException/MachineModuleInfo
and other places. This is very sad and disturbing. :(
One major change here is that TidyLandingPads moved from being
called in DwarfException::BeginFunction to being called in
DwarfException::EndFunction. There should not be any
functionality change from doing this, but I'm not an EH expert.
llvm-svn: 98459
2010-03-14 01:41:15 +00:00