Tamar Christina <[email protected]> writes:
> Hi All,
>
> Often times when a check_function_body check fails it can be quite hard to
> figure out why as no additional information is provided.
>
> This changes it so that on failures it prints out the regex expression it's
> using and the text it's comparing against to the verbose log.
>
> This makes it much easier to figure out why a test has failed.
>
> Bootstrapped Regtested on aarch64-none-linux-gnu and no issues.
>
> Ok for master?
>
> Thanks,
> Tamar
>
> gcc/testsuite/ChangeLog:
>
> * lib/scanasm.exp (check_function_body): Add debug output to verbose log
> on failure.
OK, thanks.
Richard
>
> --- inline copy of patch --
> diff --git a/gcc/testsuite/lib/scanasm.exp b/gcc/testsuite/lib/scanasm.exp
> index
> a80630bb2a819812ce1fe05184535011a12f1288..7c9dcfc9b2e49093355219f76838161f4c3302df
> 100644
> --- a/gcc/testsuite/lib/scanasm.exp
> +++ b/gcc/testsuite/lib/scanasm.exp
> @@ -803,7 +803,12 @@ proc check_function_body { functions name body_regexp } {
> if { ![info exists up_functions($name)] } {
> return 0
> }
> - return [regexp "^$body_regexp\$" $up_functions($name)]
> + set fn_res [regexp "^$body_regexp\$" $up_functions($name)]
> + if { !$fn_res } {
> + verbose -log "body: $body_regexp"
> + verbose -log "against: $up_functions($name)"
> + }
> + return $fn_res
> }
>
> # Check the implementations of functions against expected output. Used as: