@ RUN: llvm-mc -mcpu=cortex-a8 -triple arm-unknown-unknown -show-encoding < %s \ @ RUN: | FileCheck %s vand d16, d17, d16 vand q8, q8, q9 @ CHECK: vand d16, d17, d16 @ encoding: [0xb0,0x01,0x41,0xf2] @ CHECK: vand q8, q8, q9 @ encoding: [0xf2,0x01,0x40,0xf2] veor d16, d17, d16 veor q8, q8, q9 @ CHECK: veor d16, d17, d16 @ encoding: [0xb0,0x01,0x41,0xf3] @ CHECK: veor q8, q8, q9 @ encoding: [0xf2,0x01,0x40,0xf3] vorr d16, d17, d16 vorr q8, q8, q9 @ CHECK: vorr d16, d17, d16 @ encoding: [0xb0,0x01,0x61,0xf2] @ CHECK: vorr q8, q8, q9 @ encoding: [0xf2,0x01,0x60,0xf2] vorr.i32 d16, #0x1000000 vorr.i32 q8, #0x1000000 vorr.i32 q8, #0x0 @ CHECK: vorr.i32 d16, #0x1000000 @ encoding: [0x11,0x07,0xc0,0xf2] @ CHECK: vorr.i32 q8, #0x1000000 @ encoding: [0x51,0x07,0xc0,0xf2] @ CHECK: vorr.i32 q8, #0x0 @ encoding: [0x50,0x01,0xc0,0xf2] vbic d16, d17, d16 vbic q8, q8, q9 vbic.i32 d16, #0xFF000000 vbic.i32 q8, #0xFF000000 vbic q10, q11 vbic d9, d1 @ CHECK: vbic d16, d17, d16 @ encoding: [0xb0,0x01,0x51,0xf2] @ CHECK: vbic q8, q8, q9 @ encoding: [0xf2,0x01,0x50,0xf2] @ CHECK: vbic.i32 d16, #0xff000000 @ encoding: [0x3f,0x07,0xc7,0xf3] @ CHECK: vbic.i32 q8, #0xff000000 @ encoding: [0x7f,0x07,0xc7,0xf3] @ CHECK: vbic q10, q10, q11 @ encoding: [0xf6,0x41,0x54,0xf2] @ CHECK: vbic d9, d9, d1 @ encoding: [0x11,0x91,0x19,0xf2] vorn d16, d17, d16 vorn q8, q8, q9 @ CHECK: vorn d16, d17, d16 @ encoding: [0xb0,0x01,0x71,0xf2] @ CHECK: vorn q8, q8, q9 @ encoding: [0xf2,0x01,0x70,0xf2] vmvn d16, d16 vmvn q8, q8 @ CHECK: vmvn d16, d16 @ encoding: [0xa0,0x05,0xf0,0xf3] @ CHECK: vmvn q8, q8 @ encoding: [0xe0,0x05,0xf0,0xf3] vbsl d18, d17, d16 vbsl q8, q10, q9 @ CHECK: vbsl d18, d17, d16 @ encoding: [0xb0,0x21,0x51,0xf3] @ CHECK: vbsl q8, q10, q9 @ encoding: [0xf2,0x01,0x54,0xf3] @ Size suffices are optional. veor q4, q7, q3 veor.8 q4, q7, q3 veor.16 q4, q7, q3 veor.32 q4, q7, q3 veor.64 q4, q7, q3 veor.i8 q4, q7, q3 veor.i16 q4, q7, q3 veor.i32 q4, q7, q3 veor.i64 q4, q7, q3 veor.s8 q4, q7, q3 veor.s16 q4, q7, q3 veor.s32 q4, q7, q3 veor.s64 q4, q7, q3 veor.u8 q4, q7, q3 veor.u16 q4, q7, q3 veor.u32 q4, q7, q3 veor.u64 q4, q7, q3 veor.p8 q4, q7, q3 veor.p16 q4, q7, q3 veor.f32 q4, q7, q3 veor.f64 q4, q7, q3 veor.f q4, q7, q3 veor.d q4, q7, q3 @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] @ CHECK: veor q4, q7, q3 @ encoding: [0x56,0x81,0x0e,0xf3] vand d4, d7, d3 vand.8 d4, d7, d3 vand.16 d4, d7, d3 vand.32 d4, d7, d3 vand.64 d4, d7, d3 vand.i8 d4, d7, d3 vand.i16 d4, d7, d3 vand.i32 d4, d7, d3 vand.i64 d4, d7, d3 vand.s8 d4, d7, d3 vand.s16 d4, d7, d3 vand.s32 d4, d7, d3 vand.s64 d4, d7, d3 vand.u8 d4, d7, d3 vand.u16 d4, d7, d3 vand.u32 d4, d7, d3 vand.u64 d4, d7, d3 vand.p8 d4, d7, d3 vand.p16 d4, d7, d3 vand.f32 d4, d7, d3 vand.f64 d4, d7, d3 vand.f d4, d7, d3 vand.d d4, d7, d3 @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] @ CHECK: vand d4, d7, d3 @ encoding: [0x13,0x41,0x07,0xf2] vorr d4, d7, d3 vorr.8 d4, d7, d3 vorr.16 d4, d7, d3 vorr.32 d4, d7, d3 vorr.64 d4, d7, d3 vorr.i8 d4, d7, d3 vorr.i16 d4, d7, d3 vorr.i32 d4, d7, d3 vorr.i64 d4, d7, d3 vorr.s8 d4, d7, d3 vorr.s16 d4, d7, d3 vorr.s32 q4, q7, q3 vorr.s64 q4, q7, q3 vorr.u8 q4, q7, q3 vorr.u16 q4, q7, q3 vorr.u32 q4, q7, q3 vorr.u64 q4, q7, q3 vorr.p8 q4, q7, q3 vorr.p16 q4, q7, q3 vorr.f32 q4, q7, q3 vorr.f64 q4, q7, q3 vorr.f q4, q7, q3 vorr.d q4, q7, q3 @ CHECK: vorr d4, d7, d3 @ encoding: [0x13,0x41,0x27,0xf2] @ CHECK: vorr d4, d7, d3 @ encoding: [0x13,0x41,0x27,0xf2] @ CHECK: vorr d4, d7, d3 @ encoding: [0x13,0x41,0x27,0xf2] @ CHECK: vorr d4, d7, d3 @ encoding: [0x13,0x41,0x27,0xf2] @ CHECK: vorr d4, d7, d3 @ encoding: [0x13,0x41,0x27,0xf2] @ CHECK: vorr d4, d7, d3 @ encoding: [0x13,0x41,0x27,0xf2] @ CHECK: vorr d4, d7, d3 @ encoding: [0x13,0x41,0x27,0xf2] @ CHECK: vorr d4, d7, d3 @ encoding: [0x13,0x41,0x27,0xf2] @ CHECK: vorr d4, d7, d3 @ encoding: [0x13,0x41,0x27,0xf2] @ CHECK: vorr d4, d7, d3 @ encoding: [0x13,0x41,0x27,0xf2] @ CHECK: vorr d4, d7, d3 @ encoding: [0x13,0x41,0x27,0xf2] @ CHECK: vorr q4, q7, q3 @ encoding: [0x56,0x81,0x2e,0xf2] @ CHECK: vorr q4, q7, q3 @ encoding: [0x56,0x81,0x2e,0xf2] @ CHECK: vorr q4, q7, q3 @ encoding: [0x56,0x81,0x2e,0xf2] @ CHECK: vorr q4, q7, q3 @ encoding: [0x56,0x81,0x2e,0xf2] @ CHECK: vorr q4, q7, q3 @ encoding: [0x56,0x81,0x2e,0xf2] @ CHECK: vorr q4, q7, q3 @ encoding: [0x56,0x81,0x2e,0xf2] @ CHECK: vorr q4, q7, q3 @ encoding: [0x56,0x81,0x2e,0xf2] @ CHECK: vorr q4, q7, q3 @ encoding: [0x56,0x81,0x2e,0xf2] @ CHECK: vorr q4, q7, q3 @ encoding: [0x56,0x81,0x2e,0xf2] @ CHECK: vorr q4, q7, q3 @ encoding: [0x56,0x81,0x2e,0xf2] @ CHECK: vorr q4, q7, q3 @ encoding: [0x56,0x81,0x2e,0xf2] @ CHECK: vorr q4, q7, q3 @ encoding: [0x56,0x81,0x2e,0xf2] @ Two-operand aliases vand q6, q5 vand.s8 q6, q5 vand.s16 q7, q1 vand.s32 q8, q2 vand.f64 q8, q2 veor q6, q5 veor.8 q6, q5 veor.p16 q7, q1 veor.u32 q8, q2 veor.d q8, q2 veor q6, q5 veor.i8 q6, q5 veor.16 q7, q1 veor.f q8, q2 veor.i64 q8, q2 vclt.s16 q5, #0 vclt.s16 d5, #0 vceq.s16 q5, q3 vceq.s16 d5, d3 vcgt.s16 q5, q3 vcgt.s16 d5, d3 vcge.s16 q5, q3 vcge.s16 d5, d3 vcgt.s16 q5, #0 vcgt.s16 d5, #0 vcge.s16 q5, #0 vcge.s16 d5, #0 vceq.s16 q5, #0 vceq.s16 d5, #0 vcle.s16 q5, #0 vcle.s16 d5, #0 vacge.f32 d5, d30 vacge.f32 q5, q3 vacgt.f32 d5, d30 vacgt.f32 q5, q3 @ FIXME: We don't have an alias that reverses the operands @ vacle.f32 d5, d30 @ vacle.f32 q5, q3 @ vaclt.f32 d5, d30 @ vaclt.f32 q5, q3 @ CHECK: vand q6, q6, q5 @ encoding: [0x5a,0xc1,0x0c,0xf2] @ CHECK: vand q6, q6, q5 @ encoding: [0x5a,0xc1,0x0c,0xf2] @ CHECK: vand q7, q7, q1 @ encoding: [0x52,0xe1,0x0e,0xf2] @ CHECK: vand q8, q8, q2 @ encoding: [0xd4,0x01,0x40,0xf2] @ CHECK: vand q8, q8, q2 @ encoding: [0xd4,0x01,0x40,0xf2] @ CHECK: veor q6, q6, q5 @ encoding: [0x5a,0xc1,0x0c,0xf3] @ CHECK: veor q6, q6, q5 @ encoding: [0x5a,0xc1,0x0c,0xf3] @ CHECK: veor q7, q7, q1 @ encoding: [0x52,0xe1,0x0e,0xf3] @ CHECK: veor q8, q8, q2 @ encoding: [0xd4,0x01,0x40,0xf3] @ CHECK: veor q8, q8, q2 @ encoding: [0xd4,0x01,0x40,0xf3] @ CHECK: veor q6, q6, q5 @ encoding: [0x5a,0xc1,0x0c,0xf3] @ CHECK: veor q6, q6, q5 @ encoding: [0x5a,0xc1,0x0c,0xf3] @ CHECK: veor q7, q7, q1 @ encoding: [0x52,0xe1,0x0e,0xf3] @ CHECK: veor q8, q8, q2 @ encoding: [0xd4,0x01,0x40,0xf3] @ CHECK: veor q8, q8, q2 @ encoding: [0xd4,0x01,0x40,0xf3] @ CHECK: vclt.s16 q5, q5, #0 @ encoding: [0x4a,0xa2,0xb5,0xf3] @ CHECK: vclt.s16 d5, d5, #0 @ encoding: [0x05,0x52,0xb5,0xf3] @ CHECK: vceq.i16 q5, q5, q3 @ encoding: [0x56,0xa8,0x1a,0xf3] @ CHECK: vceq.i16 d5, d5, d3 @ encoding: [0x13,0x58,0x15,0xf3] @ CHECK: vcgt.s16 q5, q5, q3 @ encoding: [0x46,0xa3,0x1a,0xf2] @ CHECK: vcgt.s16 d5, d5, d3 @ encoding: [0x03,0x53,0x15,0xf2] @ CHECK: vcge.s16 q5, q5, q3 @ encoding: [0x56,0xa3,0x1a,0xf2] @ CHECK: vcge.s16 d5, d5, d3 @ encoding: [0x13,0x53,0x15,0xf2] @ CHECK: vcgt.s16 q5, q5, #0 @ encoding: [0x4a,0xa0,0xb5,0xf3] @ CHECK: vcgt.s16 d5, d5, #0 @ encoding: [0x05,0x50,0xb5,0xf3] @ CHECK: vcge.s16 q5, q5, #0 @ encoding: [0xca,0xa0,0xb5,0xf3] @ CHECK: vcge.s16 d5, d5, #0 @ encoding: [0x85,0x50,0xb5,0xf3] @ CHECK: vceq.i16 q5, q5, #0 @ encoding: [0x4a,0xa1,0xb5,0xf3] @ CHECK: vceq.i16 d5, d5, #0 @ encoding: [0x05,0x51,0xb5,0xf3] @ CHECK: vcle.s16 q5, q5, #0 @ encoding: [0xca,0xa1,0xb5,0xf3] @ CHECK: vcle.s16 d5, d5, #0 @ encoding: [0x85,0x51,0xb5,0xf3] @ CHECK: vacge.f32 d5, d5, d30 @ encoding: [0x3e,0x5e,0x05,0xf3] @ CHECK: vacge.f32 q5, q5, q3 @ encoding: [0x56,0xae,0x0a,0xf3] @ CHECK: vacgt.f32 d5, d5, d30 @ encoding: [0x3e,0x5e,0x25,0xf3] @ CHECK: vacgt.f32 q5, q5, q3 @ encoding: [0x56,0xae,0x2a,0xf3]