Home | History | Annotate | Download | only in ARM
      1 @ RUN: llvm-mc -mcpu=cortex-a8 -triple thumb-unknown-unknown -show-encoding < %s | FileCheck %s
      2 
      3 .code 16
      4 	vpadd.i8	d1, d5, d11
      5 	vpadd.i16	d13, d2, d12
      6 	vpadd.i32	d14, d1, d13
      7 	vpadd.f32	d19, d16, d14
      8 
      9 @ CHECK: vpadd.i8	d1, d5, d11     @ encoding: [0x05,0xef,0x1b,0x1b]
     10 @ CHECK: vpadd.i16	d13, d2, d12    @ encoding: [0x12,0xef,0x1c,0xdb]
     11 @ CHECK: vpadd.i32	d14, d1, d13    @ encoding: [0x21,0xef,0x1d,0xeb]
     12 @ CHECK: vpadd.f32	d19, d16, d14   @ encoding: [0x40,0xff,0x8e,0x3d]
     13 
     14 
     15 	vpaddl.s8	d7, d10
     16 	vpaddl.s16	d8, d11
     17 	vpaddl.s32	d9, d12
     18 	vpaddl.u8	d0, d13
     19 	vpaddl.u16	d5, d14
     20 	vpaddl.u32	d6, d15
     21 	vpaddl.s8	q4, q7
     22 	vpaddl.s16	q5, q6
     23 	vpaddl.s32	q6, q5
     24 	vpaddl.u8	q7, q4
     25 	vpaddl.u16	q8, q3
     26 	vpaddl.u32	q9, q2
     27 
     28 @ CHECK: vpaddl.s8	d7, d10         @ encoding: [0xb0,0xff,0x0a,0x72]
     29 @ CHECK: vpaddl.s16	d8, d11         @ encoding: [0xb4,0xff,0x0b,0x82]
     30 @ CHECK: vpaddl.s32	d9, d12         @ encoding: [0xb8,0xff,0x0c,0x92]
     31 @ CHECK: vpaddl.u8	d0, d13         @ encoding: [0xb0,0xff,0x8d,0x02]
     32 @ CHECK: vpaddl.u16	d5, d14         @ encoding: [0xb4,0xff,0x8e,0x52]
     33 @ CHECK: vpaddl.u32	d6, d15         @ encoding: [0xb8,0xff,0x8f,0x62]
     34 @ CHECK: vpaddl.s8	q4, q7          @ encoding: [0xb0,0xff,0x4e,0x82]
     35 @ CHECK: vpaddl.s16	q5, q6          @ encoding: [0xb4,0xff,0x4c,0xa2]
     36 @ CHECK: vpaddl.s32	q6, q5          @ encoding: [0xb8,0xff,0x4a,0xc2]
     37 @ CHECK: vpaddl.u8	q7, q4          @ encoding: [0xb0,0xff,0xc8,0xe2]
     38 @ CHECK: vpaddl.u16	q8, q3          @ encoding: [0xf4,0xff,0xc6,0x02]
     39 @ CHECK: vpaddl.u32	q9, q2          @ encoding: [0xf8,0xff,0xc4,0x22]
     40 
     41 
     42 	vpadal.s8	d16, d4
     43 	vpadal.s16	d20, d9
     44 	vpadal.s32	d18, d1
     45 	vpadal.u8	d14, d25
     46 	vpadal.u16	d12, d6
     47 	vpadal.u32	d11, d7
     48 	vpadal.s8	q4, q10
     49 	vpadal.s16	q5, q11
     50 	vpadal.s32	q6, q12
     51 	vpadal.u8	q7, q13
     52 	vpadal.u16	q8, q14
     53 	vpadal.u32	q9, q15
     54 
     55 @ CHECK: vpadal.s8	d16, d4         @ encoding: [0xf0,0xff,0x04,0x06]
     56 @ CHECK: vpadal.s16	d20, d9         @ encoding: [0xf4,0xff,0x09,0x46]
     57 @ CHECK: vpadal.s32	d18, d1         @ encoding: [0xf8,0xff,0x01,0x26]
     58 @ CHECK: vpadal.u8	d14, d25        @ encoding: [0xb0,0xff,0xa9,0xe6]
     59 @ CHECK: vpadal.u16	d12, d6         @ encoding: [0xb4,0xff,0x86,0xc6]
     60 @ CHECK: vpadal.u32	d11, d7         @ encoding: [0xb8,0xff,0x87,0xb6]
     61 @ CHECK: vpadal.s8	q4, q10         @ encoding: [0xb0,0xff,0x64,0x86]
     62 @ CHECK: vpadal.s16	q5, q11         @ encoding: [0xb4,0xff,0x66,0xa6]
     63 @ CHECK: vpadal.s32	q6, q12         @ encoding: [0xb8,0xff,0x68,0xc6]
     64 @ CHECK: vpadal.u8	q7, q13         @ encoding: [0xb0,0xff,0xea,0xe6]
     65 @ CHECK: vpadal.u16	q8, q14         @ encoding: [0xf4,0xff,0xec,0x06]
     66 @ CHECK: vpadal.u32	q9, q15         @ encoding: [0xf8,0xff,0xee,0x26]
     67 
     68 
     69 	vpmin.s8	d16, d29, d10
     70 	vpmin.s16	d17, d28, d11
     71 	vpmin.s32	d18, d27, d12
     72 	vpmin.u8	d19, d26, d13
     73 	vpmin.u16	d20, d25, d14
     74 	vpmin.u32	d21, d24, d15
     75 	vpmin.f32	d22, d23, d16
     76 
     77 @ CHECK: vpmin.s8	d16, d29, d10   @ encoding: [0x4d,0xef,0x9a,0x0a]
     78 @ CHECK: vpmin.s16	d17, d28, d11   @ encoding: [0x5c,0xef,0x9b,0x1a]
     79 @ CHECK: vpmin.s32	d18, d27, d12   @ encoding: [0x6b,0xef,0x9c,0x2a]
     80 @ CHECK: vpmin.u8	d19, d26, d13   @ encoding: [0x4a,0xff,0x9d,0x3a]
     81 @ CHECK: vpmin.u16	d20, d25, d14   @ encoding: [0x59,0xff,0x9e,0x4a]
     82 @ CHECK: vpmin.u32	d21, d24, d15   @ encoding: [0x68,0xff,0x9f,0x5a]
     83 @ CHECK: vpmin.f32	d22, d23, d16   @ encoding: [0x67,0xff,0xa0,0x6f]
     84 
     85 
     86 	vpmax.s8	d3, d20, d17
     87 	vpmax.s16	d4, d21, d16
     88 	vpmax.s32	d5, d22, d15
     89 	vpmax.u8	d6, d23, d14
     90 	vpmax.u16	d7, d24, d13
     91 	vpmax.u32	d8, d25, d12
     92 	vpmax.f32	d9, d26, d11
     93 
     94 @ CHECK: vpmax.s8	d3, d20, d17    @ encoding: [0x04,0xef,0xa1,0x3a]
     95 @ CHECK: vpmax.s16	d4, d21, d16    @ encoding: [0x15,0xef,0xa0,0x4a]
     96 @ CHECK: vpmax.s32	d5, d22, d15    @ encoding: [0x26,0xef,0x8f,0x5a]
     97 @ CHECK: vpmax.u8	d6, d23, d14    @ encoding: [0x07,0xff,0x8e,0x6a]
     98 @ CHECK: vpmax.u16	d7, d24, d13    @ encoding: [0x18,0xff,0x8d,0x7a]
     99 @ CHECK: vpmax.u32	d8, d25, d12    @ encoding: [0x29,0xff,0x8c,0x8a]
    100 @ CHECK: vpmax.f32	d9, d26, d11    @ encoding: [0x0a,0xff,0x8b,0x9f]
    101