- Apr 01, 2011
-
-
Owen Anderson authored
When the architecture is explicitly armv6 or thumbv6, we need to mark the object file appropriately. llvm-svn: 128739
-
Jim Grosbach authored
llvm-svn: 128736
-
Johnny Chen authored
Fix a LDRT/LDRBT decoding bug where for Encoding A2, if Inst{4} != 0, we should reject the instruction as invalid. llvm-svn: 128734
-
Benjamin Kramer authored
llvm-svn: 128733
-
Benjamin Kramer authored
int test1(unsigned x) { return (x&8) ? 0 : -1; } int test3(unsigned x) { return (x&8) ? -1 : 0; } before (x86_64): _test1: andl $8, %edi cmpl $1, %edi sbbl %eax, %eax ret _test3: andl $8, %edi cmpl $1, %edi sbbl %eax, %eax notl %eax ret after: _test1: shrl $3, %edi andl $1, %edi leal -1(%rdi), %eax ret _test3: shll $28, %edi movl %edi, %eax sarl $31, %eax ret llvm-svn: 128732
-
Benjamin Kramer authored
llvm-svn: 128731
-
Evan Cheng authored
llvm-svn: 128730
-
Evan Cheng authored
Assign node order numbers to results of call instruction lowering. This should improve src line debug info when sdisel is used. rdar://9199118 llvm-svn: 128728
-
Akira Hatanaka authored
Modifies MipsAsmPrinter::isBlockOnlyReachableByFallthrough so that it handles delay slots correctly. llvm-svn: 128724
-
Johnny Chen authored
Fix LDRi12 immediate operand, which was changed to be the second operand in $addrmode_imm12 => (ops GPR:$base, i32imm:$offsimm). rdar://problem/9219356 llvm-svn: 128722
-
Akira Hatanaka authored
llvm-svn: 128718
-
Benjamin Kramer authored
llvm-svn: 128709
-
Jay Foad authored
list of operands. Simplify and rename them accordingly. llvm-svn: 128708
-
Duncan Sands authored
had gotten out of sync: isCastable didn't think it was possible to cast the x86_mmx type to anything, while it did think it possible to cast an i64 to x86_mmx. llvm-svn: 128705
-
Evan Cheng authored
rdar://8911343 llvm-svn: 128696
-
Matt Beaumont-Gay authored
llvm-svn: 128692
-
Bruno Cardoso Lopes authored
all LDR/STR changes and left them to a future patch. Passing all checks now. - Implement asm parsing support for LDRT, LDRBT, STRT, STRBT and fix the encoding wherever is possible. - Add a new encoding bit to describe the index mode used and teach printAddrMode2Operand to check by the addressing mode which index mode to print. - Testcases llvm-svn: 128689
-
Jakob Stoklund Olesen authored
It is using a trivial rewriter that doesn't know how to insert spill code requested by the standard spiller. llvm-svn: 128688
-
Jakob Stoklund Olesen authored
The LocalStackSlotAllocation pass was creating illegal registers. llvm-svn: 128687
-
Nadav Rotem authored
llvm-svn: 128683
-
- Mar 31, 2011
-
-
Benjamin Kramer authored
Thanks Eli! llvm-svn: 128676
-
Evan Cheng authored
accumulator forwarding: vadd d3, d0, d1 vmul d3, d3, d2 => vmul d3, d0, d2 vmla d3, d1, d2 llvm-svn: 128665
-
Johnny Chen authored
Inst{4} = 0. rdar://problem/9213022 llvm-svn: 128662
-
Akira Hatanaka authored
llvm-svn: 128650
-
Jakob Stoklund Olesen authored
Turn them into noop KILL instructions instead. This lets the scavenger know when super-registers are killed and defined. llvm-svn: 128645
-
Johnny Chen authored
A8.6.23 BLX (immediate) rdar://problem/9212921 llvm-svn: 128644
-
Jakob Stoklund Olesen authored
llvm-svn: 128643
-
Jakob Stoklund Olesen authored
This way, shrinkToUses() will ignore the instruction that is about to be deleted, and we avoid leaving invalid live ranges that SplitKit doesn't like. Fix a misunderstanding in MachineVerifier about <def,undef> operands. The <undef> flag is valid on def operands where it has the same meaning as <undef> on a use operand. It only applies to sub-register defines which also read the full register. llvm-svn: 128642
-
Devang Patel authored
llvm-svn: 128639
-
Bruno Cardoso Lopes authored
llvm-svn: 128635
-
Jakob Stoklund Olesen authored
llvm-svn: 128634
-
Richard Osborne authored
llvm-svn: 128633
-
Bruno Cardoso Lopes authored
- Implement asm parsing support for LDRT, LDRBT, STRT, STRBT and {STR,LDC}{2}_{PRE,POST} fixing the encoding wherever is possible. - Move all instructions which use am2offset without a pattern to use addrmode2. - Add a new encoding bit to describe the index mode used and teach printAddrMode2Operand to check by the addressing mode which index mode to print. - Testcases llvm-svn: 128632
-
NAKAMURA Takumi authored
We don't expect the real "powf()" on some hosts (and powf() would be available on other hosts). For consistency, std::pow(double,double) may be called instead. Or, precision issue might attack us, to see unstable regalloc and stack coloring. llvm-svn: 128629
-
Benjamin Kramer authored
Thanks Frits! llvm-svn: 128628
-
Benjamin Kramer authored
llvm-svn: 128627
-
Benjamin Kramer authored
llvm-svn: 128626
-
Benjamin Kramer authored
InstCombine: Shrink "fcmp (fpext x), C" to "fcmp x, C" if C can be losslessly converted to the type of x. Fixes PR9592. llvm-svn: 128625
-
Benjamin Kramer authored
llvm-svn: 128624
-
Jakob Stoklund Olesen authored
The rematerialized instruction may require a more constrained register class than the register being spilled. In the test case, the spilled register has been inflated to the DPR register class, but we are rematerializing a load of the ssub_0 sub-register which only exists for DPR_VFP2 registers. The register class is reinflated after spilling, so the conservative choice is only temporary. llvm-svn: 128610
-