diff options
Diffstat (limited to 'gdb/testsuite/gdb.cell/sizeof.exp')
-rw-r--r-- | gdb/testsuite/gdb.cell/sizeof.exp | 120 |
1 files changed, 0 insertions, 120 deletions
diff --git a/gdb/testsuite/gdb.cell/sizeof.exp b/gdb/testsuite/gdb.cell/sizeof.exp deleted file mode 100644 index 8ea69e6..0000000 --- a/gdb/testsuite/gdb.cell/sizeof.exp +++ /dev/null @@ -1,120 +0,0 @@ -# Copyright 2009-2019 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/>. -# -# Contributed by Markus Deuling <deuling@de.ibm.com>. -# -# Testsuite for Cell Broadband Engine combined debugger -# Check size of data types both on PPU and SPU. - -load_lib cell.exp - -set ppu_file "size" -set ppu_src ${srcdir}/${subdir}/${ppu_file}.c -set ppu_bin [standard_output_file ${ppu_file}] -set spu_file "size-spu" -set spu_src ${srcdir}/${subdir}/${spu_file}.c -set spu_bin [standard_output_file ${spu_file}] - -if {[skip_cell_tests]} { - return 0 -} - -# Compile SPU binary. -if { [gdb_compile_cell_spu $spu_src $spu_bin executable {debug}] != "" } { - unsupported "compiling spu binary failed." - return -1 -} -# Compile PPU binary. -if { [gdb_cell_embedspu $spu_bin $spu_bin-embed.o {debug}] != "" } { - unsupported "embedding spu binary failed." - return -1 -} -if { [gdb_compile_cell_ppu [list $ppu_src $spu_bin-embed.o] $ppu_bin executable {debug}] != "" } { - unsupported "compiling ppu binary failed." - return -1 -} - -if [get_compiler_info] { - return -1 -} - - -# Ask GDB about the sizes of data types. This has -# to be done in PPU thread and SPU thread. -proc get_gdb_size { type } { - global gdb_prompt - - set val "0" - gdb_test_multiple "print/d sizeof(${type})" "get sizeof(${type})" { - -re "\\$\[0-9\]* = (\[-\]*\[0-9\]*).*$gdb_prompt $" { - set val $expect_out(1,string) - pass "get sizeof ($type) = $val" - } - } - return ${val} -} - -# Compare sizes from GDB and sizeof(). -proc size_compare { type gdb_size } { - set expr [string_to_regexp "sizeof(${type})=${gdb_size}"] - gdb_test "next" \ - ".*" \ - "next" - # Checks against string_to_regexp fails in remote testing. - if ![is_remote target] { - gdb_test "next" \ - "${expr}.*" \ - "check sizeof \"$type\" \"$gdb_size\" " - } else { - gdb_test "next" ".*" "check sizeof deactivate in remote testing" - } -} - -gdb_exit -gdb_start -gdb_reinitialize_dir $srcdir/$subdir -gdb_load ${ppu_bin} - -if ![runto_main] then { - fail "can't run to main" - return 0 -} - -# Compare sizes. -size_compare "char" [get_gdb_size "char"] -size_compare "short" [get_gdb_size "short"] -size_compare "int" [get_gdb_size "int"] -size_compare "long" [get_gdb_size "long"] -size_compare "long long" [get_gdb_size "long long"] -size_compare "float" [get_gdb_size "float"] -size_compare "double" [get_gdb_size "double"] -size_compare "long double" [get_gdb_size "long double"] - -# Continue to SPU thread. -cont_spu_main -check_spu_arch "" - -# Compare sizes in SPU thread. -size_compare "char" [get_gdb_size "char"] -size_compare "short" [get_gdb_size "short"] -size_compare "int" [get_gdb_size "int"] -size_compare "long" [get_gdb_size "long"] -size_compare "long long" [get_gdb_size "long long"] -size_compare "float" [get_gdb_size "float"] -size_compare "double" [get_gdb_size "double"] -size_compare "long double" [get_gdb_size "long double"] - -gdb_exit -return 0 |