From: Sandipan Das Date: Sat, 6 Feb 2021 11:48:12 +0000 (+0530) Subject: arch-power: Add doubleword modulo instructions X-Git-Tag: develop-gem5-snapshot~41 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a257d6eb51baa10be386af09e707d7d179ffb456;p=gem5.git arch-power: Add doubleword modulo instructions This adds the following instructions. * Modulo Signed Doubleword (modsd) * Modulo Unsigned Doubleword (modud) Change-Id: Ic7bcb85869ccedf5c95aadfe925c85b3b1155031 Signed-off-by: Sandipan Das --- diff --git a/src/arch/power/isa/decoder.isa b/src/arch/power/isa/decoder.isa index 6c8cba9cd..06636a2f8 100644 --- a/src/arch/power/isa/decoder.isa +++ b/src/arch/power/isa/decoder.isa @@ -413,6 +413,26 @@ decode PO default Unknown::unknown() { Rt = 0; } }}); + + 777: modsd({{ + int64_t src1 = Ra_sd; + int64_t src2 = Rb_sd; + if ((src1 != INT64_MIN || src2 != -1) && src2 != 0) { + Rt = src1 % src2; + } else { + Rt = 0; + } + }}); + + 265: modud({{ + uint64_t src1 = Ra; + uint64_t src2 = Rb; + if (src2 != 0) { + Rt = src1 % src2; + } else { + Rt = 0; + } + }}); } format IntOp {