[PATCH] D154465: [PowerPC] Add DFP format instructions definitions and MC tests

Kamau Bridgeman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 13 09:54:20 PDT 2023


kamaub accepted this revision.
kamaub added a comment.
This revision is now accepted and ready to land.

This looks good to me, just some request that can be done pre-commit



================
Comment at: llvm/lib/Target/PowerPC/PPCInstrDFP.td:104-107
+defm DXEX: XForm_26r<59, 354, (outs f8rc:$RST), (ins f8rc:$RB),
+                     "dxex", "$RST, $RB", IIC_FPGeneral, []>;
+defm DXEXQ: XForm_26r<63, 354, (outs f8rc:$RST), (ins fpairrc:$RB),
+                      "dxexq", "$RST, $RB", IIC_FPGeneral, []>;
----------------
kamaub wrote:
> According to isa3.1 section. 5.6.7, only the first four instruction, encoding and decoding, may raise a floating point exception, these remaining ones need to moved outside of the `	} // mayRaiseFPException` brace I think.
I think we don't use these itineraries for these instructions at all right? Its still a bit odd to only apply the FPGeneral for the extract bias instructions only since all the others are also marked as "are treated as Floating-Point instructions in terms of resource availability.". Unless I misunderstood something about this instr specifically could you remove it here or apply it to each one, which ever you prefer.


================
Comment at: llvm/lib/Target/PowerPC/PPCInstrDFP.td:104-125
+defm DXEX: XForm_26r<59, 354, (outs f8rc:$RST), (ins f8rc:$RB),
+                     "dxex", "$RST, $RB", IIC_FPGeneral, []>;
+defm DXEXQ: XForm_26r<63, 354, (outs f8rc:$RST), (ins fpairrc:$RB),
+                      "dxexq", "$RST, $RB", IIC_FPGeneral, []>;
+defm DIEX: XForm_base_r3xo_r<59, 866, (outs f8rc:$RST),
+                             (ins f8rc:$RA, f8rc:$RB),
+                             "diex", "$RST, $RA, $RB", []>;
----------------
According to isa3.1 section. 5.6.7, only the first four instruction, encoding and decoding, may raise a floating point exception, these remaining ones need to moved outside of the `	} // mayRaiseFPException` brace I think.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D154465/new/

https://reviews.llvm.org/D154465



More information about the llvm-commits mailing list