fadd.s
Single-precision floating-point addition
This instruction is defined by:
Synopsis
Do the single-precision floating-point addition of fs1 and fs2 and store the result in fd. rm is the dynamic Rounding Mode.
Decode Variables
Bits<5> fs2 = $encoding[24:20];
Bits<5> fs1 = $encoding[19:15];
Bits<3> rm = $encoding[14:12];
Bits<5> fd = $encoding[11:7];
Execution
-
Pruned, XLEN == 64
-
Original
%%LINK%func;check_f_ok;check_f_ok%%($encoding);
RoundingMode mode = %%LINK%func;rm_to_mode;rm_to_mode%%(rm, $encoding);
X[fd] = %%LINK%func;f32_add;f32_add%%(X[fs1], X[fs2], mode);
%%LINK%func;check_f_ok;check_f_ok%%($encoding);
RoundingMode mode = %%LINK%func;rm_to_mode;rm_to_mode%%(rm, $encoding);
X[fd] = %%LINK%func;f32_add;f32_add%%(X[fs1], X[fs2], mode);