Home | History | Annotate | Download | only in arm
      1 @ test omitted optional arguments
      2 
      3 	.text
      4 	.arm
      5 	.syntax unified
      6 
      7 	vabd.u8 q1,q3
      8 	vhadd.s32 q14, q3
      9 	vrhadd.s32 q1,q2
     10 	vhsub.s32 q5,q7
     11 	vshl.u16 q3,q4
     12 	vqshl.u32 q5,q6
     13 	vand.64 q7,q8
     14 	veor.64 q7,q8
     15 	vceq.i16 q5,#0
     16 	vceq.i16 q5,q5
     17 	vclt.s16 q5,#0
     18 	vabs.s16 q5,q6
     19 	vneg.s16 d7,d8
     20 	vabs.f d7,d8
     21 	vneg.f q9,q10
     22 	vpmax.s32 d1,d3
     23 	vpmin.s32 d5,d7
     24 	vpmax.f32 d1,d3
     25 	vpmin.f32 d5,d7
     26 	vqdmulh.s16 q1,q3
     27 	vqrdmulh.s32 d5,d7
     28 	vqdmulh.s16 q1,d5[3]
     29 	vqadd.s16 q1,q3
     30 	vqadd.s32 d5,d7
     31 	vmla.i32 q1,q2
     32 	vpadd.i16 d3,d4
     33 	vmls.s32 q3,q4
     34 	vacge.f q1,q2
     35 	vacgt.f q3,q4
     36 	vacle.f q5,q6
     37 	vaclt.f q7,q8
     38 	vcge.u32 q7,q8
     39 	vcgt.u32 q7,q8
     40 	vcle.u32 q7,q8
     41 	vclt.u32 q7,q8
     42 	vaddw.u32 q1,d2
     43 	vsubw.s32 q3,d4
     44 	vtst.i32 q2,q3
     45 	vrecps.f d1,d2
     46 	vshr.s16 q1,#4
     47         vrshr.s8 q2,#5
     48 	vsra.u16 q3,#6
     49         vrsra.u16 q4,#6
     50 	vsli.16 q2,#5
     51 	vqshlu.s64 d15,#63
     52 	vext.8 d5,d6,#3
     53 
     54 @ Also test three-argument forms without omitted arguments
     55 
     56 	vabd.u8 q1,q2,q3
     57 	vhadd.s32 q14,q9,q3
     58 	vrhadd.s32 q1,q5,q2
     59 	vhsub.s32 q5,q8,q7
     60 	vshl.u16 q3,q4,q5
     61 	vqshl.u32 q5,q6,q1
     62 	vand.64 q7,q8,q6
     63 	veor.64 q7,q8,q6
     64 	vceq.i16 q5,q3,#0
     65 	vceq.i16 q5,q3,q5
     66 	vclt.s16 q5,q3,#0
     67 	vpmax.s32 d1,d3,d16
     68 	vpmin.s32 d5,d7,d20
     69 	vpmax.f32 d1,d3,d7
     70 	vpmin.f32 d5,d12,d7
     71 	vqdmulh.s16 q1,q3,q8
     72 	vqrdmulh.s32 d5,d7,d9
     73 	vqdmulh.s16 q1,q6,d5[3]
     74 	vqadd.s16 q1,q11,q3
     75 	vqadd.s32 d5,d7,d31
     76 	vmla.i32 q1,q2,q9
     77 	vpadd.i16 d3,d26,d4
     78 	vmls.s32 q3,q4,q5
     79 	vacge.f q1,q4,q2
     80 	vacgt.f q3,q1,q4
     81 	vacle.f q5,q9,q6
     82 	vaclt.f q7,q1,q8
     83 	vcge.u32 q7,q8,q3
     84 	vcgt.u32 q7,q8,q3
     85 	vcle.u32 q7,q8,q3
     86 	vclt.u32 q7,q8,q3
     87 	vaddw.u32 q1,q5,d2
     88 	vsubw.s32 q3,q1,d4
     89 	vtst.i32 q2,q11,q3
     90 	vrecps.f d1,d30,d2
     91 	vshr.s16 q1,q13,#4
     92         vrshr.s8 q2,q9,#5
     93 	vsra.u16 q3,q1,#6
     94         vrsra.u16 q15,q4,#6
     95 	vsli.16 q2,q3,#5
     96 	vqshlu.s64 d15,d23,#63
     97 	vext.8 d5,d18,d6,#3
     98 
     99 @ Also test VMOV with omitted suffix:
    100 
    101 	vmov d0[0], r0
    102 	vmov r0, d0[0]
    103 
    104 @ PR 11136 - this used to crash the assembler.
    105 	vmul.f32   q0,q1,q2
    106