# RUN: llvm-mc --disassemble %s -triple powerpc64-unknown-unknown -mcpu=e500 -mattr=+spe | FileCheck %s

# CHECK: rfdi
0x4c 0x00 0x00 0x4e
# CHECK: rfmci
0x4c 0x00 0x00 0x4c
# CHECK: evlddx 14, 21, 28
0x11 0xd5 0xe3 0x00
# CHECK: evldwx 14, 21, 28
0x11 0xd5 0xe3 0x02
# CHECK: evldhx 14, 21, 28
0x11 0xd5 0xe3 0x04
# CHECK: evlhhesplatx 14, 21, 28
0x11 0xd5 0xe3 0x08
# CHECK: evlhhousplatx 14, 21, 28
0x11 0xd5 0xe3 0x0c
# CHECK: evlhhossplatx 14, 21, 28
0x11 0xd5 0xe3 0x0e
# CHECK: evlwhex 14, 21, 28
0x11 0xd5 0xe3 0x10
# CHECK: evlwhoux 14, 21, 28
0x11 0xd5 0xe3 0x14
# CHECK: evlwhosx 14, 21, 28
0x11 0xd5 0xe3 0x16
# CHECK: evlwwsplatx 14, 21, 28
0x11 0xd5 0xe3 0x18
# CHECK: evlwhsplatx 14, 21, 28
0x11 0xd5 0xe3 0x1c
# CHECK: evmergehi 14, 21, 28
0x11 0xd5 0xe2 0x2c
# CHECK: evmergelo 14, 21, 28
0x11 0xd5 0xe2 0x2d
# CHECK: evmergehilo 14, 21, 28
0x11 0xd5 0xe2 0x2e
# CHECK: evmergelohi 14, 21, 28
0x11 0xd5 0xe2 0x2f
# CHECK: brinc 14, 22, 19
0x11 0xd6 0x9a 0x0f
# CHECK: evabs 14, 22
0x11 0xd6 0x02 0x08
# CHECK: evaddsmiaaw 14, 22
0x11 0xd6 0x04 0xc9
# CHECK: evaddssiaaw 14, 22
0x11 0xd6 0x04 0xc1
# CHECK: evaddusiaaw 14, 22
0x11 0xd6 0x04 0xc0
# CHECK: evaddumiaaw 14, 22
0x11 0xd6 0x04 0xc8
# CHECK: evaddw 14, 22, 19
0x11 0xd6 0x9a 0x00
# CHECK: evaddiw 14, 29, 19
0x11 0xd3 0xea 0x02
# CHECK: evand 14, 22, 19
0x11 0xd6 0x9a 0x11
# CHECK: evandc 14, 22, 19
0x11 0xd6 0x9a 0x12
# CHECK: evcmpeq 3, 22, 19
0x11 0x96 0x9a 0x34
# CHECK: evcmpgts 3, 22, 19
0x11 0x96 0x9a 0x31
# CHECK: evcmpgtu 3, 22, 19
0x11 0x96 0x9a 0x30
# CHECK: evcmplts 3, 22, 19
0x11 0x96 0x9a 0x33
# CHECK: evcmpltu 3, 22, 19
0x11 0x96 0x9a 0x32
# CHECK: evcntlsw 14, 22
0x11 0xd6 0x02 0x0e
# CHECK: evcntlzw 14, 22
0x11 0xd6 0x02 0x0d
# CHECK: evdivws 14, 22, 19
0x11 0xd6 0x9c 0xc6
# CHECK: evdivwu 14, 22, 19
0x11 0xd6 0x9c 0xc7
# CHECK: eveqv 14, 22, 19
0x11 0xd6 0x9a 0x19
# CHECK: evextsb 14, 22
0x11 0xd6 0x02 0x0a
# CHECK: evextsh 14, 22
0x11 0xd6 0x02 0x0b
# CHECK: evmhegsmfaa 14, 22, 19
0x11 0xd6 0x9d 0x2b
# CHECK: evmhegsmfan 14, 22, 19
0x11 0xd6 0x9d 0xab
# CHECK: evmhegsmiaa 14, 22, 19
0x11 0xd6 0x9d 0x29
# CHECK: evmhegsmian 14, 22, 19
0x11 0xd6 0x9d 0xa9
# CHECK: evmhegumiaa 14, 22, 19
0x11 0xd6 0x9d 0x28
# CHECK: evmhegumian 14, 22, 19
0x11 0xd6 0x9d 0xa8
# CHECK: evmhesmf 14, 22, 19
0x11 0xd6 0x9c 0x0b
# CHECK: evmhesmfa 14, 22, 19
0x11 0xd6 0x9c 0x2b
# CHECK: evmhesmfaaw 14, 22, 19
0x11 0xd6 0x9d 0x0b
# CHECK: evmhesmfanw 14, 22, 19
0x11 0xd6 0x9d 0x8b
# CHECK: evmhesmi 14, 22, 19
0x11 0xd6 0x9c 0x09
# CHECK: evmhesmia 14, 22, 19
0x11 0xd6 0x9c 0x29
# CHECK: evmhesmiaaw 14, 22, 19
0x11 0xd6 0x9d 0x09
# CHECK: evmhesmianw 14, 22, 19
0x11 0xd6 0x9d 0x89
# CHECK: evmhessf 14, 22, 19
0x11 0xd6 0x9c 0x03
# CHECK: evmhessfa 14, 22, 19
0x11 0xd6 0x9c 0x23
# CHECK: evmhessfaaw 14, 22, 19
0x11 0xd6 0x9d 0x03
# CHECK: evmhessfanw 14, 22, 19
0x11 0xd6 0x9d 0x83
# CHECK: evmhessiaaw 14, 22, 19
0x11 0xd6 0x9d 0x01
# CHECK: evmhessianw 14, 22, 19
0x11 0xd6 0x9d 0x81
# CHECK: evmheumi 14, 22, 19
0x11 0xd6 0x9c 0x08
# CHECK: evmheumia 14, 22, 19
0x11 0xd6 0x9c 0x28
# CHECK: evmheumiaaw 14, 22, 19
0x11 0xd6 0x9d 0x08
# CHECK: evmheumianw 14, 22, 19
0x11 0xd6 0x9d 0x88
# CHECK: evmheusiaaw 14, 22, 19
0x11 0xd6 0x9d 0x00
# CHECK: evmheusianw 14, 22, 19
0x11 0xd6 0x9d 0x80
# CHECK: evmhogsmfaa 14, 22, 19
0x11 0xd6 0x9d 0x2f
# CHECK: evmhogsmfan 14, 22, 19
0x11 0xd6 0x9d 0xaf
# CHECK: evmhogsmiaa 14, 22, 19
0x11 0xd6 0x9d 0x2d
# CHECK: evmhogsmian 14, 22, 19
0x11 0xd6 0x9d 0xad
# CHECK: evmhogumiaa 14, 22, 19
0x11 0xd6 0x9d 0x2c
# CHECK: evmhogumian 14, 22, 19
0x11 0xd6 0x9d 0xac
# CHECK: evmhosmf 14, 22, 19
0x11 0xd6 0x9c 0x0f
# CHECK: evmhosmfa 14, 22, 19
0x11 0xd6 0x9c 0x2f
# CHECK: evmhosmfaaw 14, 22, 19
0x11 0xd6 0x9d 0x0f
# CHECK: evmhosmfanw 14, 22, 19
0x11 0xd6 0x9d 0x8f
# CHECK: evmhosmi 14, 22, 19
0x11 0xd6 0x9c 0x0d
# CHECK: evmhosmia 14, 22, 19
0x11 0xd6 0x9c 0x2d
# CHECK: evmhosmiaaw 14, 22, 19
0x11 0xd6 0x9d 0x0d
# CHECK: evmhosmianw 14, 22, 19
0x11 0xd6 0x9d 0x8d
# CHECK: evmhossf 14, 22, 19
0x11 0xd6 0x9c 0x07
# CHECK: evmhossfa 14, 22, 19
0x11 0xd6 0x9c 0x27
# CHECK: evmhossfaaw 14, 22, 19
0x11 0xd6 0x9d 0x07
# CHECK: evmhossfanw 14, 22, 19
0x11 0xd6 0x9d 0x87
# CHECK: evmhossiaaw 14, 22, 19
0x11 0xd6 0x9d 0x05
# CHECK: evmhossianw 14, 22, 19
0x11 0xd6 0x9d 0x85
# CHECK: evmhoumi 14, 22, 19
0x11 0xd6 0x9c 0x0c
# CHECK: evmhoumia 14, 22, 19
0x11 0xd6 0x9c 0x2c
# CHECK: evmhoumiaaw 14, 22, 19
0x11 0xd6 0x9d 0x0c
# CHECK: evmhoumianw 14, 22, 19
0x11 0xd6 0x9d 0x8c
# CHECK: evmhousiaaw 14, 22, 19
0x11 0xd6 0x9d 0x04
# CHECK: evmhousianw 14, 22, 19
0x11 0xd6 0x9d 0x84
# CHECK: evmwhsmf 14, 22, 19
0x11 0xd6 0x9c 0x4f
# CHECK: evmwhsmfa 14, 22, 19
0x11 0xd6 0x9c 0x6f
# CHECK: evmwhsmi 14, 22, 19
0x11 0xd6 0x9c 0x4d
# CHECK: evmwhsmia 14, 22, 19
0x11 0xd6 0x9c 0x6d
# CHECK: evmwhssf 14, 22, 19
0x11 0xd6 0x9c 0x47
# CHECK: evmwhssfa 14, 22, 19
0x11 0xd6 0x9c 0x67
# CHECK: evmwhumi 14, 22, 19
0x11 0xd6 0x9c 0x4c
# CHECK: evmwhumia 14, 22, 19
0x11 0xd6 0x9c 0x6c
# CHECK: evmwlsmiaaw 14, 22, 19
0x11 0xd6 0x9d 0x49
# CHECK: evmwlsmianw 14, 22, 19
0x11 0xd6 0x9d 0xc9
# CHECK: evmwlssiaaw 14, 22, 19
0x11 0xd6 0x9d 0x41
# CHECK: evmwlssianw 14, 22, 19
0x11 0xd6 0x9d 0xc1
# CHECK: evmwlumi 14, 22, 19
0x11 0xd6 0x9c 0x48
# CHECK: evmwlumia 14, 22, 19
0x11 0xd6 0x9c 0x68
# CHECK: evmwlumiaaw 14, 22, 19
0x11 0xd6 0x9d 0x48
# CHECK: evmwlumianw 14, 22, 19
0x11 0xd6 0x9d 0xc8
# CHECK: evmwlusiaaw 14, 22, 19
0x11 0xd6 0x9d 0x40
# CHECK: evmwlusianw 14, 22, 19
0x11 0xd6 0x9d 0xc0
# CHECK: evmwsmf 14, 22, 19
0x11 0xd6 0x9c 0x5b
# CHECK: evmwsmfa 14, 22, 19
0x11 0xd6 0x9c 0x7b
# CHECK: evmwsmfaa 14, 22, 19
0x11 0xd6 0x9d 0x5b
# CHECK: evmwsmfan 14, 22, 19
0x11 0xd6 0x9d 0xdb
# CHECK: evmwsmi 14, 22, 19
0x11 0xd6 0x9c 0x59
# CHECK: evmwsmia 14, 22, 19
0x11 0xd6 0x9c 0x79
# CHECK: evmwsmiaa 14, 22, 19
0x11 0xd6 0x9d 0x59
# CHECK: evmwsmian 14, 22, 19
0x11 0xd6 0x9d 0xd9
# CHECK: evmwssf 14, 22, 19
0x11 0xd6 0x9c 0x53
# CHECK: evmwssfa 14, 22, 19
0x11 0xd6 0x9c 0x73
# CHECK: evmwssfaa 14, 22, 19
0x11 0xd6 0x9d 0x53
# CHECK: evmwssfan 14, 22, 19
0x11 0xd6 0x9d 0xd3
# CHECK: evmwumi 14, 22, 19
0x11 0xd6 0x9c 0x58
# CHECK: evmwumia 14, 22, 19
0x11 0xd6 0x9c 0x78
# CHECK: evmwumiaa 14, 22, 19
0x11 0xd6 0x9d 0x58
# CHECK: evmwumian 14, 22, 19
0x11 0xd6 0x9d 0xd8
# CHECK: evnand 14, 22, 19
0x11 0xd6 0x9a 0x1e
# CHECK: evneg 14, 22
0x11 0xd6 0x02 0x09
# CHECK: evnor 14, 22, 19
0x11 0xd6 0x9a 0x18
# CHECK: evor 14, 22, 19
0x11 0xd6 0x9a 0x17
# CHECK: evorc 14, 22, 19
0x11 0xd6 0x9a 0x1b
# CHECK: evrlwi 14, 29, 19
0x11 0xdd 0x9a 0x2a
# CHECK: evrlw 14, 22, 19
0x11 0xd6 0x9a 0x28
# CHECK: evrndw 14, 22
0x11 0xd6 0x02 0x0c
# CHECK: evslwi 14, 29, 19
0x11 0xdd 0x9a 0x26
# CHECK: evslw 14, 22, 19
0x11 0xd6 0x9a 0x24
# CHECK: evsplatfi 14, -13
0x11 0xd3 0x02 0x2b
# CHECK: evsplati 14, -13
0x11 0xd3 0x02 0x29
# CHECK: evsrwis 14, 29, 19
0x11 0xdd 0x9a 0x23
# CHECK: evsrwiu 14, 29, 19
0x11 0xdd 0x9a 0x22
# CHECK: evsrws 14, 22, 19
0x11 0xd6 0x9a 0x21
# CHECK: evsrwu 14, 22, 19
0x11 0xd6 0x9a 0x20
# CHECK: evstddx 14, 22, 19
0x11 0xd6 0x9b 0x20
# CHECK: evstdhx 14, 22, 19
0x11 0xd6 0x9b 0x24
# CHECK: evstdwx 14, 22, 19
0x11 0xd6 0x9b 0x22
# CHECK: evstwhex 14, 22, 19
0x11 0xd6 0x9b 0x30
# CHECK: evstwhox 14, 22, 19
0x11 0xd6 0x9b 0x34
# CHECK: evstwwex 14, 22, 19
0x11 0xd6 0x9b 0x38
# CHECK: evstwwox 14, 22, 19
0x11 0xd6 0x9b 0x3c
# CHECK: evsubfssiaaw 14, 22
0x11 0xd6 0x04 0xc3
# CHECK: evsubfsmiaaw 14, 22
0x11 0xd6 0x04 0xcb
# CHECK: evsubfumiaaw 14, 22
0x11 0xd6 0x04 0xca
# CHECK: evsubfusiaaw 14, 22
0x11 0xd6 0x04 0xc2
# CHECK: evsubfw 14, 22, 19
0x11 0xd6 0x9a 0x04
# CHECK: evsubifw 14, 29, 19
0x11 0xdd 0x9a 0x06
# CHECK: evxor 14, 22, 19
0x11 0xd6 0x9a 0x16
# CHECK: evldd 14, 0(27)
0x11 0xdb 0x03 0x01
# CHECK: evldd 14, 248(27)
0x11 0xdb 0xfb 0x01
# CHECK: evldd 14, 248(9)
0x11 0xc9 0xfb 0x01
# CHECK: evldw 14, 0(27)
0x11 0xdb 0x03 0x03
# CHECK: evldw 14, 248(27)
0x11 0xdb 0xfb 0x03
# CHECK: evldw 14, 248(9)
0x11 0xc9 0xfb 0x03
# CHECK: evldh 14, 0(27)
0x11 0xdb 0x03 0x05
# CHECK: evldh 14, 248(27)
0x11 0xdb 0xfb 0x05
# CHECK: evldh 14, 248(9)
0x11 0xc9 0xfb 0x05
# CHECK: evlhhesplat 14, 0(27)
0x11 0xdb 0x03 0x09
# CHECK: evlhhousplat 14, 0(27)
0x11 0xdb 0x03 0x0d
# CHECK: evlhhousplat 14, 62(27)
0x11 0xdb 0xfb 0x0d
# CHECK: evlhhousplat 14, 62(9)
0x11 0xc9 0xfb 0x0d
# CHECK: evlhhossplat 14, 0(27)
0x11 0xdb 0x03 0x0f
# CHECK: evlhhossplat 14, 62(27)
0x11 0xdb 0xfb 0x0f
# CHECK: evlhhossplat 14, 62(9)
0x11 0xc9 0xfb 0x0f
# CHECK: evlwhe 14, 0(27)
0x11 0xdb 0x03 0x11
# CHECK: evlwhe 14, 124(27)
0x11 0xdb 0xfb 0x11
# CHECK: evlwhe 14, 124(9)
0x11 0xc9 0xfb 0x11
# CHECK: evlwhou 14, 0(27)
0x11 0xdb 0x03 0x15
# CHECK: evlwhou 14, 124(27)
0x11 0xdb 0xfb 0x15
# CHECK: evlwhou 14, 124(9)
0x11 0xc9 0xfb 0x15
# CHECK: evlwhos 14, 0(27)
0x11 0xdb 0x03 0x17
# CHECK: evlwhos 14, 124(27)
0x11 0xdb 0xfb 0x17
# CHECK: evlwhos 14, 124(9)
0x11 0xc9 0xfb 0x17
# CHECK: evlwwsplat 14, 0(27)
0x11 0xdb 0x03 0x19
# CHECK: evlwwsplat 14, 124(27)
0x11 0xdb 0xfb 0x19
# CHECK: evlwwsplat 14, 124(9)
0x11 0xc9 0xfb 0x19
# CHECK: evlwhsplat 14, 0(27)
0x11 0xdb 0x03 0x1d
# CHECK: evlwhsplat 14, 124(27)
0x11 0xdb 0xfb 0x1d
# CHECK: evlwhsplat 14, 124(9)
0x11 0xc9 0xfb 0x1d
# CHECK: evstdd 14, 0(27)
0x11 0xdb 0x03 0x21
# CHECK: evstdd 14, 248(27)
0x11 0xdb 0xfb 0x21
# CHECK: evstdd 14, 248(9)
0x11 0xc9 0xfb 0x21
# CHECK: evstdh 14, 0(27)
0x11 0xdb 0x03 0x25
# CHECK: evstdh 14, 248(27)
0x11 0xdb 0xfb 0x25
# CHECK: evstdh 14, 248(9)
0x11 0xc9 0xfb 0x25
# CHECK: evstdw 14, 0(27)
0x11 0xdb 0x03 0x23
# CHECK: evstdw 14, 248(27)
0x11 0xdb 0xfb 0x23
# CHECK: evstdw 14, 248(9)
0x11 0xc9 0xfb 0x23
# CHECK: evstwhe 14, 0(27)
0x11 0xdb 0x03 0x31
# CHECK: evstwhe 14, 124(27)
0x11 0xdb 0xfb 0x31
# CHECK: evstwhe 14, 124(9)
0x11 0xc9 0xfb 0x31
# CHECK: evstwho 14, 0(27)
0x11 0xdb 0x03 0x35
# CHECK: evstwho 14, 124(27)
0x11 0xdb 0xfb 0x35
# CHECK: evstwho 14, 124(9)
0x11 0xc9 0xfb 0x35
# CHECK: evstwwe 14, 0(27)
0x11 0xdb 0x03 0x39
# CHECK: evstwwe 14, 124(27)
0x11 0xdb 0xfb 0x39
# CHECK: evstwwe 14, 124(9)
0x11 0xc9 0xfb 0x39
# CHECK: evstwwo 14, 0(27)
0x11 0xdb 0x03 0x3d
# CHECK: evstwwo 14, 124(27)
0x11 0xdb 0xfb 0x3d
# CHECK: evstwwo 14, 124(9)
0x11 0xc9 0xfb 0x3d
# CHECK: efdabs 3, 4
0x10 0x64 0x02 0xe4
# CHECK: efdadd 3, 4, 5
0x10 0x64 0x2a 0xe0
# CHECK: efdcfs 3, 4
0x10 0x60 0x22 0xef
# CHECK: efdcfsf 5, 6
0x10 0xa0 0x32 0xf3
# CHECK: efdcfsi 5, 6
0x10 0xa0 0x32 0xf1
# CHECK: efdcfsid 10, 14
0x11 0x40 0x72 0xe3
# CHECK: efdcfuf 5, 8
0x10 0xa0 0x42 0xf2
# CHECK: efdcfui 6, 9
0x10 0xc0 0x4a 0xf0
# CHECK: efdcfuid 7, 10
0x10 0xe0 0x52 0xe2
# CHECK: efdcmpeq 3, 3, 8
0x11 0x83 0x42 0xee
# CHECK: efdcmpgt 4, 7, 3
0x12 0x07 0x1a 0xec
# CHECK: efdcmplt 2, 3, 4
0x11 0x03 0x22 0xed
# CHECK: efdctsf 5, 3
0x10 0xa0 0x1a 0xf7
# CHECK: efdctsi 6, 4
0x10 0xc0 0x22 0xf5
# CHECK: efdctsidz 3, 4
0x10 0x60 0x22 0xeb
# CHECK: efdctsiz 3, 4
0x10 0x60 0x22 0xfa
# CHECK: efdctuf 5, 8
0x10 0xa0 0x42 0xf6
# CHECK: efdctui 9, 10
0x11 0x20 0x52 0xf4
# CHECK: efdctuidz 3, 8
0x10 0x60 0x42 0xea
# CHECK: efdctuiz 5, 17
0x10 0xa0 0x8a 0xf8
# CHECK: efddiv 3, 4, 5
0x10 0x64 0x2a 0xe9
# CHECK: efdmul 0, 3, 8
0x10 0x03 0x42 0xe8
# CHECK: efdnabs 3, 23
0x10 0x77 0x02 0xe5
# CHECK: efdneg 3, 22
0x10 0x76 0x02 0xe6
# CHECK: efdsub 3, 4, 6
0x10 0x64 0x32 0xe1
# CHECK: efdtsteq 3, 4, 5
0x11 0x84 0x2a 0xfe
# CHECK: efdtstgt 3, 3, 6
0x11 0x83 0x32 0xfc
# CHECK: efdtstlt 4, 0, 3
0x12 0x00 0x1a 0xfd
# CHECK: efsabs 3, 4
0x10 0x64 0x02 0xc4
# CHECK: efsadd 3, 4, 5
0x10 0x64 0x2a 0xc0
# CHECK: efscfsf 5, 6
0x10 0xa0 0x32 0xd3
# CHECK: efscfsi 5, 6
0x10 0xa0 0x32 0xd1
# CHECK: efscfuf 5, 8
0x10 0xa0 0x42 0xd2
# CHECK: efscfui 6, 9
0x10 0xc0 0x4a 0xd0
# CHECK: efscmpeq 3, 3, 8
0x11 0x83 0x42 0xce
# CHECK: efscmpgt 4, 7, 3
0x12 0x07 0x1a 0xcc
# CHECK: efscmplt 2, 3, 4
0x11 0x03 0x22 0xcd
# CHECK: efsctsf 5, 3
0x10 0xa0 0x1a 0xd7
# CHECK: efsctsi 6, 4
0x10 0xc0 0x22 0xd5
# CHECK: efsctsiz 3, 4
0x10 0x60 0x22 0xda
# CHECK: efsctuf 5, 8
0x10 0xa0 0x42 0xd6
# CHECK: efsctui 9, 10
0x11 0x20 0x52 0xd4
# CHECK: efsctuiz 5, 17
0x10 0xa0 0x8a 0xd8
# CHECK: efsdiv 3, 4, 5
0x10 0x64 0x2a 0xc9
# CHECK: efsmul 0, 3, 8
0x10 0x03 0x42 0xc8
# CHECK: efsnabs 3, 23
0x10 0x77 0x02 0xc5
# CHECK: efsneg 3, 22
0x10 0x76 0x02 0xc6
# CHECK: efssub 3, 4, 6
0x10 0x64 0x32 0xc1
# CHECK: efststeq 3, 4, 5
0x11 0x84 0x2a 0xde
# CHECK: efststgt 3, 3, 6
0x11 0x83 0x32 0xdc
# CHECK: efststlt 4, 0, 3
0x12 0x00 0x1a 0xdd
