prune .note.GNU-stack warning from testsuite
authorAlan Modra <amodra@gmail.com>
Wed, 20 Apr 2022 23:19:30 +0000 (08:49 +0930)
committerAlan Modra <amodra@gmail.com>
Thu, 21 Apr 2022 06:01:39 +0000 (15:31 +0930)
binutils/
* testsuite/lib/binutils-common.exp (prune_warnings_extra): Remove
.note.GNU-stack warning.
(run_dump_test): Call prune_warnings for ld and objcopy output.
ld/
* testsuite/ld-elf/elf.exp: Disable prune_warnings_extra temporarily
around test for absent .note.GNU-stack
* testsuite/ld-cris/globsymw2.s,
* testsuite/ld-cris/warn3.d: Modify "is not implemented" message
to avoid dejagnu prune_warnings.

binutils/testsuite/lib/binutils-common.exp
ld/testsuite/ld-cris/globsymw2.s
ld/testsuite/ld-cris/warn3.d
ld/testsuite/ld-elf/elf.exp

index 55b96980e057bac69412fd4a175b17f4435f9cf7..87b0d101c6c1a2226b94ab948d8fa73c92acfa35 100644 (file)
@@ -637,6 +637,7 @@ proc prune_warnings_extra { text } {
     }
     # PR binutils/23898: It is OK to have gaps in build notes.
     regsub -all "(^|\n)(\[^\n\]*: Warning: Gap in build notes detected from\[^\n\]*\n?)+" $text "\\1" text
+    regsub -all "(^|\n)(\[^\n\]*: warning:\[^\n\]*missing \\.note\\.GNU-stack section\[^\n\]*\n?)+" $text "\\1" text
     return $text
 }
 
@@ -1326,7 +1327,7 @@ proc run_dump_test { name {extra_options {}} } {
            send_log "$cmd\n"
            set cmdret [remote_exec host [concat sh -c [list "$cmd 2>&1"]] "" "/dev/null" "dump.tmp"]
            remote_upload host "dump.tmp"
-           append comp_output [file_contents "dump.tmp"]
+           append comp_output [prune_warnings [file_contents "dump.tmp"]]
            remote_file host delete "dump.tmp"
            remote_file build delete "dump.tmp"
            set cmdret [lindex $cmdret 0]
@@ -1343,7 +1344,7 @@ proc run_dump_test { name {extra_options {}} } {
                send_log "$cmd\n"
                set cmdret [remote_exec host [concat sh -c [list "$cmd 2>&1"]] "" "/dev/null" "dump.tmp"]
                remote_upload host "dump.tmp"
-               append comp_output [file_contents "dump.tmp"]
+               append comp_output [prune_warnings [file_contents "dump.tmp"]]
                remote_file host delete "dump.tmp"
                remote_file build delete "dump.tmp"
                set cmdret [lindex $cmdret 0]
index a9e11ffb9009a4e4c048d650453ba7f974f975f5..e05f7b2a431fc1fff4e88373799b1eb548f20e24 100644 (file)
@@ -2,7 +2,7 @@
        .stabn  162,0,0,0
 ;# A bit like globsymw1.s but containing a valid, working, stabs
 ;# symbol warning construct.
-       .stabs "isatty is not implemented and will always fail",30,0,0,0
+       .stabs "isatty is not implemented, will always fail",30,0,0,0
        .stabs "globsym1",1,0,0,0
        .global globsym1
        .type   globsym1, @function
index c01b6cb822e8b774d8ac2ead8c386e45e603b874..8cd143565c5da42d84539f422faeaf3a4eb4fa6b 100644 (file)
@@ -4,7 +4,7 @@
 #target: cris-*-*elf* cris-*-*aout*
 #as: --em=crisaout
 #ld: -mcrisaout
-#warning: warning: isatty is not implemented and will always fail$
+#warning: warning: isatty is not implemented, will always fail$
 #objdump: -p
 .*:     file format a\.out-cris
 #pass
index ec61e659e062107b58ee6dc1d109c89879091587..d56154011b339cb158311b6ba65d34a389e09e1e 100644 (file)
@@ -189,7 +189,7 @@ proc target_defaults_to_execstack {} {
        || [istarget "powerpc64*-*-*"]
        || [istarget "riscv*-*-*"]
        || [istarget "tilegx*-*-*"]
-        || [istarget "tilepro*-*-*"] } {
+       || [istarget "tilepro*-*-*"] } {
          return 0
     }
     return 1
@@ -227,7 +227,7 @@ if {   [istarget *-*-*linux*]
            {pr23900-1.s} \
            [list [list "readelf" {-Wl} $pr23900_1_exp]] \
            "pr23900-1.exe"] \
-       [list "PR ld/29072 (warn about an executable .note-GNU-stack)" \
+       [list "PR ld/29072 (warn about an executable .note.GNU-stack)" \
            "-e 0" \
            "" \
            "" \
@@ -250,8 +250,12 @@ if {   [istarget *-*-*linux*]
            "pr29072-d.exe"] \
        ]
     if { [target_defaults_to_execstack] } {
+       rename prune_warnings_extra old_prune_warnings_extra
+       proc prune_warnings_extra { text } {
+           return $text
+       }
        run_ld_link_tests [list \
-          [list "PR ld/29072 (warn about absent .note-GNU-stack)" \
+          [list "PR ld/29072 (warn about absent .note.GNU-stack)" \
            "-e 0 -z stack-size=0x123400" \
            "" \
            "" \
@@ -259,9 +263,11 @@ if {   [istarget *-*-*linux*]
            {{ld pr29072.b.warn}} \
            "pr29072-b.exe"] \
        ]
+       rename prune_warnings_extra ""
+       rename old_prune_warnings_extra prune_warnings_extra
     } else {
        run_ld_link_tests [list \
-          [list "PR ld/29072 (ignore absent .note-GNU-stackk)" \
+          [list "PR ld/29072 (ignore absent .note.GNU-stack)" \
            "-e 0 -z stack-size=0x123400" \
            "" \
            "" \