pysvp64db: fix traversal
[openpower-isa.git] / openpower / isa / msubrs.mdwn
1 <!-- SVP64 Butterfly DCT Instructions here described are based on -->
2
3 <!-- PLEASE NOTE THESE ARE UNAPPROVED AND DRAFT, NOT SUBMITTED TO OPF ISA WG -->
4
5 # [DRAFT] Integer Butterfly Multiply Add and Accumulate FFT/DCT
6
7 A-Form
8
9 * msubrs RT,RA,RB,SH
10
11 Pseudo-code:
12
13 n <- SH
14 prod <- MULS(RB, RA)
15 if n = 0 then
16 prod_lo <- prod[XLEN:(XLEN*2) - 1]
17 RT <- (RT) - prod_lo
18 else
19 res[0:XLEN*2-1] <- (EXTSXL((RT)[0], 1) || (RT)) - prod
20 round <- [0]*XLEN*2
21 round[XLEN*2 - n] <- 1
22 res <- res + round
23 RT <- res[XLEN - n:XLEN*2 - n -1]
24
25 Special Registers Altered:
26
27 None