# RUN: llvm-mc -triple=ve --show-encoding < %s \
# RUN:     | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
# RUN: llvm-mc -triple=ve -filetype=obj < %s | llvm-objdump -d - \
# RUN:     | FileCheck %s --check-prefixes=CHECK-INST

# CHECK-INST: vfmk.d.at %vm11
# CHECK-ENCODING: encoding: [0x00,0x00,0x0f,0x0b,0x00,0x00,0x00,0xb6]
vfmk.d %vm11

# CHECK-INST: vfmk.d.at %vm11
# CHECK-ENCODING: encoding: [0x00,0x00,0x0f,0x0b,0x00,0x00,0x00,0xb6]
vfmk.d.at %vm11

# CHECK-INST: vfmk.d.af %vm1, %vm15
# CHECK-ENCODING: encoding: [0x00,0x00,0x00,0x01,0x00,0x00,0x0f,0xb6]
vfmk.d.af %vm1, %vm15

# CHECK-INST: vfmk.d.gt %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x01,0x0c,0x00,0x00,0x00,0xb6]
vfmk.d.gt %vm12, %v22

# CHECK-INST: vfmk.d.lt %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x02,0x0c,0x00,0x00,0x0f,0xb6]
vfmk.d.lt %vm12, %vix, %vm15

# CHECK-INST: vfmk.d.ne %vm11, %v32
# CHECK-ENCODING: encoding: [0x00,0x20,0x03,0x0b,0x00,0x00,0x00,0xb6]
vfmk.d.ne %vm11, %v32

# CHECK-INST: vfmk.d.eq %vm1, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x04,0x01,0x00,0x00,0x0f,0xb6]
vfmk.d.eq %vm1, %vix, %vm15

# CHECK-INST: vfmk.d.ge %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x05,0x0c,0x00,0x00,0x00,0xb6]
vfmk.d.ge %vm12, %v22

# CHECK-INST: vfmk.d.le %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x06,0x0c,0x00,0x00,0x0f,0xb6]
vfmk.d.le %vm12, %vix, %vm15

# CHECK-INST: vfmk.d.num %vm11, %v45
# CHECK-ENCODING: encoding: [0x00,0x2d,0x07,0x0b,0x00,0x00,0x00,0xb6]
vfmk.d.num %vm11, %v45

# CHECK-INST: vfmk.d.nan %vm1, %v50, %vm14
# CHECK-ENCODING: encoding: [0x00,0x32,0x08,0x01,0x00,0x00,0x0e,0xb6]
vfmk.d.nan %vm1, %v50, %vm14

# CHECK-INST: vfmk.d.gtnan %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x09,0x0c,0x00,0x00,0x00,0xb6]
vfmk.d.gtnan %vm12, %v22

# CHECK-INST: vfmk.d.ltnan %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x0a,0x0c,0x00,0x00,0x0f,0xb6]
vfmk.d.ltnan %vm12, %vix, %vm15

# CHECK-INST: vfmk.d.nenan %vm11, %v32
# CHECK-ENCODING: encoding: [0x00,0x20,0x0b,0x0b,0x00,0x00,0x00,0xb6]
vfmk.d.nenan %vm11, %v32

# CHECK-INST: vfmk.d.eqnan %vm1, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x0c,0x01,0x00,0x00,0x0f,0xb6]
vfmk.d.eqnan %vm1, %vix, %vm15

# CHECK-INST: vfmk.d.genan %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x0d,0x0c,0x00,0x00,0x00,0xb6]
vfmk.d.genan %vm12, %v22

# CHECK-INST: vfmk.d.lenan %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x0e,0x0c,0x00,0x00,0x0f,0xb6]
vfmk.d.lenan %vm12, %vix, %vm15

# CHECK-INST: pvfmk.s.up.at %vm11
# CHECK-ENCODING: encoding: [0x00,0x00,0x0f,0x0b,0x00,0x00,0x80,0xb6]
vfmk.s %vm11

# CHECK-INST: pvfmk.s.up.at %vm11
# CHECK-ENCODING: encoding: [0x00,0x00,0x0f,0x0b,0x00,0x00,0x80,0xb6]
vfmk.s.at %vm11

# CHECK-INST: pvfmk.s.up.af %vm1, %vm15
# CHECK-ENCODING: encoding: [0x00,0x00,0x00,0x01,0x00,0x00,0x8f,0xb6]
vfmk.s.af %vm1, %vm15

# CHECK-INST: pvfmk.s.up.gt %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x01,0x0c,0x00,0x00,0x80,0xb6]
vfmk.s.gt %vm12, %v22

# CHECK-INST: pvfmk.s.up.lt %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x02,0x0c,0x00,0x00,0x8f,0xb6]
vfmk.s.lt %vm12, %vix, %vm15

# CHECK-INST: pvfmk.s.up.ne %vm11, %v32
# CHECK-ENCODING: encoding: [0x00,0x20,0x03,0x0b,0x00,0x00,0x80,0xb6]
vfmk.s.ne %vm11, %v32

# CHECK-INST: pvfmk.s.up.eq %vm1, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x04,0x01,0x00,0x00,0x8f,0xb6]
vfmk.s.eq %vm1, %vix, %vm15

# CHECK-INST: pvfmk.s.up.ge %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x05,0x0c,0x00,0x00,0x80,0xb6]
vfmk.s.ge %vm12, %v22

# CHECK-INST: pvfmk.s.up.le %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x06,0x0c,0x00,0x00,0x8f,0xb6]
vfmk.s.le %vm12, %vix, %vm15

# CHECK-INST: pvfmk.s.up.num %vm11, %v45
# CHECK-ENCODING: encoding: [0x00,0x2d,0x07,0x0b,0x00,0x00,0x80,0xb6]
vfmk.s.num %vm11, %v45

# CHECK-INST: pvfmk.s.up.nan %vm1, %v50, %vm14
# CHECK-ENCODING: encoding: [0x00,0x32,0x08,0x01,0x00,0x00,0x8e,0xb6]
vfmk.s.nan %vm1, %v50, %vm14

# CHECK-INST: pvfmk.s.up.gtnan %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x09,0x0c,0x00,0x00,0x80,0xb6]
vfmk.s.gtnan %vm12, %v22

# CHECK-INST: pvfmk.s.up.ltnan %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x0a,0x0c,0x00,0x00,0x8f,0xb6]
vfmk.s.ltnan %vm12, %vix, %vm15

# CHECK-INST: pvfmk.s.up.nenan %vm11, %v32
# CHECK-ENCODING: encoding: [0x00,0x20,0x0b,0x0b,0x00,0x00,0x80,0xb6]
vfmk.s.nenan %vm11, %v32

# CHECK-INST: pvfmk.s.up.eqnan %vm1, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x0c,0x01,0x00,0x00,0x8f,0xb6]
vfmk.s.eqnan %vm1, %vix, %vm15

# CHECK-INST: pvfmk.s.up.genan %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x0d,0x0c,0x00,0x00,0x80,0xb6]
vfmk.s.genan %vm12, %v22

# CHECK-INST: pvfmk.s.up.lenan %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x0e,0x0c,0x00,0x00,0x8f,0xb6]
vfmk.s.lenan %vm12, %vix, %vm15

# CHECK-INST: pvfmk.s.up.at %vm11
# CHECK-ENCODING: encoding: [0x00,0x00,0x0f,0x0b,0x00,0x00,0x80,0xb6]
pvfmk.s.up %vm11

# CHECK-INST: pvfmk.s.up.at %vm11
# CHECK-ENCODING: encoding: [0x00,0x00,0x0f,0x0b,0x00,0x00,0x80,0xb6]
pvfmk.s.up.at %vm11

# CHECK-INST: pvfmk.s.up.af %vm1, %vm15
# CHECK-ENCODING: encoding: [0x00,0x00,0x00,0x01,0x00,0x00,0x8f,0xb6]
pvfmk.s.up.af %vm1, %vm15

# CHECK-INST: pvfmk.s.up.gt %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x01,0x0c,0x00,0x00,0x80,0xb6]
pvfmk.s.up.gt %vm12, %v22

# CHECK-INST: pvfmk.s.up.lt %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x02,0x0c,0x00,0x00,0x8f,0xb6]
pvfmk.s.up.lt %vm12, %vix, %vm15

# CHECK-INST: pvfmk.s.up.ne %vm11, %v32
# CHECK-ENCODING: encoding: [0x00,0x20,0x03,0x0b,0x00,0x00,0x80,0xb6]
pvfmk.s.up.ne %vm11, %v32

# CHECK-INST: pvfmk.s.up.eq %vm1, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x04,0x01,0x00,0x00,0x8f,0xb6]
pvfmk.s.up.eq %vm1, %vix, %vm15

# CHECK-INST: pvfmk.s.up.ge %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x05,0x0c,0x00,0x00,0x80,0xb6]
pvfmk.s.up.ge %vm12, %v22

# CHECK-INST: pvfmk.s.up.le %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x06,0x0c,0x00,0x00,0x8f,0xb6]
pvfmk.s.up.le %vm12, %vix, %vm15

# CHECK-INST: pvfmk.s.up.num %vm11, %v45
# CHECK-ENCODING: encoding: [0x00,0x2d,0x07,0x0b,0x00,0x00,0x80,0xb6]
pvfmk.s.up.num %vm11, %v45

# CHECK-INST: pvfmk.s.up.nan %vm1, %v50, %vm14
# CHECK-ENCODING: encoding: [0x00,0x32,0x08,0x01,0x00,0x00,0x8e,0xb6]
pvfmk.s.up.nan %vm1, %v50, %vm14

# CHECK-INST: pvfmk.s.up.gtnan %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x09,0x0c,0x00,0x00,0x80,0xb6]
pvfmk.s.up.gtnan %vm12, %v22

# CHECK-INST: pvfmk.s.up.ltnan %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x0a,0x0c,0x00,0x00,0x8f,0xb6]
pvfmk.s.up.ltnan %vm12, %vix, %vm15

# CHECK-INST: pvfmk.s.up.nenan %vm11, %v32
# CHECK-ENCODING: encoding: [0x00,0x20,0x0b,0x0b,0x00,0x00,0x80,0xb6]
pvfmk.s.up.nenan %vm11, %v32

# CHECK-INST: pvfmk.s.up.eqnan %vm1, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x0c,0x01,0x00,0x00,0x8f,0xb6]
pvfmk.s.up.eqnan %vm1, %vix, %vm15

# CHECK-INST: pvfmk.s.up.genan %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x0d,0x0c,0x00,0x00,0x80,0xb6]
pvfmk.s.up.genan %vm12, %v22

# CHECK-INST: pvfmk.s.up.lenan %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x0e,0x0c,0x00,0x00,0x8f,0xb6]
pvfmk.s.up.lenan %vm12, %vix, %vm15

# CHECK-INST: pvfmk.s.lo.at %vm11
# CHECK-ENCODING: encoding: [0x00,0x00,0x0f,0x0b,0x00,0x00,0x40,0xb6]
pvfmk.s.lo %vm11

# CHECK-INST: pvfmk.s.lo.at %vm11
# CHECK-ENCODING: encoding: [0x00,0x00,0x0f,0x0b,0x00,0x00,0x40,0xb6]
pvfmk.s.lo.at %vm11

# CHECK-INST: pvfmk.s.lo.af %vm1, %vm15
# CHECK-ENCODING: encoding: [0x00,0x00,0x00,0x01,0x00,0x00,0x4f,0xb6]
pvfmk.s.lo.af %vm1, %vm15

# CHECK-INST: pvfmk.s.lo.gt %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x01,0x0c,0x00,0x00,0x40,0xb6]
pvfmk.s.lo.gt %vm12, %v22

# CHECK-INST: pvfmk.s.lo.lt %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x02,0x0c,0x00,0x00,0x4f,0xb6]
pvfmk.s.lo.lt %vm12, %vix, %vm15

# CHECK-INST: pvfmk.s.lo.ne %vm11, %v32
# CHECK-ENCODING: encoding: [0x00,0x20,0x03,0x0b,0x00,0x00,0x40,0xb6]
pvfmk.s.lo.ne %vm11, %v32

# CHECK-INST: pvfmk.s.lo.eq %vm1, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x04,0x01,0x00,0x00,0x4f,0xb6]
pvfmk.s.lo.eq %vm1, %vix, %vm15

# CHECK-INST: pvfmk.s.lo.ge %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x05,0x0c,0x00,0x00,0x40,0xb6]
pvfmk.s.lo.ge %vm12, %v22

# CHECK-INST: pvfmk.s.lo.le %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x06,0x0c,0x00,0x00,0x4f,0xb6]
pvfmk.s.lo.le %vm12, %vix, %vm15

# CHECK-INST: pvfmk.s.lo.num %vm11, %v45
# CHECK-ENCODING: encoding: [0x00,0x2d,0x07,0x0b,0x00,0x00,0x40,0xb6]
pvfmk.s.lo.num %vm11, %v45

# CHECK-INST: pvfmk.s.lo.nan %vm1, %v50, %vm14
# CHECK-ENCODING: encoding: [0x00,0x32,0x08,0x01,0x00,0x00,0x4e,0xb6]
pvfmk.s.lo.nan %vm1, %v50, %vm14

# CHECK-INST: pvfmk.s.lo.gtnan %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x09,0x0c,0x00,0x00,0x40,0xb6]
pvfmk.s.lo.gtnan %vm12, %v22

# CHECK-INST: pvfmk.s.lo.ltnan %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x0a,0x0c,0x00,0x00,0x4f,0xb6]
pvfmk.s.lo.ltnan %vm12, %vix, %vm15

# CHECK-INST: pvfmk.s.lo.nenan %vm11, %v32
# CHECK-ENCODING: encoding: [0x00,0x20,0x0b,0x0b,0x00,0x00,0x40,0xb6]
pvfmk.s.lo.nenan %vm11, %v32

# CHECK-INST: pvfmk.s.lo.eqnan %vm1, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x0c,0x01,0x00,0x00,0x4f,0xb6]
pvfmk.s.lo.eqnan %vm1, %vix, %vm15

# CHECK-INST: pvfmk.s.lo.genan %vm12, %v22
# CHECK-ENCODING: encoding: [0x00,0x16,0x0d,0x0c,0x00,0x00,0x40,0xb6]
pvfmk.s.lo.genan %vm12, %v22

# CHECK-INST: pvfmk.s.lo.lenan %vm12, %vix, %vm15
# CHECK-ENCODING: encoding: [0x00,0xff,0x0e,0x0c,0x00,0x00,0x4f,0xb6]
pvfmk.s.lo.lenan %vm12, %vix, %vm15
