Sean Callanan
1e496fad4f
Added AsmWriterInst.cpp to the CMakeList so that
...
it builds OK on Visual Studio.
llvm-svn: 95702
2010-02-09 22:29:16 +00:00
Dale Johannesen
af10702e49
Disable unittests/ADT/BitVectorTest on PPC Darwin.
...
It fails with a release build only, for reasons
as yet unknown. (If there's a better way to Xfail
things here let me know, doesn't seem to be any
prior art in unittests.)
llvm-svn: 95700
2010-02-09 22:15:27 +00:00
Chris Lattner
3bdac5074e
port encoder enhancements over to the new encoder.
...
llvm-svn: 95699
2010-02-09 21:57:34 +00:00
Sean Callanan
1248c51819
Per PR 6219, factored AsmWriterInst and AsmWriterOperand
...
out of the AsmWriterEmitter. This patch does the physical
code movement, but leaves the implementation unchanged. I'll
make any changes necessary to generalize the code in a
separate patch.
llvm-svn: 95697
2010-02-09 21:50:41 +00:00
Chris Lattner
2457a30898
fix X86 encoder to output [disp] only addresses with no SIB byte
...
in X86-32 mode. This is still required in x86-64 mode to avoid
forming [disp+rip] encoding. Rewrite the SIB byte decision logic
to be actually understandable.
llvm-svn: 95693
2010-02-09 21:47:19 +00:00
Eric Christopher
6691a59247
Move Intrinsic::objectsize lowering back to InstCombineCalls and
...
enable constant 0 offset lowering.
llvm-svn: 95691
2010-02-09 21:24:27 +00:00
Chris Lattner
a651ca3caa
revert r95689: getX86RegNum(BaseReg) != N86::ESP is
...
a confusing idiom to check for ESP or RSP.
llvm-svn: 95690
2010-02-09 21:21:26 +00:00
Chris Lattner
a88bcd8963
simplify.
...
llvm-svn: 95689
2010-02-09 21:00:12 +00:00
Dale Johannesen
3cd434fa86
Re-disable for Darwin; I was mistaken to think this was fixed.
...
llvm-svn: 95688
2010-02-09 19:54:29 +00:00
Chris Lattner
7acf9be6c4
move target-independent opcodes out of TargetInstrInfo
...
into TargetOpcodes.h. #include the new TargetOpcodes.h
into MachineInstr. Add new inline accessors (like isPHI())
to MachineInstr, and start using them throughout the
codebase.
llvm-svn: 95687
2010-02-09 19:54:29 +00:00
Jim Grosbach
bdc0ff13db
Radar 7417921
...
tMOVCCi pattern only valid for low registers, as the Thumb1 mov immediate to
register instruction only works with low registers. Allowing high registers
for the instruction resulted in the assembler choosing the wide (32-bit)
encoding for the mov, but LLVM though the instruction was only 16 bits wide,
so offset calculations for constant pools became incorrect, leading to
out of range constant pool entries.
llvm-svn: 95686
2010-02-09 19:51:37 +00:00
Jeffrey Yasskin
42bf811d65
Add support for TypeBuilder<const/volatile void*, false>.
...
Thanks to Jochen Wilhelmy for the suggestion!
llvm-svn: 95677
2010-02-09 19:07:19 +00:00
Eric Christopher
871cf7bce2
Pull these back out, they're a little too aggressive and time
...
consuming for a simple optimization.
llvm-svn: 95671
2010-02-09 17:29:18 +00:00
Jakob Stoklund Olesen
e307c6e94b
Oops.
...
llvm-svn: 95670
2010-02-09 17:24:21 +00:00
Johnny Chen
de3621cfa8
Added vcvtb/vcvtt (between half-precision and single-precision, VFP).
...
For disassembly only.
A8.6.300
llvm-svn: 95669
2010-02-09 17:21:56 +00:00
Jakob Stoklund Olesen
70aa88d977
Remember to update live-in lists when coalescing physregs.
...
Patch by M Wahab!
llvm-svn: 95668
2010-02-09 17:20:11 +00:00
Jakob Stoklund Olesen
2a84a7ccbd
clang test suite
...
llvm-svn: 95667
2010-02-09 17:20:03 +00:00
Dan Gohman
4346bb14f7
Mention IndVarSimplify in the comment by getSmallConstantTripCount, as
...
is done for getTripCount.
llvm-svn: 95666
2010-02-09 17:00:40 +00:00
Dan Gohman
3e13fc968d
Mention vAny and iPTRAny in a comment.
...
llvm-svn: 95665
2010-02-09 16:59:14 +00:00
Chris Lattner
340fe1f187
move tests that depend on the x86 backend out of codegen/generic,
...
and remove a few old and unreduced ones. Fixes PR5624.
llvm-svn: 95656
2010-02-09 06:41:03 +00:00
Chris Lattner
fdb9fda4af
make target independent.
...
llvm-svn: 95655
2010-02-09 06:36:30 +00:00
Chris Lattner
28b79c686d
merge a target-specific add test into x86 directory.
...
llvm-svn: 95654
2010-02-09 06:35:50 +00:00
Chris Lattner
34c420d11b
merge another test in, drop the trivially constant folded cases.
...
llvm-svn: 95653
2010-02-09 06:33:27 +00:00
Chris Lattner
ddb2e5a05c
consolidate and filecheckize two tests.
...
llvm-svn: 95652
2010-02-09 06:24:00 +00:00
Chris Lattner
e669789912
merge two tests, make target independent.
...
llvm-svn: 95651
2010-02-09 06:19:20 +00:00
Chris Lattner
c4c733b815
move PR3462 to here.
...
llvm-svn: 95650
2010-02-09 05:55:14 +00:00
Chris Lattner
7c64c9ca21
add a note from PR6194
...
llvm-svn: 95649
2010-02-09 05:45:29 +00:00
Dale Johannesen
cfb0894dba
Skip DEBUG_VALUE in some places where it was affecting codegen.
...
llvm-svn: 95647
2010-02-09 02:01:46 +00:00
Devang Patel
d381c20ee7
Add declaration attribute to a variable DIE, if there is a separate DIE for the definition.
...
llvm-svn: 95646
2010-02-09 01:58:33 +00:00
Sean Callanan
4ea988636a
Updated the enhanced disassembly library to produce
...
whitespace tokens in the right places.
llvm-svn: 95645
2010-02-09 01:50:54 +00:00
Chris Lattner
fbda857b5c
fix llvm_build_struct_gep for PR6167, patch by
...
Peter Hawkins!
llvm-svn: 95644
2010-02-09 01:39:46 +00:00
Chris Lattner
f6d9c1f90c
simplify this code, duh.
...
llvm-svn: 95643
2010-02-09 01:14:06 +00:00
Chris Lattner
26b712379f
fix PR6193, only considering sign extensions *from i1* for this
...
xform.
llvm-svn: 95642
2010-02-09 01:12:41 +00:00
Eric Christopher
1ff7f162e2
Add file in here too.
...
llvm-svn: 95641
2010-02-09 01:11:03 +00:00
Sean Callanan
97fa88ebf2
Fixed a problem where the enhanced disassembly
...
library was reporting inaccurate token IDs.
llvm-svn: 95639
2010-02-09 01:00:18 +00:00
Chris Lattner
18fed3c934
make -show-inst be formatted a bit nicer. Before:
...
movl $3735928559, a ## inst: <MCInst 1273 <MCOperand Reg:0> <MCOperand Imm:1> <MCOperand Reg:0> <MCOperand Expr:(a)> <MCOperand Reg:0> <MCOperand Expr:(3735928559)>>
after:
movl $3735928559, a ## <MCInst #1273
## <MCOperand Reg:0>
## <MCOperand Imm:1>
## <MCOperand Reg:0>
## <MCOperand Expr:(a)>
## <MCOperand Reg:0>
## <MCOperand Expr:(3735928559)>>
llvm-svn: 95637
2010-02-09 00:54:51 +00:00
Lang Hames
796e4c2b4a
Fixed a bug in the PBQP allocator's findCoalesces method.
...
Previously spill registers, whose def indexes are not defined, would sometimes be improperly marked as coalescable with conflicting registers. The new findCoalesces routine conservatively assumes that any register with at least one undefined def is not coalescable with any register it interferes with.
llvm-svn: 95636
2010-02-09 00:50:27 +00:00
Chris Lattner
682f64dc8d
Implement x86 asm parsing support for %st and %st(4)
...
llvm-svn: 95634
2010-02-09 00:49:22 +00:00
Lang Hames
47fb92c5e7
Added copy sensible construction & assignment to PBQP graphs and fixed a memory access bug in the heuristic solver.
...
llvm-svn: 95633
2010-02-09 00:45:48 +00:00
Dale Johannesen
3f7ce68506
Debug operands should not be def or kill.
...
llvm-svn: 95632
2010-02-09 00:42:08 +00:00
Lang Hames
91b4cae53c
Changed the definition of an "invalid" slot to include the empty & tombstone values, but not zero.
...
llvm-svn: 95631
2010-02-09 00:41:23 +00:00
Chris Lattner
c0d3e6c90d
stop using reserved identifiers.
...
llvm-svn: 95630
2010-02-09 00:40:07 +00:00
Eric Christopher
428b385575
Add a new pass to do llvm.objsize lowering using SCEV.
...
Initial skeleton and SCEVUnknown lowering implemented,
the rest should come relatively quickly. Move testcase
to new directory.
Move pass to right before SimplifyLibCalls - which is
moved down a bit so we can take advantage of a few opts.
llvm-svn: 95628
2010-02-09 00:35:38 +00:00
Chris Lattner
804c2270c7
pass stringref by value instead of by const&
...
llvm-svn: 95627
2010-02-09 00:34:28 +00:00
Dan Gohman
71551e837f
Add explicit keywords.
...
llvm-svn: 95626
2010-02-09 00:29:29 +00:00
Chris Lattner
dbbd13f825
move PR6212 to this file.
...
llvm-svn: 95624
2010-02-09 00:11:10 +00:00
Chris Lattner
4d97e42ba6
enhance bits_storage to work with enums by using a c-style
...
cast instead of reinterpret_cast, fixing PR6243. Apparently
reinterpret_cast and I aren't getting along today.
llvm-svn: 95622
2010-02-09 00:05:45 +00:00
Dan Gohman
d19999d757
Implement AsmPrinter support for several more operators which have
...
direct MCExpr equivalents. Don't use MCExpr::Shr because it isn't
consistent between targets.
llvm-svn: 95620
2010-02-09 00:02:37 +00:00
Dan Gohman
30845777be
Document that MCExpr::Mod is actually remainder.
...
Document that MCExpr::Div, Mod, and the comparison operators are all
signed operators.
Document that the comparison operators' results are target-dependent.
Document that the behavior of shr is target-dependent.
llvm-svn: 95619
2010-02-08 23:58:47 +00:00
Chris Lattner
9635fe03ca
fix some problems handling large vectors reported in PR6230
...
llvm-svn: 95616
2010-02-08 23:56:03 +00:00