238,239c238,239
< int32_t resTemp, val2 = Rs2_or_imm13.sdw;
< int32_t overflow = 0, underflow = 0;
---
> int64_t val2 = Rs2_or_imm13.sdw<31:0>;
> bool overflow = false, underflow = false;
243,248c243,247
< Rd = resTemp = (int64_t)((Y << 32) | Rs1.sdw<31:0>) / val2;
< overflow = (resTemp<63:31> != 0);
< underflow = (resTemp<63:> && resTemp<62:31> != 0xFFFFFFFF);
< if(overflow) Rd = resTemp = 0x7FFFFFFF;
< else if(underflow) resTemp = Rd = 0xFFFFFFFF80000000ULL;
< else Rd = resTemp;
---
> Rd = (int64_t)((Y << 32) | Rs1.sdw<31:0>) / val2;
> overflow = (Rd<63:31> != 0);
> underflow = (Rd<63:> && Rd<62:31> != 0xFFFFFFFF);
> if(overflow) Rd = 0x7FFFFFFF;
> else if(underflow) Rd = 0xFFFFFFFF80000000ULL;
274,275c273,274
< int64_t resTemp, val2 = Rs2_or_imm13;
< Rd = resTemp = Rs1 + val2;
---
> int64_t val2 = Rs2_or_imm13;
> Rd = Rs1 + val2;
282c281
< {{Rs1<63:> == val2<63:> && val2<63:> != resTemp<63:>}}
---
> {{Rs1<63:> == val2<63:> && val2<63:> != Rd<63:>}}