1*97ec5308Schristos# sh testcase for ftrv.s $mtrxg, $fvh, $fvf -*- Asm -*- 2*97ec5308Schristos# mach: all 3*97ec5308Schristos# as: -isa=shmedia 4*97ec5308Schristos# ld: -m shelf64 5*97ec5308Schristos 6*97ec5308Schristos .include "media/testutils.inc" 7*97ec5308Schristos 8*97ec5308Schristos .macro _load val, fpreg 9*97ec5308Schristos # This macro clobbers r0. 10*97ec5308Schristos movi \val, r0 11*97ec5308Schristos fmov.ls r0, \fpreg 12*97ec5308Schristos float.ls \fpreg, \fpreg 13*97ec5308Schristos .endm 14*97ec5308Schristos 15*97ec5308Schristos start 16*97ec5308Schristos 17*97ec5308Schristosinit: 18*97ec5308Schristos pta wrong, tr0 19*97ec5308Schristos 20*97ec5308Schristos _load 1, fr0 21*97ec5308Schristos _load 2, fr4 22*97ec5308Schristos _load 3, fr8 23*97ec5308Schristos _load 4, fr12 24*97ec5308Schristos _load 5, fr1 25*97ec5308Schristos _load 6, fr5 26*97ec5308Schristos _load 7, fr9 27*97ec5308Schristos _load 8, fr13 28*97ec5308Schristos _load 9, fr2 29*97ec5308Schristos _load 10, fr6 30*97ec5308Schristos _load 11, fr10 31*97ec5308Schristos _load 12, fr14 32*97ec5308Schristos _load 13, fr3 33*97ec5308Schristos _load 14, fr7 34*97ec5308Schristos _load 15, fr11 35*97ec5308Schristos _load 16, fr15 36*97ec5308Schristos 37*97ec5308Schristos _load 1, fr16 38*97ec5308Schristos _load 2, fr17 39*97ec5308Schristos _load 3, fr18 40*97ec5308Schristos _load 4, fr19 41*97ec5308Schristos 42*97ec5308Schristosftrvs: 43*97ec5308Schristos ftrv.s mtrx0, fv16, fv20 44*97ec5308Schristos 45*97ec5308Schristoscheck: 46*97ec5308Schristos _load 30, fr0 47*97ec5308Schristos _load 70, fr1 48*97ec5308Schristos _load 110, fr2 49*97ec5308Schristos _load 150, fr3 50*97ec5308Schristos 51*97ec5308Schristos fcmpeq.s fr0, fr20, r0 52*97ec5308Schristos bnei r0, 1, tr0 53*97ec5308Schristos 54*97ec5308Schristos fcmpeq.s fr1, fr21, r0 55*97ec5308Schristos bnei r0, 1, tr0 56*97ec5308Schristos 57*97ec5308Schristos fcmpeq.s fr2, fr22, r0 58*97ec5308Schristos bnei r0, 1, tr0 59*97ec5308Schristos 60*97ec5308Schristos fcmpeq.s fr3, fr23, r0 61*97ec5308Schristos bnei r0, 1, tr0 62*97ec5308Schristos 63*97ec5308Schristosokay: 64*97ec5308Schristos pass 65*97ec5308Schristos 66*97ec5308Schristoswrong: 67*97ec5308Schristos fail 68