Mark sse_load_f32 and sse_load_f64 as having memory operands

(SDNPMemOperand). This way when they're morphed the memory operands will be
copied as well.

llvm-svn: 107583
This commit is contained in:
Bill Wendling 2010-07-04 08:59:55 +00:00
parent 4cb5ce113e
commit 701aa053b9
1 changed files with 2 additions and 2 deletions

View File

@ -82,9 +82,9 @@ def X86ptest : SDNode<"X86ISD::PTEST", SDTX86CmpPTest>;
// the top elements. These are used for the SSE 'ss' and 'sd' instruction
// forms.
def sse_load_f32 : ComplexPattern<v4f32, 5, "SelectScalarSSELoad", [],
[SDNPHasChain, SDNPMayLoad]>;
[SDNPHasChain, SDNPMayLoad, SDNPMemOperand]>;
def sse_load_f64 : ComplexPattern<v2f64, 5, "SelectScalarSSELoad", [],
[SDNPHasChain, SDNPMayLoad]>;
[SDNPHasChain, SDNPMayLoad, SDNPMemOperand]>;
def ssmem : Operand<v4f32> {
let PrintMethod = "printf32mem";