# Copyright 2009-2013 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.

#
# This test tests some i386 general instructions for reverse execution.
#

if ![supports_reverse] {
    return
}


if ![istarget "*86*-*linux*"] then {
    verbose "Skipping i386 reverse tests."
    return
}

standard_testfile

# some targets have leading underscores on assembly symbols.
set additional_flags [gdb_target_symbol_prefix_flags]

if {[prepare_for_testing $testfile.exp $testfile $srcfile \
	 [list debug $additional_flags]]} {
    return -1
}

set end_of_main          [gdb_get_line_number " end of main "]
set end_sse_test         [gdb_get_line_number " end sse_test "]
set end_ssse3_test       [gdb_get_line_number " end ssse3_test "]
set end_sse4_test         [gdb_get_line_number " end sse4_test "]

runto main

if [supports_process_record] {
    # Activate process record/replay
    gdb_test_no_output "record" "Turn on process record"
}

global hex
global decimal

#sse_test

gdb_test "break $end_sse_test" \
    "Breakpoint $decimal at .* line $end_sse_test\." \
    "set breakpoint at end of sse_test"

set test "continue to end of sse_test"
gdb_test_multiple "continue" $test {
    -re " end sse_test .*\r\n$gdb_prompt $" {
	pass $test
    }
    -re " Illegal instruction.*\r\n$gdb_prompt $" {
	untested i386-sse-reverse
	return -1
    }
}

gdb_test "reverse-step" "xorps.*" "reverse-step to xorps"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0xf000c00080008000f800c00080008000.*" \
    "verify xmm0 at end of sse_test"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x70004000000000007800400000000000.*" \
    "verify xmm1 at end of sse_test"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xf000c000f800c000f000c000f000c000.*" \
    "verify xmm2 at end of sse_test"

gdb_test "reverse-step" "xorpd.*" "reverse-step to xorpd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0xf000c00080008000f800c00080008000.*" \
    "verify xmm0 after reverse xorps"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x80008000800080008000800080008000.*" \
    "verify xmm1 after reverse xorps"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xf000c000f800c000f000c000f000c000.*" \
    "verify xmm2 after reverse xorps"

gdb_test "reverse-step" "unpckhps.*" "reverse-step to unpckhps"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x8000800080008000fff00000ffc00000.*" \
    "verify xmm0 after reverse xorpd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x80008000800080008000800080008000.*" \
    "verify xmm1 after reverse xorpd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xf000c000f800c000f000c000f000c000.*" \
    "verify xmm2 after reverse xorpd"

gdb_test "reverse-step" "unpckhpd.*" "reverse-step to unpckhpd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0xfff00000ffc00000fff80000ffc00000.*" \
    "verify xmm0 after reverse unpckhps"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x80008000800080008000800080008000.*" \
    "verify xmm1 after reverse unpckhps"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xf000c000f800c000f000c000f000c000.*" \
    "verify xmm2 after reverse unpckhps"

gdb_test "reverse-step" "ucomiss.*" "reverse-step to ucomiss"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0xfff00000ffc00000fff80000ffc00000.*" \
    "verify xmm0 after reverse unpckhpd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x80008000800080008000800080008000.*" \
    "verify xmm1 after reverse unpckhpd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xf000c000f800c000f000c000f000c000.*" \
    "verify xmm2 after reverse unpckhpd"

gdb_test "reverse-step" "ucomisd.*" "reverse-step to ucomisd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0xfff00000ffc00000fff80000ffc00000.*" \
    "verify xmm0 after reverse ucomiss"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x80008000800080008000800080008000.*" \
    "verify xmm1 after reverse ucomiss"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xf000c000f800c000f000c000f000c000.*" \
    "verify xmm2 after reverse ucomiss"

gdb_test "reverse-step" "packssdw.*" "reverse-step to packssdw"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0xfff00000ffc00000fff80000ffc00000.*" \
    "verify xmm0 after reverse ucomisd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0xfff80000ffc00000fff80000ffc00000.*" \
    "verify xmm1 after reverse ucomisd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xf000c000f800c000f000c000f000c000.*" \
    "verify xmm2 after reverse ucomisd"

gdb_test "reverse-step" "packsswb.*" "reverse-step to packsswb"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0xfff00000ffc00000fff80000ffc00000.*" \
    "verify xmm0 after reverse packssdw"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0xfff80000ffc00000fff80000ffc00000.*" \
    "verify xmm1 after reverse packssdw"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xfff00000ffc00000fff00000ffc00000.*" \
    "verify xmm2 after reverse packssdw"

gdb_test "reverse-step" "orps.*" "reverse-step to orps"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0xfff00000ffc00000fff80000ffc00000.*" \
    "verify xmm0 after reverse packsswb"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0xfff80000ffc00000fff80000ffc00000.*" \
    "verify xmm1 after reverse packsswb"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xfff00000ffc00000fff00000ffc00000.*" \
    "verify xmm2 after reverse packsswb"

gdb_test "reverse-step" "orpd.*" "reverse-step to orpd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0000000000000000fff80000ffc00000.*" \
    "verify xmm0 after reverse orps"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0xfff80000ffc00000fff80000ffc00000.*" \
    "verify xmm1 after reverse orps"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xfff00000ffc00000fff00000ffc00000.*" \
    "verify xmm2 after reverse orps"

gdb_test "reverse-step" "mulss.*" "reverse-step to mulss"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0000000000000000fff80000ffc00000.*" \
    "verify xmm0 after reverse orpd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0xfff80000ffc00000fff80000ffc00000.*" \
    "verify xmm1 after reverse orpd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xfff00000ffc00000fff00000ffc00000.*" \
    "verify xmm2 after reverse orpd"

gdb_test "reverse-step" "mulsd.*" "reverse-step to mulsd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0000000000000000fff80000ffc00000.*" \
    "verify xmm0 after reverse mulss"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0xfff80000ffc00000fff80000ffc00000.*" \
    "verify xmm1 after reverse mulss"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xfff00000ffc00000fff00000ffc00000.*" \
    "verify xmm2 after reverse mulss"

gdb_test "reverse-step" "mulps.*" "reverse-step to mulps"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0000000000000000fff80000ffc00000.*" \
    "verify xmm0 after reverse mulsd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0xfff80000ffc00000fff80000ffc00000.*" \
    "verify xmm1 after reverse mulsd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xfff0000000000000fff00000ffc00000.*" \
    "verify xmm2 after reverse mulsd"

gdb_test "reverse-step" "mulpd.*" "reverse-step to mulpd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0000000000000000fff80000ffc00000.*" \
    "verify xmm0 after reverse mulps"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0xfff00000ffc00000fff00000ffc00000.*" \
    "verify xmm1 after reverse mulps"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xfff0000000000000fff00000ffc00000.*" \
    "verify xmm2 after reverse mulps"

gdb_test "reverse-step" "divss.*" "reverse-step to divss"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0000000000000000fff80000ffc00000.*" \
    "verify xmm0 after reverse mulpd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0xfff00000ffc00000fff00000ffc00000.*" \
    "verify xmm1 after reverse mulpd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xfff0000000000000fff0000000000000.*" \
    "verify xmm2 after reverse mulpd"

gdb_test "reverse-step" "divsd.*" "reverse-step to divsd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x00000000000000008000000080000000.*" \
    "verify xmm0 after reverse divss"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0xfff00000ffc00000fff00000ffc00000.*" \
    "verify xmm1 after reverse divss"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xfff0000000000000fff0000000000000.*" \
    "verify xmm2 after reverse divss"

gdb_test "reverse-step" "divps.*" "reverse-step to divps"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x00000000000000008000000080000000.*" \
    "verify xmm0 after reverse divsd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x00000000000000000000000080000000.*" \
    "verify xmm1 after reverse divsd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xfff0000000000000fff0000000000000.*" \
    "verify xmm2 after reverse divsd"

gdb_test "reverse-step" "divpd.*" "reverse-step to divpd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x00000000000000008000000080000000.*" \
    "verify xmm0 after reverse divps"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x00000000000000000000000080000000.*" \
    "verify xmm1 after reverse divps"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xbff0000000000000bff0000000000000.*" \
    "verify xmm2 after reverse divps"

gdb_test "reverse-step" "cvtpd2ps.*" "reverse-step to cvtpd2ps"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x00000000000000008000000080000000.*" \
    "verify xmm0 after reverse divpd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0xce80200000000000ce80200000000000.*" \
    "verify xmm1 after reverse divpd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xbff0000000000000bff0000000000000.*" \
    "verify xmm2 after reverse divpd"

gdb_test "reverse-step" "cvtpd2dq.*" "reverse-step to cvtpd2dq"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a090807060504ffffffff.*" \
    "verify xmm0 after reverse cvtpd2ps"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0xce80200000000000ce80200000000000.*" \
    "verify xmm1 after reverse cvtpd2ps"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xbff0000000000000bff0000000000000.*" \
    "verify xmm2 after reverse cvtpd2ps"

gdb_test "reverse-step" "cvtdq2ps.*" "reverse-step to cvtdq2ps"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a090807060504ffffffff.*" \
    "verify xmm0 after reverse cvtpd2dq"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x0000000000000000ffffffffffffffff.*" \
    "verify xmm1 after reverse cvtpd2dq"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xbff0000000000000bff0000000000000.*" \
    "verify xmm2 after reverse cvtpd2dq"

gdb_test "reverse-step" "cvtdq2pd.*" "reverse-step to cvtdq2pd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a090807060504ffffffff.*" \
    "verify xmm0 after reverse cvtdq2ps"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x0000000000000000ffffffffffffffff.*" \
    "verify xmm1 after reverse cvtdq2ps"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xffffffffffffffffffffffff00000000.*" \
    "verify xmm2 after reverse cvtdq2ps"

gdb_test "reverse-step" "comiss.*" "reverse-step to comiss"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a090807060504ffffffff.*" \
    "verify xmm0 after reverse cvtdq2pd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x0000000000000000ffffffffffffffff.*" \
    "verify xmm1 after reverse cvtdq2pd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xffffffffffffffffffffffff00000000.*" \
    "verify xmm2 after reverse cvtdq2pd"

gdb_test "reverse-step" "comisd.*" "reverse-step to comisd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a090807060504ffffffff.*" \
    "verify xmm0 after reverse comiss"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x0000000000000000ffffffffffffffff.*" \
    "verify xmm1 after reverse comiss"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xffffffffffffffffffffffff00000000.*" \
    "verify xmm2 after reverse comiss"

gdb_test "reverse-step" "cmpss.*" "reverse-step to cmpss"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050423222120.*" \
    "verify xmm0 after reverse comisd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x0000000000000000ffffffffffffffff.*" \
    "verify xmm1 after reverse comisd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xffffffffffffffffffffffff00000000.*" \
    "verify xmm2 after reverse comisd"

gdb_test "reverse-step" "cmpsd.*" "reverse-step to cmpsd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050423222120.*" \
    "verify xmm0 after reverse cmpss"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x00000000000000000000000000000000.*" \
    "verify xmm1 after reverse cmpss"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0xffffffffffffffffffffffff00000000.*" \
    "verify xmm2 after reverse cmpss"

gdb_test "reverse-step" "cmpps.*" "reverse-step to cmpps"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050423222120.*" \
    "verify xmm0 after reverse cmpsd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x00000000000000000000000000000000.*" \
    "verify xmm1 after reverse cmpsd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x0f0e0d0c0b0a09082726252400000000.*" \
    "verify xmm2 after reverse cmpsd"

gdb_test "reverse-step" "cmppd.*" "reverse-step to cmppd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050423222120.*" \
    "verify xmm0 after reverse cmpps"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x0f0e0d0c0b0a09082726252400000000.*" \
    "verify xmm1 after reverse cmpps"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x0f0e0d0c0b0a09082726252400000000.*" \
    "verify xmm2 after reverse cmpps"

gdb_test "reverse-step" "andps.*" "reverse-step to andps"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050423222120.*" \
    "verify xmm0 after reverse cmppd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19182726252400000000.*" \
    "verify xmm1 after reverse cmppd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x0f0e0d0c0b0a09082726252400000000.*" \
    "verify xmm2 after reverse cmppd"

gdb_test "reverse-step" "andpd.*" "reverse-step to andpd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050423222120.*" \
    "verify xmm0 after reverse andps"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19182726252400000000.*" \
    "verify xmm1 after reverse andps"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x2f2e2d2c2b2a29282726252423222120.*" \
    "verify xmm2 after reverse andps"

gdb_test "reverse-step" "addsubps.*" "reverse-step to addsubps"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050423222120.*" \
    "verify xmm0 after reverse andpd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19182726252423222120.*" \
    "verify xmm1 after reverse andpd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x2f2e2d2c2b2a29282726252423222120.*" \
    "verify xmm2 after reverse andpd"

gdb_test "reverse-step" "addsubpd.*" "reverse-step to addsubpd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050423222120.*" \
    "verify xmm0 after reverse addsubps"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19182726252423222120.*" \
    "verify xmm1 after reverse addsubps"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x2f2e2d2c2b2a29282726252423222120.*" \
    "verify xmm2 after reverse addsubps"

gdb_test "reverse-step" "addss.*" "reverse-step to addss"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050403020100.*" \
    "verify xmm0 after reverse addsubpd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19182726252423222120.*" \
    "verify xmm1 after reverse addsubpd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x2f2e2d2c2b2a29282726252423222120.*" \
    "verify xmm2 after reverse addsubpd"

gdb_test "reverse-step" "addsd.*" "reverse-step to addsd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050403020100.*" \
    "verify xmm0 after reverse addss"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm1 after reverse addss"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x2f2e2d2c2b2a29282726252423222120.*" \
    "verify xmm2 after reverse addss"

gdb_test "reverse-step" "addps.*" "reverse-step to addps"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050403020100.*" \
    "verify xmm0 after reverse addsd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm1 after reverse addsd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x2f2e2d2c2b2a29282726252423222120.*" \
    "verify xmm2 after reverse addsd"

gdb_test "reverse-step" "addpd.*" "reverse-step to addpd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050403020100.*" \
    "verify xmm0 after reverse addps"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm1 after reverse addps"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x2f2e2d2c2b2a29282726252423222120.*" \
    "verify xmm2 after reverse addps"


#ssse3_test

gdb_test "continue" \
    " end sse_test .*" \
    "continue to end of sse_test #2"

gdb_test "break $end_ssse3_test" \
    "Breakpoint $decimal at .* line $end_ssse3_test\." \
    "set breakpoint at end of ssse3_test"

set test "continue to end of ssse3_test"
gdb_test_multiple "continue" $test {
    -re " end ssse3_test .*\r\n$gdb_prompt $" {
	pass $test
    }
    -re " Illegal instruction.*\r\n$gdb_prompt $" {
	untested i386-ssse3-reverse
	return -1
    }
}

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm0 at end of ssse3_test"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm1 at end of ssse3_test"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm2 at end of ssse3_test"

gdb_test "reverse-step" "pabsd.*" "reverse-step to pabsd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050403020100.*" \
    "verify xmm0 after reverse pabsd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm1 after reverse pabsd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm2 after reverse pabsd"

gdb_test "reverse-step" "pabsw.*" "reverse-step to pabsw"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050403020100.*" \
    "verify xmm0 after reverse pabsw"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm1 after reverse pabsw"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm2 after reverse pabsw"

gdb_test "reverse-step" "pabsb.*" "reverse-step to pabsb"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050403020100.*" \
    "verify xmm0 after reverse pabsb"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm1 after reverse pabsb"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x2f2e2d2c2b2a29282726252423222120.*" \
    "verify xmm2 after reverse pabsb"


#sse4_test

gdb_test "continue" \
    " end ssse3_test .*" \
    "continue to end of ssse3_test #2"

gdb_test "break $end_sse4_test" \
    "Breakpoint $decimal at .* line $end_sse4_test\." \
    "set breakpoint at end of sse4_test"

set test "continue to end of sse4_test"
gdb_test_multiple "continue" $test {
    -re " end sse4_test .*\r\n$gdb_prompt $" {
	pass $test
    }
    -re " Illegal instruction.*\r\n$gdb_prompt $" {
	untested i386-sse4-reverse
        return -1
    }
}

gdb_test "reverse-step" "blendvps.*" "reverse-step to blendvps"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09082726252413121110.*" \
    "verify xmm0 at end of sse4_test"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm1 at end of sse4_test"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x2f2e2d2c2b2a29282726252423222120.*" \
    "verify xmm2 at end of sse4_test"

gdb_test "reverse-step" "blendvpd.*" "reverse-step to blendvpd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09082726252413121110.*" \
    "verify xmm0 after reverse blendvps"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm1 after reverse blendvps"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x2f2e2d2c2b2a29282726252423222120.*" \
    "verify xmm2 after reverse blendvps"

gdb_test "reverse-step" "blendps.*" "reverse-step to blendps"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09081716151413121110.*" \
    "verify xmm0 after reverse blendvpd"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm1 after reverse blendvpd"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x2f2e2d2c2b2a29282726252423222120.*" \
    "verify xmm2 after reverse blendvpd"

gdb_test "reverse-step" "blendpd.*" "reverse-step to blendpd"

gdb_test "info register xmm0" \
    "xmm0 .*uint128 = 0x0f0e0d0c0b0a09080706050403020100.*" \
    "verify xmm0 after reverse blendps"

gdb_test "info register xmm1" \
    "xmm1 .*uint128 = 0x1f1e1d1c1b1a19181716151413121110.*" \
    "verify xmm1 after reverse blendps"

gdb_test "info register xmm2" \
    "xmm2 .*uint128 = 0x2f2e2d2c2b2a29282726252423222120.*" \
    "verify xmm2 after reverse blendps"
