(no commit message)
[libreriscv.git] / simple_v_extension / get_pred_value.mdwn
1 def get_pred_val(bool is_fp_op, int reg):
2 tb = int_reg if is_fp_op else fp_reg
3 if (!tb[reg].enabled):
4 return ~0x0, False // all enabled; no zeroing
5 tb = int_pred if is_fp_op else fp_pred
6 if (!tb[reg].enabled):
7 return ~0x0, False // all enabled; no zeroing
8 predidx = tb[reg].predidx // redirection occurs HERE
9 predicate = intreg[predidx] // actual predicate HERE
10 if (tb[reg].inv):
11 predicate = ~predicate // invert ALL bits
12 return predicate, tb[reg].zero
13