blob: be7a75ad885d97b3da94780c2551987021bb7121 [file] [log] [blame]
# sh testcase for ftrv.s $mtrxg, $fvh, $fvf -*- Asm -*-
# mach: all
# as: -isa=shmedia
# ld: -m shelf64
.include "media/testutils.inc"
.macro _load val, fpreg
# This macro clobbers r0.
movi \val, r0
fmov.ls r0, \fpreg
float.ls \fpreg, \fpreg
.endm
start
init:
pta wrong, tr0
_load 1, fr0
_load 2, fr4
_load 3, fr8
_load 4, fr12
_load 5, fr1
_load 6, fr5
_load 7, fr9
_load 8, fr13
_load 9, fr2
_load 10, fr6
_load 11, fr10
_load 12, fr14
_load 13, fr3
_load 14, fr7
_load 15, fr11
_load 16, fr15
_load 1, fr16
_load 2, fr17
_load 3, fr18
_load 4, fr19
ftrvs:
ftrv.s mtrx0, fv16, fv20
check:
_load 30, fr0
_load 70, fr1
_load 110, fr2
_load 150, fr3
fcmpeq.s fr0, fr20, r0
bnei r0, 1, tr0
fcmpeq.s fr1, fr21, r0
bnei r0, 1, tr0
fcmpeq.s fr2, fr22, r0
bnei r0, 1, tr0
fcmpeq.s fr3, fr23, r0
bnei r0, 1, tr0
okay:
pass
wrong:
fail