[PATCH] D92139: Add `hasSideEffects=0` for PLXVP and PSTXVP instructions definition

Victor Huang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 25 15:18:02 PST 2020


NeHuang created this revision.
NeHuang added reviewers: amyk, steven.zhang, PowerPC, hfinkel.
NeHuang added a project: LLVM.
Herald added subscribers: llvm-commits, kbarton, hiraditya, nemanjai.
NeHuang requested review of this revision.

In this patch, we set `hasSideEffects=0` for PLXVP and PSTXVP instructions definition in the td file.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D92139

Files:
  llvm/lib/Target/PowerPC/PPCInstrPrefix.td


Index: llvm/lib/Target/PowerPC/PPCInstrPrefix.td
===================================================================
--- llvm/lib/Target/PowerPC/PPCInstrPrefix.td
+++ llvm/lib/Target/PowerPC/PPCInstrPrefix.td
@@ -1622,7 +1622,7 @@
             (v4i32 (EXTRACT_SUBREG $v, sub_vsx1))>;
 }
 
-let mayLoad = 1, mayStore = 0, Predicates = [PairedVectorMemops] in {
+let mayLoad = 1, mayStore = 0, hasSideEffects = 0, Predicates = [PairedVectorMemops] in {
   def LXVP : DQForm_XTp5_RA17_MEM<6, 0, (outs vsrprc:$XTp),
                                   (ins memrix16:$DQ_RA), "lxvp $XTp, $DQ_RA",
                                   IIC_LdStLFD, []>;
@@ -1631,7 +1631,7 @@
                               []>;
 }
 
-let mayLoad = 0, mayStore = 1, Predicates = [PairedVectorMemops] in {
+let mayLoad = 0, mayStore = 1, hasSideEffects = 0, Predicates = [PairedVectorMemops] in {
   def STXVP : DQForm_XTp5_RA17_MEM<6, 1, (outs), (ins vsrprc:$XTp,
                                    memrix16:$DQ_RA), "stxvp $XTp, $DQ_RA",
                                    IIC_LdStLFD, []>;
@@ -1640,14 +1640,14 @@
                                []>;
 }
 
-let mayLoad = 1, mayStore = 0, Predicates = [PairedVectorMemops, PrefixInstrs] in {
+let mayLoad = 1, mayStore = 0, hasSideEffects = 0, Predicates = [PairedVectorMemops, PrefixInstrs] in {
   defm PLXVP :
     8LS_DForm_R_XTp5_SI34_MEM_p<1, 58, (outs vsrprc:$XTp), (ins memri34:$D_RA),
                                 (ins memri34_pcrel:$D_RA), "plxvp $XTp, $D_RA",
                                 IIC_LdStLFD>;
 }
 
-let mayLoad = 0, mayStore = 1, Predicates = [PairedVectorMemops, PrefixInstrs] in {
+let mayLoad = 0, mayStore = 1, hasSideEffects = 0, Predicates = [PairedVectorMemops, PrefixInstrs] in {
   defm PSTXVP :
     8LS_DForm_R_XTp5_SI34_MEM_p<1, 62, (outs), (ins vsrprc:$XTp, memri34:$D_RA),
                                 (ins vsrprc:$XTp, memri34_pcrel:$D_RA),


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D92139.307677.patch
Type: text/x-patch
Size: 1915 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201125/b4f02a30/attachment.bin>


More information about the llvm-commits mailing list