gdb/testsuite/
[deliverable/binutils-gdb.git] / gdb / testsuite / gdb.arch / powerpc-d128-regs.exp
CommitLineData
5e1a1926
TJB
1# This testcase is part of GDB, the GNU debugger.
2
28e7fd62 3# Copyright 2008-2013 Free Software Foundation, Inc.
5e1a1926
TJB
4
5# This program is free software; you can redistribute it and/or modify
6# it under the terms of the GNU General Public License as published by
7# the Free Software Foundation; either version 3 of the License, or
8# (at your option) any later version.
9#
10# This program is distributed in the hope that it will be useful,
11# but WITHOUT ANY WARRANTY; without even the implied warranty of
12# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13# GNU General Public License for more details.
14#
15# You should have received a copy of the GNU General Public License
16# along with this program. If not, see <http://www.gnu.org/licenses/>.
17
18# Please email any bugs, comments, and/or additions to this file to:
19# bug-gdb@gnu.org
20
21# Testcase for ppc decimal128 pseudo-registers.
22
5e1a1926
TJB
23if ![istarget "powerpc64-*"] then {
24 verbose "Skipping powerpc Decimal128 pseudo-registers testcase."
25 return
26}
27
28set testfile "powerpc-d128-regs"
29set srcfile ${testfile}.c
30set binfile ${objdir}/${subdir}/${testfile}
31
32if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {quiet debug}] != "" } {
33 untested powerpc-d128-regs.exp
34 return -1
35}
36
37# Start with a fresh gdb.
38
39gdb_exit
40gdb_start
41gdb_reinitialize_dir $srcdir/$subdir
42gdb_load ${binfile}
43
44if { ![runto main] } then {
45 fail "run to main"
46 return
47}
48
49if [gdb_test "show arch" ".*currently powerpc:common.*" "Checking for PPC arch"] {
ae59b1da 50 return -1
5e1a1926
TJB
51}
52
53gdb_test "next" ""
54
55for {set i 0} {$i < 16} {incr i 1} {
56gdb_test "set \$dl$i=d128" "" "Set dl$i register"
57
58gdb_test "print \$dl$i" "\\\$$decimal = 1\.2345678910" "Print dl$i register as DFP"
59
60gdb_test "info reg dl$i" \
61 "dl$i\[ \]*1\.2345678910\[\t\]*\\(raw 0x2205800000000000000000049c5de09c\\)" \
62 "Print dl$i register with the info reg command"
63
64gdb_test "info reg f[expr 2*$i]" \
65 "f[expr 2*$i]\[ \]*8\.608957309287334e\-145\[\t\]*\\(raw 0x2205800000000000\\)" \
66 "Testing lower half of dl$i register"
67
68gdb_test "info reg f[expr 2*$i+1]" \
69 "f[expr 2*$i+1]\[ \]*9\.7841140127686122e\-314\[\t\]*\\(raw 0x000000049c5de09c\\)" \
70 "Testing upper half of dl$i register"
71
72}
This page took 0.605402 seconds and 4 git commands to generate.