Add mayLoad attribute to AVX convert instructions, since non of them
authorBruno Cardoso Lopes <bruno.cardoso@gmail.com>
Fri, 16 Sep 2011 22:02:14 +0000 (22:02 +0000)
committerBruno Cardoso Lopes <bruno.cardoso@gmail.com>
Fri, 16 Sep 2011 22:02:14 +0000 (22:02 +0000)
are declared with load patterns. This fix the crash in PR10941. No testcases,
since a fold is triggered and then converted back to the register form
afterwards.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139953 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86InstrSSE.td

index 0afc5399e1492ad819b4616c1ffa05103b9cd553..fda3b149def0b7109eb57ed562283dcb74f5730c 100644 (file)
@@ -1340,6 +1340,7 @@ multiclass sse12_vcvt_avx<bits<8> opc, RegisterClass SrcRC, RegisterClass DstRC,
                           X86MemOperand x86memop, string asm> {
   def rr : SI<opc, MRMSrcReg, (outs DstRC:$dst), (ins DstRC:$src1, SrcRC:$src),
               !strconcat(asm,"\t{$src, $src1, $dst|$dst, $src1, $src}"), []>;
+  let mayLoad = 1 in
   def rm : SI<opc, MRMSrcMem, (outs DstRC:$dst),
               (ins DstRC:$src1, x86memop:$src),
               !strconcat(asm,"\t{$src, $src1, $dst|$dst, $src1, $src}"), []>;