llvm/lib
Jakob Stoklund Olesen 243296690e Use the right floating point load/store instructions in PPCInstrInfo::foldMemoryOperandImpl().
The PowerPC floating point registers can represent both f32 and f64 via the
two register classes F4RC and F8RC. F8RC is considered a subclass of F4RC to
allow cross-class coalescing. This coalescing only affects whether registers
are spilled as f32 or f64.

Spill slots must be accessed with load/store instructions corresponding to the
class of the spilled register. PPCInstrInfo::foldMemoryOperandImpl was looking
at the instruction opcode which is wrong.

X86 has similar floating point register classes, but doesn't try to fold
memory operands, so there is no problem there.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97262 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-26 21:09:24 +00:00
..
Analysis Make LoopSimplify change conditional branches in loop exiting blocks 2010-02-25 06:57:05 +00:00
Archive From PR6228: 2010-02-04 06:19:43 +00:00
AsmParser Introduce isOpaqueTy and use it rather than isa<OpaqueType>. Also, move some 2010-02-16 14:50:09 +00:00
Bitcode Make the side-numbering of instructions used by metadata (which is needed to 2010-02-25 08:30:17 +00:00
CodeGen Use the right floating point load/store instructions in PPCInstrInfo::foldMemoryOperandImpl(). 2010-02-26 21:09:24 +00:00
CompilerDriver Input files with empty suffixes must be passed to linker. 2010-02-23 09:05:21 +00:00
ExecutionEngine There are two ways of checking for a given type, for example isa<PointerType>(T) 2010-02-16 11:11:14 +00:00
Linker Introduce isOpaqueTy and use it rather than isa<OpaqueType>. Also, move some 2010-02-16 14:50:09 +00:00
MC pass in more section kinds, enough to get the .align 0x90 2010-02-26 18:32:26 +00:00
Support Replace a temporary std::string with SmallString. 2010-02-26 20:28:29 +00:00
System follow-on to PR6280 2010-02-14 18:20:09 +00:00
Target Use the right floating point load/store instructions in PPCInstrInfo::foldMemoryOperandImpl(). 2010-02-26 21:09:24 +00:00
Transforms Move the EnableFullLoadPRE flag from a separate command-line option to an 2010-02-26 19:09:47 +00:00
VMCore Add type printing for Metadata pseudo. 2010-02-26 19:38:59 +00:00
Makefile