From: Indu Bhagat Date: Fri, 9 Feb 2024 07:10:27 +0000 (-0800) Subject: gas: scfi: fix failing test on Solaris2 X-Git-Tag: gdb-15-branchpoint~1014 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=272b9416f3ce062de0c28f8dfa2a4112993dd77c;p=thirdparty%2Fbinutils-gdb.git gas: scfi: fix failing test on Solaris2 It has been observed that the run of scfi-unsupported-1 test with --x32 arg on a Solaris2 x86_64 system fails: Executing on host: sh -c {../as-new --x32 --scfi=experimental \ <...>/scfi-unsupported-1.s 2>&1} /dev/null dump.out (timeout = 300) Assembler messages: Fatal error: no compiled in support for 32bit x86_64 regexp_diff match failure regexp "^Fatal error: SCFI is not supported for this ABI$" line "Fatal error: no compiled in support for 32bit x86_64" FAIL: x86_64 scfi-unsupported-1 Fix the above by adding a check for --x32 support before running the test. While at it, also include a similar check for --32 support. gas/testsuite/ * gas/scfi/x86_64/scfi-x86-64.exp: Add gas_x32_check and gas_32_check. Conditionalize the execution of affected testcases. --- diff --git a/gas/testsuite/gas/scfi/x86_64/scfi-x86-64.exp b/gas/testsuite/gas/scfi/x86_64/scfi-x86-64.exp index 9c76974fefe..5324af386f8 100644 --- a/gas/testsuite/gas/scfi/x86_64/scfi-x86-64.exp +++ b/gas/testsuite/gas/scfi/x86_64/scfi-x86-64.exp @@ -14,6 +14,22 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +proc gas_32_check { } { + global NM + global NMFLAGS + + set status [gas_host_run "$NM $NMFLAGS --help" ""] + return [regexp "targets:.*i386" [lindex $status 1]]; +} + +proc gas_x32_check { } { + global NM + global NMFLAGS + + set status [gas_host_run "$NM $NMFLAGS --help" ""] + return [regexp "targets:.*elf32-x86-64" [lindex $status 1]]; +} + if { ![is_elf_format] } then { return } @@ -40,8 +56,12 @@ if { ([istarget "x86_64-*-*"] && ![istarget "x86_64-*-linux*-gnux32"]) } then { run_list_test "scfi-fp-diag-2" "--scfi=experimental" run_list_test "scfi-diag-2" "--scfi=experimental" - run_list_test "scfi-unsupported-1" "--32 --scfi=experimental" - run_list_test "scfi-unsupported-1" "--x32 --scfi=experimental" + if { [gas_32_check] } then { + run_list_test "scfi-unsupported-1" "--32 --scfi=experimental" + } + if { [gas_x32_check] } then { + run_list_test "scfi-unsupported-1" "--x32 --scfi=experimental" + } run_list_test "scfi-unsupported-insn-1" "--scfi=experimental" run_list_test "scfi-unsupported-2" "--scfi=experimental" run_list_test "scfi-unsupported-3" "--scfi=experimental"