From 98356cbd10a601b89af4cdcc69bf61e045ce63be Mon Sep 17 00:00:00 2001 From: Olof Astrand Date: Fri, 4 Dec 2020 17:32:07 +0100 Subject: [PATCH] slli high bit correction --- data/languages/xtensaInstructions.sinc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/data/languages/xtensaInstructions.sinc b/data/languages/xtensaInstructions.sinc index 7885779..3f20661 100644 --- a/data/languages/xtensaInstructions.sinc +++ b/data/languages/xtensaInstructions.sinc @@ -1106,11 +1106,12 @@ macro extract_bit(val, bit, result) { } # SLLI - Shift Left Logical Immediate, pg. 525. -:slli ar, as, u5_4.7_20 is u3_21.23 = 0 & u5_4.7_20 & op1 = 0b0001 & ar & as & op0 = 0 { - local sa:1 = 32 - u5_4.7_20; +:slli ar, as, u5_4.7_20 is u3_21.23 = 0 & u1_20 & u5_4.7_20 & op1 = 0b0001 & ar & as & op0 = 0 { + local sa:1 = 32 - 16 * u1_20 - u5_4.7_20; ar = as << sa; } + # SRA - Shift Right Arithmetic, pg. 526. :sra ar, at is op2 = 0b1011 & op1 = 0b0001 & ar & as = 0 & at & op0 = 0 { ar = at s>> sar;