1# Intel(r) Wireless MMX(tm) technology testcase for WCMPEQ 2# mach: xscale 3# as: -mcpu=xscale+iwmmxt 4 5 .include "testutils.inc" 6 7 start 8 9 .global wcmpeq 10wcmpeq: 11 # Enable access to CoProcessors 0 & 1 before 12 # we attempt these instructions. 13 14 mvi_h_gr r1, 3 15 mcr p15, 0, r1, cr15, cr1, 0 16 17 # Test Byte Wide Compare Equal To 18 19 mvi_h_gr r0, 0x12345678 20 mvi_h_gr r1, 0x9abcde00 21 mvi_h_gr r2, 0x11111111 22 mvi_h_gr r3, 0x9abcde00 23 mvi_h_gr r4, 0 24 mvi_h_gr r5, 0 25 26 tmcrr wr0, r0, r1 27 tmcrr wr1, r2, r3 28 tmcrr wr2, r4, r5 29 30 wcmpeqb wr2, wr0, wr1 31 32 tmrrc r0, r1, wr0 33 tmrrc r2, r3, wr1 34 tmrrc r4, r5, wr2 35 36 test_h_gr r0, 0x12345678 37 test_h_gr r1, 0x9abcde00 38 test_h_gr r2, 0x11111111 39 test_h_gr r3, 0x9abcde00 40 test_h_gr r4, 0x00000000 41 test_h_gr r5, 0xffffffff 42 43 # Test Half Word Wide Compare Equal To 44 45 mvi_h_gr r0, 0x12345678 46 mvi_h_gr r1, 0x9abcde00 47 mvi_h_gr r2, 0x11111111 48 mvi_h_gr r3, 0x9abcde00 49 mvi_h_gr r4, 0 50 mvi_h_gr r5, 0 51 52 tmcrr wr0, r0, r1 53 tmcrr wr1, r2, r3 54 tmcrr wr2, r4, r5 55 56 wcmpeqh wr2, wr0, wr1 57 58 tmrrc r0, r1, wr0 59 tmrrc r2, r3, wr1 60 tmrrc r4, r5, wr2 61 62 test_h_gr r0, 0x12345678 63 test_h_gr r1, 0x9abcde00 64 test_h_gr r2, 0x11111111 65 test_h_gr r3, 0x9abcde00 66 test_h_gr r4, 0x00000000 67 test_h_gr r5, 0xffffffff 68 69 # Test Word Wide Compare Equal To 70 71 mvi_h_gr r0, 0x12345678 72 mvi_h_gr r1, 0x9abcde00 73 mvi_h_gr r2, 0x11111111 74 mvi_h_gr r3, 0x9abcde00 75 mvi_h_gr r4, 0 76 mvi_h_gr r5, 0 77 78 tmcrr wr0, r0, r1 79 tmcrr wr1, r2, r3 80 tmcrr wr2, r4, r5 81 82 wcmpeqw wr2, wr0, wr1 83 84 tmrrc r0, r1, wr0 85 tmrrc r2, r3, wr1 86 tmrrc r4, r5, wr2 87 88 test_h_gr r0, 0x12345678 89 test_h_gr r1, 0x9abcde00 90 test_h_gr r2, 0x11111111 91 test_h_gr r3, 0x9abcde00 92 test_h_gr r4, 0x00000000 93 test_h_gr r5, 0xffffffff 94 95 pass 96