# Copyright 2014-2021 Free Software Foundation, Inc.

# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

# This file is part of the gdb testsuite.

# Test PowerPC instructions disassembly.

standard_testfile .s
set objfile [standard_output_file ${testfile}.o]

if {![istarget "powerpc*-*-*"]} then {
    verbose "Skipping PowerPC instructions disassembly."
    return
}

if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${objfile}" object {debug}] != "" } {
    untested "PowerPC instructions disassembly"
    return -1
}

clean_restart ${objfile}

# Disassemble the function.
set func ""

gdb_test "set disassembler-options power9"
set test "disass func"
gdb_test_multiple $test $test {
    -re "\r\nDump of assembler code for function func:(\r\n.*\r\n)End of assembler dump.\r\n$gdb_prompt $" {
	set func $expect_out(1,string)
	pass $test
    }
}

proc instr_to_patt {instr} {
    global decimal hex
    # 0x0000000000000018 <+24>:	stxvd2x vs43,r4,r5
    return "\[ \t\]*$hex <\\+$decimal>:\[ \t\]*[string_to_regexp $instr]"
}

proc func_check {instr} {
    global func

    set test "found: $instr"
    if [regexp -nocase -line [instr_to_patt $instr] $func] {
	pass $test
    } else {
	fail $test
    }
}

func_check "cnttzd  r3,r13"
func_check "cnttzd. r4,r14"
func_check "cnttzw  r5,r15"
func_check "cnttzw. r6,r16"
func_check "modsd   r10,r20,r21"
func_check "modsw   r11,r21,r22"
func_check "modud   r12,r22,r23"
func_check "moduw   r13,r23,r24"
func_check "bcdcfn. v3,v4,0"
func_check "bcdcfn. v3,v4,1"
func_check "bcdcfsq. v4,v5,0"
func_check "bcdcfsq. v4,v5,1"
func_check "bcdcfz. v5,v6,0"
func_check "bcdcfz. v5,v6,1"
func_check "bcdcpsgn. v6,v7,v8"
func_check "bcdctn. v7,v8"
func_check "bcdctsq. v8,v9"
func_check "bcdctz. v9,v10,0"
func_check "bcdctz. v9,v10,1"
func_check "bcdsetsgn. v10,v11,0"
func_check "bcdsetsgn. v10,v11,1"
func_check "bcdsr.  v11,v12,v13,0"
func_check "bcdsr.  v11,v12,v13,1"
func_check "bcds.   v12,v13,v14,0"
func_check "bcds.   v12,v13,v14,1"
func_check "bcdtrunc. v13,v14,v15,0"
func_check "bcdtrunc. v13,v14,v15,1"
func_check "bcdus.  v14,v15,v16"
func_check "bcdutrunc. v15,v16,v17"
func_check "lxvll   vs20,0,r21"
func_check "lxvll   vs20,r10,r21"
func_check "stxvll  vs21,0,r11"
func_check "stxvll  vs21,r10,r11"
func_check "vmul10cuq v22,v23"
func_check "vmul10ecuq v23,v24,v25"
func_check "vmul10euq v24,v25,v26"
func_check "vmul10uq v25,v26"
func_check "xsaddqp v10,v11,v12"
func_check "xsaddqpo v11,v12,v12"
func_check "xsrqpi  0,v20,v30,0"
func_check "xsrqpi  1,v20,v30,0"
func_check "xsrqpi  0,v20,v30,3"
func_check "xsrqpi  1,v20,v30,3"
func_check "xsrqpix 0,v21,v31,0"
func_check "xsrqpix 1,v21,v31,0"
func_check "xsrqpix 0,v21,v31,3"
func_check "xsrqpix 1,v21,v31,3"
func_check "xsmulqp v12,v13,v14"
func_check "xsmulqpo v13,v14,v15"
func_check "xsrqpxp 0,v22,v23,0"
func_check "xsrqpxp 1,v22,v23,0"
func_check "xsrqpxp 0,v22,v23,3"
func_check "xsrqpxp 1,v22,v23,3"
func_check "xscpsgnqp v14,v15,v16"
func_check "xscmpoqp cr0,v15,v16"
func_check "xscmpoqp cr7,v15,v16"
func_check "xscmpexpqp cr0,v16,v17"
func_check "xscmpexpqp cr7,v16,v17"
func_check "xsmaddqp v17,v18,v19"
func_check "xsmaddqpo v18,v19,v20"
func_check "xsmsubqp v19,v20,v21"
func_check "xsmsubqpo v20,v21,v22"
func_check "xsnmaddqp v21,v22,v23"
func_check "xsnmaddqpo v22,v23,v24"
func_check "xsnmsubqp v23,v24,v25"
func_check "xsnmsubqpo v24,v25,v26"
func_check "xssubqp v25,v26,v27"
func_check "xssubqpo v26,v27,v28"
func_check "xsdivqp v27,v28,v29"
func_check "xsdivqpo v28,v29,v30"
func_check "xscmpuqp cr0,v29,v30"
func_check "xscmpuqp cr7,v29,v30"
func_check "xststdcqp cr0,v30,0"
func_check "xststdcqp cr7,v30,0"
func_check "xststdcqp cr0,v31,127"
func_check "xststdcqp cr7,v31,127"
func_check "xsabsqp v10,v11"
func_check "xsxexpqp v11,v12"
func_check "xsnabsqp v12,v13"
func_check "xsnegqp v13,v14"
func_check "xsxsigqp v14,v15"
func_check "xssqrtqp v15,v16"
func_check "xssqrtqpo v16,v17"
func_check "xscvqpuwz v17,v18"
func_check "xscvudqp v18,v19"
func_check "xscvqpswz v19,v20"
func_check "xscvsdqp v20,v21"
func_check "xscvqpudz v21,v22"
func_check "xscvqpdp v22,v23"
func_check "xscvqpdpo v23,v24"
func_check "xscvdpqp v24,v25"
func_check "xscvqpsdz v25,v26"
func_check "xsiexpqp v26,v27,v28"
func_check "vpermr  v4,v5,v6,v7"
func_check "vextractub v5,v6,0"
func_check "vextractub v5,v6,15"
func_check "vextractuh v6,v7,0"
func_check "vextractuh v6,v7,15"
func_check "vextractuw v7,v8,0"
func_check "vextractuw v7,v8,15"
func_check "vextractd v8,v9,0"
func_check "vextractd v8,v9,15"
func_check "vinsertb v9,v10,0"
func_check "vinsertb v9,v10,15"
func_check "vinserth v10,v11,0"
func_check "vinserth v10,v11,15"
func_check "vinsertw v11,v12,0"
func_check "vinsertw v11,v12,15"
func_check "vinsertd v12,v13,0"
func_check "vinsertd v12,v13,15"
func_check "mfvsrld r20,vs45"
func_check "mtvsrws vs46,r21"
func_check "mtvsrdd vs47,0,r23"
func_check "mtvsrdd vs47,r22,r23"
func_check "lxvx    vs50,0,r11"
func_check "lxvx    vs0,r10,r11"
func_check "lxvwsx  vs51,0,r12"
func_check "lxvwsx  vs1,r10,r12"
func_check "lxvh8x  vs52,0,r13"
func_check "lxvh8x  vs2,r10,r13"
func_check "lxvb16x vs53,0,r14"
func_check "lxvb16x vs3,r10,r14"
func_check "stxvx   vs54,0,r15"
func_check "stxvx   vs4,r20,r15"
func_check "stxvh8x vs55,0,r16"
func_check "stxvh8x vs5,r20,r16"
func_check "stxvb16x vs56,0,r17"
func_check "stxvb16x vs6,r20,r17"
func_check "xxextractuw vs4,vs5,0"
func_check "xxextractuw vs40,vs50,15"
func_check "xxspltib vs4,0"
func_check "xxspltib vs4,128"
func_check "xxspltib vs41,255"
func_check "xxinsertw vs5,vs6,0"
func_check "xxinsertw vs50,vs60,15"
func_check "xxbrh   vs6,vs7"
func_check "xxbrh   vs56,vs57"
func_check "xxbrw   vs7,vs8"
func_check "xxbrw   vs57,vs58"
func_check "xxbrd   vs8,vs9"
func_check "xxbrd   vs58,vs59"
func_check "xxbrq   vs9,vs10"
func_check "xxbrq   vs59,vs60"
func_check "lxsd    v20,0(0)"
func_check "lxsd    v20,0(r10)"
func_check "lxsd    v20,8(0)"
func_check "lxsd    v20,8(r10)"
func_check "lxsd    v20,-8(0)"
func_check "lxsd    v20,-8(r10)"
func_check "lxsd    v20,32764(0)"
func_check "lxsd    v20,32764(r10)"
func_check "lxsd    v20,-32768(0)"
func_check "lxsd    v20,-32768(r10)"
func_check "lxssp   v30,0(0)"
func_check "lxssp   v30,0(r11)"
func_check "lxssp   v30,8(0)"
func_check "lxssp   v30,8(r11)"
func_check "lxssp   v30,-8(0)"
func_check "lxssp   v30,-8(r11)"
func_check "lxssp   v30,32764(0)"
func_check "lxssp   v30,32764(r11)"
func_check "lxssp   v30,-32768(0)"
func_check "lxssp   v30,-32768(r11)"
func_check "lxv     vs40,0(0)"
func_check "lxv     vs40,0(r12)"
func_check "lxv     vs40,16(0)"
func_check "lxv     vs40,16(r12)"
func_check "lxv     vs40,-16(0)"
func_check "lxv     vs10,-16(r12)"
func_check "lxv     vs10,32752(0)"
func_check "lxv     vs10,32752(r12)"
func_check "lxv     vs10,-32768(0)"
func_check "lxv     vs10,-32768(r12)"
func_check "stxsd   v21,0(0)"
func_check "stxsd   v21,0(r10)"
func_check "stxsd   v21,8(0)"
func_check "stxsd   v21,8(r10)"
func_check "stxsd   v21,-8(0)"
func_check "stxsd   v21,-8(r10)"
func_check "stxsd   v21,32764(0)"
func_check "stxsd   v21,32764(r10)"
func_check "stxsd   v21,-32768(0)"
func_check "stxsd   v21,-32768(r10)"
func_check "stxssp  v31,0(0)"
func_check "stxssp  v31,0(r11)"
func_check "stxssp  v31,8(0)"
func_check "stxssp  v31,8(r11)"
func_check "stxssp  v31,-8(0)"
func_check "stxssp  v31,-8(r11)"
func_check "stxssp  v31,32764(0)"
func_check "stxssp  v31,32764(r11)"
func_check "stxssp  v31,-32768(0)"
func_check "stxssp  v31,-32768(r11)"
func_check "stxv    vs41,0(0)"
func_check "stxv    vs41,0(r12)"
func_check "stxv    vs41,16(0)"
func_check "stxv    vs41,16(r12)"
func_check "stxv    vs41,-16(0)"
func_check "stxv    vs11,-16(r12)"
func_check "stxv    vs11,32752(0)"
func_check "stxv    vs11,32752(r12)"
func_check "stxv    vs11,-32768(0)"
func_check "stxv    vs11,-32768(r12)"
func_check "xxperm  vs20,vs22,vs24"
func_check "xxperm  vs40,vs42,vs44"
func_check "xxpermr vs21,vs23,vs25"
func_check "xxpermr vs41,vs43,vs45"
func_check "extswsli r12,r20,0"
func_check "extswsli r12,r20,1"
func_check "extswsli r12,r20,63"
func_check "extswsli. r13,r21,0"
func_check "extswsli. r13,r21,1"
func_check "extswsli. r13,r21,63"
func_check "vrlwmi  v14,v22,v23"
func_check "vrldmi  v15,v23,v24"
func_check "vrlwnm  v16,v24,v25"
func_check "vrldnm  v17,v25,v26"
func_check "vbpermd v18,v26,v27"
func_check "vnegw   v19,v20"
func_check "vnegd   v20,v21"
func_check "vprtybw v21,v22"
func_check "vprtybd v22,v23"
func_check "vprtybq v23,v24"
func_check "vextsb2w v24,v25"
func_check "vextsh2w v25,v26"
func_check "vextsb2d v26,v27"
func_check "vextsh2d v27,v28"
func_check "vextsw2d v28,v29"
func_check "vctzb   v29,v30"
func_check "vctzh   v30,v31"
func_check "vctzw   v31,v30"
func_check "vctzd   v30,v29"
func_check "lxsibzx vs10,0,r20"
func_check "lxsibzx vs50,r10,r20"
func_check "lxsihzx vs11,0,r21"
func_check "lxsihzx vs51,r11,r21"
func_check "stxsibx vs12,0,r22"
func_check "stxsibx vs52,r12,r22"
func_check "stxsihx vs13,0,r23"
func_check "stxsihx vs53,r13,r23"
func_check "maddhd  r10,r11,r12,r13"
func_check "maddhdu r20,r21,r22,r23"
func_check "maddld  r2,r3,r4,r5"
func_check "xscmpexpdp cr0,vs10,vs20"
func_check "xscmpexpdp cr7,vs40,vs50"
func_check "xsiexpdp vs41,r11,r21"
func_check "xststdcdp cr0,vs11,127"
func_check "xststdcdp cr7,vs41,127"
func_check "xststdcsp cr0,vs11,127"
func_check "xststdcsp cr7,vs41,127"
func_check "xsxexpdp r13,vs43"
func_check "xsxsigdp r14,vs44"
func_check "xviexpdp vs45,vs46,vs47"
func_check "xviexpsp vs46,vs47,vs48"
func_check "xvtstdcdp vs54,vs55,0"
func_check "xvtstdcdp vs54,vs55,127"
func_check "xvtstdcsp vs55,vs56,0"
func_check "xvtstdcsp vs55,vs56,127"
func_check "xvxexpdp vs57,vs58"
func_check "xvxexpsp vs58,vs59"
func_check "xvxsigdp vs59,vs60"
func_check "xvxsigsp vs60,vs61"
func_check "cmpeqb  cr0,r6,r7"
func_check "cmpeqb  cr7,r6,r7"
func_check "cmprb   cr0,0,r8,r9"
func_check "cmprb   cr7,0,r8,r9"
func_check "cmprb   cr0,1,r8,r9"
func_check "cmprb   cr7,1,r8,r9"
func_check "setb    r15,cr0"
func_check "setb    r15,cr7"
func_check "lxvl    vs26,0,r10"
func_check "lxvl    vs56,r20,r10"
func_check "stxvl   vs27,0,r11"
func_check "stxvl   vs57,r21,r11"
func_check "vclzlsbb r20,v30"
func_check "vctzlsbb r21,v31"
func_check "vcmpneb v10,v11,v12"
func_check "vcmpneb. v20,v21,v22"
func_check "vcmpneh v11,v12,v13"
func_check "vcmpneh. v21,v22,v23"
func_check "vcmpnew v12,v13,v14"
func_check "vcmpnew. v22,v23,v24"
func_check "vcmpnezb v13,v14,v15"
func_check "vcmpnezb. v23,v24,v25"
func_check "vcmpnezh v14,v15,v16"
func_check "vcmpnezh. v24,v25,v26"
func_check "vcmpnezw v15,v16,v17"
func_check "vcmpnezw. v25,v26,v27"
func_check "vextublx r16,r17,v10"
func_check "vextubrx r17,r18,v11"
func_check "vextuhlx r18,r19,v12"
func_check "vextuhrx r19,r20,v13"
func_check "vextuwlx r20,r21,v14"
func_check "vextuwrx r21,r22,v15"
func_check "dtstsfi cr0,0,f3"
func_check "dtstsfi cr7,63,f3"
func_check "dtstsfiq cr0,0,f4"
func_check "dtstsfiq cr7,63,f4"
func_check "xscvhpdp vs40,vs50"
func_check "xscvdphp vs41,vs51"
func_check "xvcvhpsp vs42,vs52"
func_check "xvcvsphp vs43,vs53"
func_check "lnia    r3"
func_check "addpcis r4,1"
func_check "addpcis r5,-2"
func_check "addpcis r6,32767"
func_check "addpcis r7,-32768"
func_check "slbsync"
func_check "slbiag  r10"
func_check "slbieg  r10,r11"
func_check "slbmfee r3,r4"
func_check "slbmfee r3,r4,1"
func_check "slbmfev r4,r5"
func_check "slbmfev r4,r5,1"
func_check "tlbie   r3,r4"
func_check "tlbie   r3,r4,3,1,1"
func_check "tlbiel  r3"
func_check "tlbiel  r3,r4,3,1,1"
func_check "copy    r12,r13"
func_check "paste.  r10,r11"
func_check "cpabort"
func_check "hwsync"
func_check "lwsync"
func_check "ptesync"
func_check "ldat    r20,0,0"
func_check "ldat    r20,r10,28"
func_check "lwat    r21,0,0"
func_check "lwat    r21,r11,28"
func_check "stdat   r22,0,0"
func_check "stdat   r22,r12,28"
func_check "stwat   r23,0,0"
func_check "stwat   r23,r13,28"
func_check "urfid"
func_check "rmieg   r30"
func_check "stop"
func_check "wait"
func_check "darn    r3,0"
func_check "darn    r3,1"
func_check "darn    r3,2"
func_check "mcrxrx  cr0"
func_check "mcrxrx  cr7"
func_check "vslv    v20,v21,v22"
func_check "vsrv    v23,v24,v25"
func_check "msgsync"
func_check "xscmpeqdp vs30,vs40,vs50"
func_check "xscmpgtdp vs31,vs41,vs51"
func_check "xscmpgedp vs32,vs42,vs52"
func_check "xsmincdp vs34,vs44,vs54"
func_check "xsmaxcdp vs35,vs45,vs55"
func_check "xsminjdp vs36,vs46,vs56"
func_check "xsmaxjdp vs37,vs47,vs57"
func_check "vmsumudm v20,v21,v22,v23"
func_check "addex   r11,r12,r13,0"
func_check "addex   r11,r12,r13,1"
func_check "addex   r11,r12,r13,2"
func_check "mffs    f25"
func_check "mffs.   f25"
func_check "mffsce  f26"
func_check "mffscdrn f27,f20"
func_check "mffscdrni f28,0"
func_check "mffscdrni f28,7"
func_check "mffscrn f29,f21"
func_check "mffscrni f30,0"
func_check "mffscrni f30,3"
func_check "mffsl   f31"
