1*585a86b1SNiccolò Izzo/* 2*585a86b1SNiccolò Izzo * Purpose: test example, verify the soundness of the vrmaxh operation. 3*585a86b1SNiccolò Izzo * 4*585a86b1SNiccolò Izzo * The maximum between 0x0002000300010005 and 0x0003000200020007 is 5*585a86b1SNiccolò Izzo * 0x0003000300020007. 6*585a86b1SNiccolò Izzo * 7*585a86b1SNiccolò Izzo * input: r1 = 0x00010003 r0 = 0x00010005 r3 = 0x00030002 r2 = 0x00020007 8*585a86b1SNiccolò Izzo * output: r1 = 0x00030003 r0 = 0x00020007 9*585a86b1SNiccolò Izzo */ 10*585a86b1SNiccolò Izzo 11*585a86b1SNiccolò Izzo .text 12*585a86b1SNiccolò Izzo .globl _start 13*585a86b1SNiccolò Izzo 14*585a86b1SNiccolò Izzo_start: 15*585a86b1SNiccolò Izzo { 16*585a86b1SNiccolò Izzo r0 = #65541 17*585a86b1SNiccolò Izzo r1 = #65539 18*585a86b1SNiccolò Izzo } 19*585a86b1SNiccolò Izzo { 20*585a86b1SNiccolò Izzo r2 = #131079 21*585a86b1SNiccolò Izzo r3 = #196610 22*585a86b1SNiccolò Izzo } 23*585a86b1SNiccolò Izzo { 24*585a86b1SNiccolò Izzo r1:0 = vmaxh(r1:0, r3:2) 25*585a86b1SNiccolò Izzo } 26*585a86b1SNiccolò Izzo { 27*585a86b1SNiccolò Izzo p0 = cmp.eq(r0, #131079); if (p0.new) jump:t test2 28*585a86b1SNiccolò Izzo jump fail 29*585a86b1SNiccolò Izzo } 30*585a86b1SNiccolò Izzo 31*585a86b1SNiccolò Izzotest2: 32*585a86b1SNiccolò Izzo { 33*585a86b1SNiccolò Izzo p0 = cmp.eq(r1, #196611); if (p0.new) jump:t pass 34*585a86b1SNiccolò Izzo jump fail 35*585a86b1SNiccolò Izzo } 36