From: Luke Kenneth Casson Leighton Date: Mon, 4 Jun 2018 01:55:46 +0000 (+0100) Subject: clarify X-Git-Tag: convert-csv-opcode-to-binary~5297 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4da25184fdc8fee5f7d5ba637200aef87e340034;p=libreriscv.git clarify --- diff --git a/simple_v_extension.mdwn b/simple_v_extension.mdwn index 57ef9ca68..8253d3c4b 100644 --- a/simple_v_extension.mdwn +++ b/simple_v_extension.mdwn @@ -426,20 +426,12 @@ equivalent state): struct pred int_pred_reg[32]; for (i = 0; i < 16; i++) + tb = int_pred_reg if CSRpred[i].type == 0 else fp_pred_reg; idx = CSRpred[i].regidx - predidx = CSRpred[i].predidx - zero = CSRpred[i].zero - inv = CSRpred[i].inv - if CSRpred[i].type == 0: # integer - int_pred_reg[idx].zero = zero - int_pred_reg[idx].inv = inv - int_pred_reg[idx].predidx = predidx - int_pred_reg[idx].enabled = true - else: - fp_pred_reg[idx].zero = zero - fp_pred_reg[idx].inv = inv - fp_pred_reg[idx].predidx = predidx - fp_pred_reg[idx].enabled = true + tb[idx].zero = CSRpred[i].zero + tb[idx].inv = CSRpred[i].inv + tb[idx].predidx = CSRpred[i].predidx + tb[idx].enabled = true So when an operation is to be predicated, it is the internal state that is used. In Section 6.4.2 of Hwacha's Manual (EECS-2015-262) the following