blob: 6f4ba6f6b9ac22f2cc823e200717fd4e08afdb1c [file] [log] [blame]
# RUN: llvm-mc --disassemble %s -triple powerpc64-unknown-linux-gnu -mcpu=pwr7 | FileCheck %s
# CHECK: lxsdx 7, 5, 31
0x7c 0xe5 0xfc 0x98
# CHECK: lxsiwax 7, 5, 31
0x7c 0xe5 0xf8 0x98
# CHECK: lxsiwzx 7, 5, 31
0x7c 0xe5 0xf8 0x18
# CHECK: lxsspx 7, 5, 31
0x7c 0xe5 0xfc 0x18
# CHECK: lxvd2x 7, 5, 31
0x7c 0xe5 0xfe 0x98
# CHECK: lxvdsx 7, 5, 31
0x7c 0xe5 0xfa 0x98
# CHECK: lxvw4x 7, 5, 31
0x7c 0xe5 0xfe 0x18
# CHECK: stxsdx 8, 5, 31
0x7d 0x05 0xfd 0x98
# CHECK: stxsiwx 8, 5, 31
0x7d 0x05 0xf9 0x18
# CHECK: stxsspx 8, 5, 31
0x7d 0x05 0xfd 0x18
# CHECK: stxvd2x 8, 5, 31
0x7d 0x05 0xff 0x98
# CHECK: stxvw4x 8, 5, 31
0x7d 0x05 0xff 0x18
# CHECK: xsabsdp 7, 27
0xf0 0xe0 0xdd 0x64
# CHECK: xsaddsp 7, 63, 27
0xf0 0xff 0xd8 0x04
# CHECK: xsadddp 7, 63, 27
0xf0 0xff 0xd9 0x04
# CHECK: xscmpodp 6, 63, 27
0xf3 0x1f 0xd9 0x5c
# CHECK: xscmpudp 6, 63, 27
0xf3 0x1f 0xd9 0x1c
# CHECK: xscpsgndp 7, 63, 27
0xf0 0xff 0xdd 0x84
# CHECK: xscvdpsp 7, 27
0xf0 0xe0 0xdc 0x24
# CHECK: xscvdpsxds 7, 27
0xf0 0xe0 0xdd 0x60
# CHECK: xscvdpsxws 7, 27
0xf0 0xe0 0xd9 0x60
# CHECK: xscvdpuxds 7, 27
0xf0 0xe0 0xdd 0x20
# CHECK: xscvdpuxws 7, 27
0xf0 0xe0 0xd9 0x20
# CHECK: xscvspdp 7, 27
0xf0 0xe0 0xdd 0x24
# CHECK: xscvsxddp 7, 27
0xf0 0xe0 0xdd 0xe0
# CHECK: xscvuxddp 7, 27
0xf0 0xe0 0xdd 0xa0
# CHECK: xsdivsp 7, 63, 27
0xf0 0xff 0xd8 0xc4
# CHECK: xsdivdp 7, 63, 27
0xf0 0xff 0xd9 0xc4
# CHECK: xsmaddadp 7, 63, 27
0xf0 0xff 0xd9 0x0c
# CHECK: xsmaddmdp 7, 63, 27
0xf0 0xff 0xd9 0x4c
# CHECK: xsmaddasp 7, 63, 27
0xf0 0xff 0xd8 0x0c
# CHECK: xsmaddmsp 7, 63, 27
0xf0 0xff 0xd8 0x4c
# CHECK: xsmaxdp 7, 63, 27
0xf0 0xff 0xdd 0x04
# CHECK: xsmindp 7, 63, 27
0xf0 0xff 0xdd 0x44
# CHECK: xsmsubadp 7, 63, 27
0xf0 0xff 0xd9 0x8c
# CHECK: xsmsubmdp 7, 63, 27
0xf0 0xff 0xd9 0xcc
# CHECK: xsmsubasp 7, 63, 27
0xf0 0xff 0xd8 0x8c
# CHECK: xsmsubmsp 7, 63, 27
0xf0 0xff 0xd8 0xcc
# CHECK: xsmulsp 7, 63, 27
0xf0 0xff 0xd8 0x84
# CHECK: xsmuldp 7, 63, 27
0xf0 0xff 0xd9 0x84
# CHECK: xsnabsdp 7, 27
0xf0 0xe0 0xdd 0xa4
# CHECK: xsnegdp 7, 27
0xf0 0xe0 0xdd 0xe4
# CHECK: xsnmaddadp 7, 63, 27
0xf0 0xff 0xdd 0x0c
# CHECK: xsnmaddmdp 7, 63, 27
0xf0 0xff 0xdd 0x4c
# CHECK: xsnmsubadp 7, 63, 27
0xf0 0xff 0xdd 0x8c
# CHECK: xsnmsubmdp 7, 63, 27
0xf0 0xff 0xdd 0xcc
# CHECK: xsnmaddasp 7, 63, 27
0xf0 0xff 0xdc 0x0c
# CHECK: xsnmaddmsp 7, 63, 27
0xf0 0xff 0xdc 0x4c
# CHECK: xsnmsubasp 7, 63, 27
0xf0 0xff 0xdc 0x8c
# CHECK: xsnmsubmsp 7, 63, 27
0xf0 0xff 0xdc 0xcc
# CHECK: xsrdpi 7, 27
0xf0 0xe0 0xd9 0x24
# CHECK: xsrdpic 7, 27
0xf0 0xe0 0xd9 0xac
# CHECK: xsrdpim 7, 27
0xf0 0xe0 0xd9 0xe4
# CHECK: xsrdpip 7, 27
0xf0 0xe0 0xd9 0xa4
# CHECK: xsrdpiz 7, 27
0xf0 0xe0 0xd9 0x64
# CHECK: xsresp 7, 27
0xf0 0xe0 0xd8 0x68
# CHECK: xsredp 7, 27
0xf0 0xe0 0xd9 0x68
# CHECK: xsrsqrtesp 7, 27
0xf0 0xe0 0xd8 0x28
# CHECK: xsrsqrtedp 7, 27
0xf0 0xe0 0xd9 0x28
# CHECK: xssqrtsp 7, 27
0xf0 0xe0 0xd8 0x2c
# CHECK: xssqrtdp 7, 27
0xf0 0xe0 0xd9 0x2c
# CHECK: xssubsp 7, 63, 27
0xf0 0xff 0xd8 0x44
# CHECK: xssubdp 7, 63, 27
0xf0 0xff 0xd9 0x44
# CHECK: xstdivdp 6, 63, 27
0xf3 0x1f 0xd9 0xec
# CHECK: xstsqrtdp 6, 27
0xf3 0x00 0xd9 0xa8
# CHECK: xvabsdp 7, 27
0xf0 0xe0 0xdf 0x64
# CHECK: xvabssp 7, 27
0xf0 0xe0 0xde 0x64
# CHECK: xvadddp 7, 63, 27
0xf0 0xff 0xdb 0x04
# CHECK: xvaddsp 7, 63, 27
0xf0 0xff 0xda 0x04
# CHECK: xvcmpeqdp 7, 63, 27
0xf0 0xff 0xdb 0x1c
# CHECK: xvcmpeqdp. 7, 63, 27
0xf0 0xff 0xdf 0x1c
# CHECK: xvcmpeqsp 7, 63, 27
0xf0 0xff 0xda 0x1c
# CHECK: xvcmpeqsp. 7, 63, 27
0xf0 0xff 0xde 0x1c
# CHECK: xvcmpgedp 7, 63, 27
0xf0 0xff 0xdb 0x9c
# CHECK: xvcmpgedp. 7, 63, 27
0xf0 0xff 0xdf 0x9c
# CHECK: xvcmpgesp 7, 63, 27
0xf0 0xff 0xda 0x9c
# CHECK: xvcmpgesp. 7, 63, 27
0xf0 0xff 0xde 0x9c
# CHECK: xvcmpgtdp 7, 63, 27
0xf0 0xff 0xdb 0x5c
# CHECK: xvcmpgtdp. 7, 63, 27
0xf0 0xff 0xdf 0x5c
# CHECK: xvcmpgtsp 7, 63, 27
0xf0 0xff 0xda 0x5c
# CHECK: xvcmpgtsp. 7, 63, 27
0xf0 0xff 0xde 0x5c
# CHECK: xvcpsgndp 7, 63, 27
0xf0 0xff 0xdf 0x84
# CHECK: xvcpsgnsp 7, 63, 27
0xf0 0xff 0xde 0x84
# CHECK: xvcvdpsp 7, 27
0xf0 0xe0 0xde 0x24
# CHECK: xvcvdpsxds 7, 27
0xf0 0xe0 0xdf 0x60
# CHECK: xvcvdpsxws 7, 27
0xf0 0xe0 0xdb 0x60
# CHECK: xvcvdpuxds 7, 27
0xf0 0xe0 0xdf 0x20
# CHECK: xvcvdpuxws 7, 27
0xf0 0xe0 0xdb 0x20
# CHECK: xvcvspdp 7, 27
0xf0 0xe0 0xdf 0x24
# CHECK: xvcvspsxds 7, 27
0xf0 0xe0 0xde 0x60
# CHECK: xvcvspsxws 7, 27
0xf0 0xe0 0xda 0x60
# CHECK: xvcvspuxds 7, 27
0xf0 0xe0 0xde 0x20
# CHECK: xvcvspuxws 7, 27
0xf0 0xe0 0xda 0x20
# CHECK: xvcvsxddp 7, 27
0xf0 0xe0 0xdf 0xe0
# CHECK: xvcvsxdsp 7, 27
0xf0 0xe0 0xde 0xe0
# CHECK: xvcvsxwdp 7, 27
0xf0 0xe0 0xdb 0xe0
# CHECK: xvcvsxwsp 7, 27
0xf0 0xe0 0xda 0xe0
# CHECK: xvcvuxddp 7, 27
0xf0 0xe0 0xdf 0xa0
# CHECK: xvcvuxdsp 7, 27
0xf0 0xe0 0xde 0xa0
# CHECK: xvcvuxwdp 7, 27
0xf0 0xe0 0xdb 0xa0
# CHECK: xvcvuxwsp 7, 27
0xf0 0xe0 0xda 0xa0
# CHECK: xvdivdp 7, 63, 27
0xf0 0xff 0xdb 0xc4
# CHECK: xvdivsp 7, 63, 27
0xf0 0xff 0xda 0xc4
# CHECK: xvmaddadp 7, 63, 27
0xf0 0xff 0xdb 0x0c
# CHECK: xvmaddasp 7, 63, 27
0xf0 0xff 0xda 0x0c
# CHECK: xvmaddmdp 7, 63, 27
0xf0 0xff 0xdb 0x4c
# CHECK: xvmaddmsp 7, 63, 27
0xf0 0xff 0xda 0x4c
# CHECK: xvmaxdp 7, 63, 27
0xf0 0xff 0xdf 0x04
# CHECK: xvmaxsp 7, 63, 27
0xf0 0xff 0xde 0x04
# CHECK: xvmindp 7, 63, 27
0xf0 0xff 0xdf 0x44
# CHECK: xvminsp 7, 63, 27
0xf0 0xff 0xde 0x44
# CHECK: xvmovdp 7, 63
0xf0 0xff 0xff 0x86
# CHECK: xvmovsp 7, 63
0xf0 0xff 0xfe 0x86
# CHECK: xvmsubadp 7, 63, 27
0xf0 0xff 0xdb 0x8c
# CHECK: xvmsubasp 7, 63, 27
0xf0 0xff 0xda 0x8c
# CHECK: xvmsubmdp 7, 63, 27
0xf0 0xff 0xdb 0xcc
# CHECK: xvmsubmsp 7, 63, 27
0xf0 0xff 0xda 0xcc
# CHECK: xvmuldp 7, 63, 27
0xf0 0xff 0xdb 0x84
# CHECK: xvmulsp 7, 63, 27
0xf0 0xff 0xda 0x84
# CHECK: xvnabsdp 7, 27
0xf0 0xe0 0xdf 0xa4
# CHECK: xvnabssp 7, 27
0xf0 0xe0 0xde 0xa4
# CHECK: xvnegdp 7, 27
0xf0 0xe0 0xdf 0xe4
# CHECK: xvnegsp 7, 27
0xf0 0xe0 0xde 0xe4
# CHECK: xvnmaddadp 7, 63, 27
0xf0 0xff 0xdf 0x0c
# CHECK: xvnmaddasp 7, 63, 27
0xf0 0xff 0xde 0x0c
# CHECK: xvnmaddmdp 7, 63, 27
0xf0 0xff 0xdf 0x4c
# CHECK: xvnmaddmsp 7, 63, 27
0xf0 0xff 0xde 0x4c
# CHECK: xvnmsubadp 7, 63, 27
0xf0 0xff 0xdf 0x8c
# CHECK: xvnmsubasp 7, 63, 27
0xf0 0xff 0xde 0x8c
# CHECK: xvnmsubmdp 7, 63, 27
0xf0 0xff 0xdf 0xcc
# CHECK: xvnmsubmsp 7, 63, 27
0xf0 0xff 0xde 0xcc
# CHECK: xvrdpi 7, 27
0xf0 0xe0 0xdb 0x24
# CHECK: xvrdpic 7, 27
0xf0 0xe0 0xdb 0xac
# CHECK: xvrdpim 7, 27
0xf0 0xe0 0xdb 0xe4
# CHECK: xvrdpip 7, 27
0xf0 0xe0 0xdb 0xa4
# CHECK: xvrdpiz 7, 27
0xf0 0xe0 0xdb 0x64
# CHECK: xvredp 7, 27
0xf0 0xe0 0xdb 0x68
# CHECK: xvresp 7, 27
0xf0 0xe0 0xda 0x68
# CHECK: xvrspi 7, 27
0xf0 0xe0 0xda 0x24
# CHECK: xvrspic 7, 27
0xf0 0xe0 0xda 0xac
# CHECK: xvrspim 7, 27
0xf0 0xe0 0xda 0xe4
# CHECK: xvrspip 7, 27
0xf0 0xe0 0xda 0xa4
# CHECK: xvrspiz 7, 27
0xf0 0xe0 0xda 0x64
# CHECK: xvrsqrtedp 7, 27
0xf0 0xe0 0xdb 0x28
# CHECK: xvrsqrtesp 7, 27
0xf0 0xe0 0xda 0x28
# CHECK: xvsqrtdp 7, 27
0xf0 0xe0 0xdb 0x2c
# CHECK: xvsqrtsp 7, 27
0xf0 0xe0 0xda 0x2c
# CHECK: xvsubdp 7, 63, 27
0xf0 0xff 0xdb 0x44
# CHECK: xvsubsp 7, 63, 27
0xf0 0xff 0xda 0x44
# CHECK: xvtdivdp 6, 63, 27
0xf3 0x1f 0xdb 0xec
# CHECK: xvtdivsp 6, 63, 27
0xf3 0x1f 0xda 0xec
# CHECK: xvtsqrtdp 6, 27
0xf3 0x00 0xdb 0xa8
# CHECK: xvtsqrtsp 6, 27
0xf3 0x00 0xda 0xa8
# CHECK: xxland 7, 63, 27
0xf0 0xff 0xdc 0x14
# CHECK: xxleqv 7, 63, 27
0xf0 0xff 0xdd 0xd4
# CHECK: xxlnand 7, 63, 27
0xf0 0xff 0xdd 0x94
# CHECK: xxlorc 7, 63, 27
0xf0 0xff 0xdd 0x54
# CHECK: xxlandc 7, 63, 27
0xf0 0xff 0xdc 0x54
# CHECK: xxlnor 7, 63, 27
0xf0 0xff 0xdd 0x14
# CHECK: xxlor 7, 63, 27
0xf0 0xff 0xdc 0x94
# CHECK: xxlxor 7, 63, 27
0xf0 0xff 0xdc 0xd4
# CHECK: xxmrghd 7, 63, 27
0xf0 0xff 0xd8 0x54
# CHECK: xxmrghw 7, 63, 27
0xf0 0xff 0xd8 0x94
# CHECK: xxmrgld 7, 63, 27
0xf0 0xff 0xdb 0x54
# CHECK: xxmrglw 7, 63, 27
0xf0 0xff 0xd9 0x94
# CHECK: xxpermdi 7, 63, 27, 2
0xf0 0xff 0xda 0x54
# CHECK: xxsel 7, 63, 27, 14
0xf0 0xff 0xdb 0xb4
# CHECK: xxsldwi 7, 63, 27, 1
0xf0 0xff 0xd9 0x14
# CHECK: xxspltd 7, 63, 1
0xf0 0xff 0xfb 0x56
# CHECK: xxspltw 7, 27, 3
0xf0 0xe3 0xda 0x90
# CHECK: xxswapd 7, 63
0xf0 0xff 0xfa 0x56
# CHECK: mfvsrd 3, 0
0x7c 0x03 0x00 0x66
# CHECK: mfvsrwz 5, 0
0x7c 0x05 0x00 0xe6
# CHECK: mtvsrd 0, 3
0x7c 0x03 0x01 0x66
# CHECK: mtvsrwa 0, 3
0x7c 0x03 0x01 0xa6
# CHECK: mtvsrwz 0, 3
0x7c 0x03 0x01 0xe6