Hi, When analyzing reg test failures for the avr target, I noticed that the torture options were different when running dg-torture.exp compared to x86_64-pc-linux-gnu, resulting in additional failures. I also found that a bunch of "torture-without-loops not empty as expected" errors show up for a few .exp files.
I found that these did not occur when the exp files were run in isolation. On further debugging, I found that sso.exp calls dg-init and torture-init, and returns if !effective_target_int32. It does not call the corresponding finish functions for targets like the avr for which the effective target condition is true, and this leaves torture-options set, which causes the errors and differing options. The below patch makes the return occur earlier - before calling the init functions. Committed to trunk. Regards Senthil 2016-10-18 Senthil Kumar Selvaraj <senthil_kumar.selva...@atmel.com> * gcc.dg/sso/sso.exp: Return early if not effective_target_int32. Index: gcc.dg/sso/sso.exp =================================================================== --- gcc.dg/sso/sso.exp (revision 241299) +++ gcc.dg/sso/sso.exp (working copy) @@ -18,6 +18,10 @@ load_lib gcc-dg.exp load_lib torture-options.exp +if { ![check_effective_target_int32] } { + return +} + # Initialize `dg'. torture-init dg-init @@ -32,10 +36,6 @@ set-torture-options $SSO_TORTURE_OPTIONS -if { ![check_effective_target_int32] } { - return -} - # Main loop. gcc-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.c]] "" ""