diff options
author | Chih-Min Chao <chihmin.chao@sifive.com> | 2020-05-21 21:29:43 -0700 |
---|---|---|
committer | Chih-Min Chao <chihmin.chao@sifive.com> | 2020-05-22 00:19:53 -0700 |
commit | 316ae3888dae19bbb27d4dbd719d1bc0fb39a9e0 (patch) | |
tree | 00fda0ae87b08c02db27595cc8d9f3725a914568 /riscv/execute.cc | |
parent | 68f33575886a491784b4bf46a3d0b0a249b9809d (diff) | |
download | spike-316ae3888dae19bbb27d4dbd719d1bc0fb39a9e0.zip spike-316ae3888dae19bbb27d4dbd719d1bc0fb39a9e0.tar.gz spike-316ae3888dae19bbb27d4dbd719d1bc0fb39a9e0.tar.bz2 |
rvv: remove remove vlmul
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
Diffstat (limited to 'riscv/execute.cc')
-rw-r--r-- | riscv/execute.cc | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/riscv/execute.cc b/riscv/execute.cc index 5cd29b7..2ed7546 100644 --- a/riscv/execute.cc +++ b/riscv/execute.cc @@ -107,7 +107,10 @@ static void commit_log_print_insn(processor_t *p, reg_t pc, insn_t insn) } if (!show_vec && (is_vreg || is_vec)) { - fprintf(log_file, " e%ld m%ld l%ld", p->VU.vsew, p->VU.vlmul, p->VU.vl); + if (p->VU.vflmul < 0) + fprintf(log_file, " e%ld mf%ld l%ld", p->VU.vsew, (reg_t)(1.0/p->VU.vflmul), p->VU.vl); + else + fprintf(log_file, " e%ld m%ld l%ld", p->VU.vsew, (reg_t)p->VU.vflmul, p->VU.vl); show_vec = true; } @@ -253,10 +256,9 @@ void processor_t::step(size_t n) #if 1 if (debug && !state.serialized) { prev_reg_state_t *saved = prev_state; - float vlmul = VU.fractional_lmul? VU.vflmul : VU.vlmul; if (saved->VU.setvl_count != VU.setvl_count) { fprintf(stderr, "vconfig <- sew=%lu vlmul=%.3f vlmax=%lu vl=%lu vta=%ld vma=%ld\n", - VU.vsew, vlmul, VU.vlmax, VU.vl, VU.vta, VU.vma); + VU.vsew, VU.vflmul, VU.vlmax, VU.vl, VU.vta, VU.vma); saved->VU.setvl_count = VU.setvl_count; } for (int i=0; i<NXPR; ++i) { @@ -283,7 +285,7 @@ void processor_t::step(size_t n) for (reg_t i=0; i<NVPR; ++i) { if (!VU.reg_referenced[i]) continue; fprintf(stderr, "vconfig <- sew=%lu vlmul=%.3f eew=%lu emul=%.3f vlmax=%lu vl=%lu\n", - VU.vsew, vlmul, VU.veew, VU.vemul, VU.vlmax, VU.vl); + VU.vsew, VU.vflmul, VU.veew, VU.vemul, VU.vlmax, VU.vl); for (reg_t j=0; j<VU.VLEN/32; ++j) { uint32_t &old = saved->VU.elt<uint32_t>(i, j); uint32_t now = VU.elt<uint32_t>(i, j); |