[PATCH] gas: scfi: fix failing test on Solaris2
Jan Beulich
jbeulich@suse.com
Mon Feb 5 07:32:29 GMT 2024
On 03.02.2024 00:25, Indu Bhagat wrote:
> 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)
> spawn [open ...]
> 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 okay as-is for the purpose at hand, I still have two questions:
> --- 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,14 @@
> # 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_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 +48,11 @@ 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"
>
> + if { [gas_x32_check] } then {
> + run_list_test "scfi-unsupported-1" "--x32 --scfi=experimental"
> + }
> run_list_test "scfi-unsupported-1" "--32 --scfi=experimental"
Did it occur to you that this would better also be wrapped in a similar
check, seeing that gas/i386/x86-64.exp also uses such a conditional?
> - run_list_test "scfi-unsupported-1" "--x32 --scfi=experimental"
While minor, I'm also curious about the reason for this re-ordering.
Jan
More information about the Binutils
mailing list