Message ID | patch-16250-tamar@arm.com |
---|---|
State | New |
Headers | show |
Series | [testsuite] : make check-functions-body dump expected and seen cases on failure. | expand |
Tamar Christina <tamar.christina@arm.com> 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:
--- 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: