blob: 0adbd42e06e6bc722e10215d9cf1bfb1bc4bff19 [file] [log] [blame]
.macro fmac_iter_d_n op, d, n
.irp m, 0, 8, 15
vfmal.f16 d\d, s\n, s\m
vfmal.f16 d\n, s\d, s\m[0]
vfmsl.f16 d\d, s\n, s\m
vfmsl.f16 d\n, s\d, s\m[1]
.endr
.endm
.macro fmac_iter_d op, d
.irp n, 2, 15, 30
fmac_iter_d_n \op, \d, \n
.endr
.endm
.macro iter
.irp d, 0, 7, 16, 31
fmac_iter_d \op, \d
.endr
.endm
.macro fmac_q_iter_d_n op, d, n
.irp m, 0, 7
vfmal.f16 q\n, d\d, d\m
vfmal.f16 q\d, d\n, d\m[0]
vfmsl.f16 q\n, d\d, d\m
vfmsl.f16 q\d, d\n, d\m[3]
.endr
.endm
.macro fmac_q_iter_d op, d
.irp n, 2, 3, 13
fmac_q_iter_d_n \op, \d, \n
.endr
.endm
.macro q_iter
.irp d, 0, 1, 6, 15
fmac_q_iter_d \op, \d
.endr
.endm
.text
func:
iter
q_iter