diff options
author | Iain Sandoe <iain@sandoe.co.uk> | 2024-01-13 13:30:08 +0000 |
---|---|---|
committer | Iain Sandoe <iain@sandoe.co.uk> | 2024-01-18 14:00:58 +0000 |
commit | e0e3ef18a047d54d63be91d82a55448851353260 (patch) | |
tree | 6f4423571f367ca5205f3aec6bbdf47579080331 | |
parent | 2b0abfd3f8dbe3e9af79bb6bdc06d727d36f1946 (diff) | |
download | gcc-e0e3ef18a047d54d63be91d82a55448851353260.zip gcc-e0e3ef18a047d54d63be91d82a55448851353260.tar.gz gcc-e0e3ef18a047d54d63be91d82a55448851353260.tar.bz2 |
testsuite, jit: Allow for target-specific assembler scans.
If we want to support multiple object formats and to allow for
scan-assembler tests, we need to make it possible to adjust the
tests on a per-target basis.
This adds similar mechamisms to jit-verify-assembler-output{,-not}
to those used for the general scan-assembler dg directives.
As an aside; it would, perhaps, be possible to integrate this more
with scanasm.exp (which would also give access to function body
scanning) but I did not attempt that for this patch.
After this, we can accept things like:
... { jit-verify-assembler-output-not "......" { target { ! *-*-darwin* } } } }
or
... { jit-verify-assembler-output "......" { target *-*-darwin* } } }
gcc/testsuite/ChangeLog:
* jit.dg/jit.exp: Accept target clauses in jit-verify-assembler
handling.
Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>
-rw-r--r-- | gcc/testsuite/jit.dg/jit.exp | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/gcc/testsuite/jit.dg/jit.exp b/gcc/testsuite/jit.dg/jit.exp index 5697206..286cfa8 100644 --- a/gcc/testsuite/jit.dg/jit.exp +++ b/gcc/testsuite/jit.dg/jit.exp @@ -875,9 +875,23 @@ proc jit-verify-assembler { args } { proc jit-verify-assembler-output { args } { verbose "jit-verify-assembler: $args" + if { [llength $args] > 3 } { + error "jit-verify-assembler-output: too many arguments" + return + } + set dg-output-text [lindex $args 0] verbose "dg-output-text: ${dg-output-text}" + if { [llength $args] >= 2 } { + switch [dg-process-target [lindex $args 1]] { + "S" { } + "N" { return } + "F" { setup_xfail "*-*-*" } + "P" { } + } + } + upvar 2 name name verbose "name: $name" @@ -907,9 +921,23 @@ proc jit-verify-assembler-output { args } { proc jit-verify-assembler-output-not { args } { verbose "jit-verify-assembler: $args" + if { [llength $args] > 3 } { + error "jit-verify-assembler-output-not: too many arguments" + return + } + set dg-output-text [lindex $args 0] verbose "dg-output-text: ${dg-output-text}" + if { [llength $args] >= 2 } { + switch [dg-process-target [lindex $args 1]] { + "S" { } + "N" { return } + "F" { setup_xfail "*-*-*" } + "P" { } + } + } + upvar 2 name name verbose "name: $name" |