add debug printfs
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Fri, 26 Oct 2018 05:46:27 +0000 (06:46 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Fri, 26 Oct 2018 05:46:27 +0000 (06:46 +0100)
riscv/sv_insn_redirect.cc

index 3417e69d2f8a1dafacc7049f06c197fb206794f0..6e38eaff2da7ee1be6e771f1fc5614aa8df0b076 100644 (file)
@@ -105,6 +105,8 @@ void (sv_proc_t::WRITE_REG)(reg_spec_t const& spec, sv_reg_t const& value)
         offs = *spec.offset;
         shift = offs % nbytes;
         offs /= nbytes;
+        fprintf(stderr, "writereg spec %ld bitwidth %d offs %d shift %d\n",
+                        spec.reg, bitwidth, offs, shift);
         reg += offs;
     }
     if (xlen != bitwidth)
@@ -114,7 +116,7 @@ void (sv_proc_t::WRITE_REG)(reg_spec_t const& spec, sv_reg_t const& value)
         wval = wval << (shift*bitwidth); // gets element within the reg-block
         uint64_t ndata = data & (uint64_t)(~mask); // masks off the right bits
         wval |= ndata;
-        fprintf(stderr, "writereg %lx bitwidth %d offs %d shift %d %lx " \
+        fprintf(stderr, "writereg %ld bitwidth %d offs %d shift %d %lx " \
                         " %lx %lx %lx\n",
                         spec.reg, bitwidth, offs, shift, data,
                         ndata, mask, wval);
@@ -343,6 +345,8 @@ sv_reg_t sv_proc_t::rv_add(sv_reg_t const & lhs, sv_reg_t const & rhs)
 {
     uint8_t bitwidth = _insn->src_bitwidth;
     if (bitwidth == xlen) {
+        //fprintf(stderr, "add result %lx %lx %lx\n",
+        //        (uint64_t)lhs, (uint64_t)rhs, (uint64_t)(lhs + rhs));
         return lhs + rhs;
     }
     uint64_t vlhs = 0;
@@ -364,6 +368,7 @@ sv_reg_t sv_proc_t::rv_add(sv_reg_t const & lhs, sv_reg_t const & rhs)
         result = zext_bwid(result, bitwidth);
     }
     uint8_t reswidth = maxelwidth(lhs.get_elwidth(), rhs.get_elwidth());
+    //fprintf(stderr, "add result %ld\n", result);
     return sv_reg_t(result, xlen, reswidth); // XXX TODO: bitwidth
 }