R600: Allocate memoperand in the MachienFunction so it doesn't leak.
authorBenjamin Kramer <benny.kra@googlemail.com>
Fri, 16 Aug 2013 14:48:09 +0000 (14:48 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Fri, 16 Aug 2013 14:48:09 +0000 (14:48 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188555 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/R600/SIISelLowering.cpp

index 0bd8bce51a3118817112b0b558ccd12332dab32e..dc721e9974a1642441cfb33a0e53cf79369be932 100644 (file)
@@ -423,9 +423,10 @@ SDValue SITargetLowering::LowerOperation(SDValue Op, SelectionDAG &DAG) const {
         Op.getOperand(2)
       };
 
-      MachineMemOperand *MMO = new MachineMemOperand(MachinePointerInfo(),
-                    MachineMemOperand::MOLoad | MachineMemOperand::MOInvariant,
-                    VT.getSizeInBits() / 8, 4);
+      MachineMemOperand *MMO = MF.getMachineMemOperand(
+          MachinePointerInfo(),
+          MachineMemOperand::MOLoad | MachineMemOperand::MOInvariant,
+          VT.getSizeInBits() / 8, 4);
       return DAG.getMemIntrinsicNode(AMDGPUISD::LOAD_CONSTANT, DL,
                                      Op->getVTList(), Ops, 2, VT, MMO);
     }