Browse Source

Zero-extend instructions in spike-dasm

...since we no longer rely on their being sign-extended.
pull/1027/head
Andrew Waterman 4 years ago
parent
commit
d2020b3256
  1. 6
      spike_dasm/spike-dasm.cc

6
spike_dasm/spike-dasm.cc

@ -50,14 +50,10 @@ int main(int argc, char** argv)
continue;
char* endp;
int64_t bits = strtoull(&s[pos], &endp, 16);
insn_bits_t bits = strtoull(&s[pos], &endp, 16);
if (*endp != ')')
continue;
size_t nbits = 4 * (endp - &s[pos]);
if (nbits < 64)
bits = bits << (64 - nbits) >> (64 - nbits);
string dis = disassembler->disassemble(bits);
s = s.substr(0, start) + dis + s.substr(endp - &s[0] + 1);
pos = start + dis.length();

Loading…
Cancel
Save