1 2 # ARMv8 tests to test neon register 3 # lists syntax. 4 .macro ldnstn_reg_list type inst index rep 5 \inst\()1\rep {v0.\type}\index, [x0] 6 .ifb \index 7 .ifb \rep 8 \inst\()1 {v0.\type, v1.\type}\index, [x0] 9 \inst\()1 {v0.\type, v1.\type, v2.\type}\index, [x0] 10 \inst\()1 {v0.\type, v1.\type, v2.\type, v3.\type}\index, [x0] 11 .endif 12 .endif 13 14 \inst\()2\rep {v0.\type, v1.\type}\index, [x0] 15 16 \inst\()3\rep {v0.\type, v1.\type, v2.\type}\index, [x0] 17 18 \inst\()4\rep {v0.\type, v1.\type, v2.\type, v3.\type}\index, [x0] 19 20 .endm 21 22 .text 23 .arch armv8-a 24 25 ldnstn_reg_list type="8B", inst="ld" index="" rep="" 26 ldnstn_reg_list type="8B", inst="st" index="" rep="" 27 28 ldnstn_reg_list type="16B", inst="ld" index="" rep="" 29 ldnstn_reg_list type="16B", inst="st" index="" rep="" 30 31 ldnstn_reg_list type="4H", inst="ld" index="" rep="" 32 ldnstn_reg_list type="4H", inst="st" index="" rep="" 33 34 ldnstn_reg_list type="8H", inst="ld" index="" rep="" 35 ldnstn_reg_list type="8H", inst="st" index="" rep="" 36 37 ldnstn_reg_list type="2S", inst="ld" index="" rep="" 38 ldnstn_reg_list type="2S", inst="st" index="" rep="" 39 40 ldnstn_reg_list type="4S", inst="ld" index="" rep="" 41 ldnstn_reg_list type="4S", inst="st" index="" rep="" 42 43 ldnstn_reg_list type="2D", inst="ld" index="" rep="" 44 ldnstn_reg_list type="2D", inst="st" index="" rep="" 45 46 # vector-element form 47 ldnstn_reg_list type="B", inst="ld" index="[1]" rep="" 48 ldnstn_reg_list type="B", inst="st" index="[1]" rep="" 49 50 ldnstn_reg_list type="B", inst="ld" index="[1]" rep="" 51 ldnstn_reg_list type="B", inst="st" index="[1]" rep="" 52 53 ldnstn_reg_list type="H", inst="ld" index="[1]" rep="" 54 ldnstn_reg_list type="H", inst="st" index="[1]" rep="" 55 56 ldnstn_reg_list type="H", inst="ld" index="[1]" rep="" 57 ldnstn_reg_list type="H", inst="st" index="[1]" rep="" 58 59 ldnstn_reg_list type="S", inst="ld" index="[1]" rep="" 60 ldnstn_reg_list type="S", inst="st" index="[1]" rep="" 61 62 ldnstn_reg_list type="S", inst="ld" index="[1]" rep="" 63 ldnstn_reg_list type="S", inst="st" index="[1]" rep="" 64 65 ldnstn_reg_list type="D", inst="ld" index="[1]" rep="" 66 ldnstn_reg_list type="D", inst="st" index="[1]" rep="" 67 68 # replicate form 69 ldnstn_reg_list type="8B", inst="ld" index="" rep="r" 70 71 ldnstn_reg_list type="16B", inst="ld" index="" rep="r" 72 73 ldnstn_reg_list type="4H", inst="ld" index="" rep="r" 74 75 ldnstn_reg_list type="8H", inst="ld" index="" rep="r" 76 77 ldnstn_reg_list type="2S", inst="ld" index="" rep="r" 78 79 ldnstn_reg_list type="4S", inst="ld" index="" rep="r" 80 81 ldnstn_reg_list type="1D", inst="ld" index="" rep="r" 82 83 ldnstn_reg_list type="2D", inst="ld" index="" rep="r" 84