better patch to f-torture.exp

Kate Hedstrom kate@ahab.rutgers.edu
Sun Nov 23 17:56:00 GMT 1997


This version replaces the patch I sent yesterday.  It uses regular
expressions so that it is easier to filter out spurious matches to
things like "double precision x1, y1" in a search for "do" followed by
a number.

*** gcc/testsuite/lib/f-torture.exp.orig	Fri Nov 21 14:47:44 1997
--- gcc/testsuite/lib/f-torture.exp	Sun Nov 23 14:41:27 1997
***************
*** 74,80 ****
      set comp_output [g77_target_compile "$src" "$output" object $options];
      
      # Set a few common compiler messages.
!     set fatal_signal "*cc: Internal compiler error: program*got fatal signal"
   
      if [string match "$fatal_signal 6" $comp_output] then {
  	g77_fail $testcase "Got Signal 6, $option"
--- 74,80 ----
      set comp_output [g77_target_compile "$src" "$output" object $options];
      
      # Set a few common compiler messages.
!     set fatal_signal "*77*: Internal compiler error: program*got fatal signal"
   
      if [string match "$fatal_signal 6" $comp_output] then {
  	g77_fail $testcase "Got Signal 6, $option"
***************
*** 89,95 ****
      }
  
      # We shouldn't get these because of -w, but just in case.
!     if [string match "*cc:*warning:*" $comp_output] then {
  	warning "$testcase: (with warnings) $option"
  	send_log "$comp_output\n"
  	unresolved "$testcase, $option"
--- 89,95 ----
      }
  
      # We shouldn't get these because of -w, but just in case.
!     if [string match "*77*:*warning:*" $comp_output] then {
  	warning "$testcase: (with warnings) $option"
  	send_log "$comp_output\n"
  	unresolved "$testcase, $option"
***************
*** 146,152 ****
      # Look for a loop within the source code - if we don't find one,
      # don't pass -funroll[-all]-loops.
      global torture_with_loops torture_without_loops
!     if [expr [search_for $src "do*("]+[search_for $src "while*("]] then {
  	set option_list $torture_with_loops
      } else {
  	set option_list $torture_without_loops
--- 146,152 ----
      # Look for a loop within the source code - if we don't find one,
      # don't pass -funroll[-all]-loops.
      global torture_with_loops torture_without_loops
!     if [expr [search_for $src "do *\[0-9\]"]+[search_for $src "end *do"]] then {
  	set option_list $torture_with_loops
      } else {
  	set option_list $torture_without_loops
***************
*** 177,183 ****
  	set comp_output [g77_target_compile "$src" "$executable" executable $options];
  
  	# Set a few common compiler messages.
! 	set fatal_signal "*cc: Internal compiler error: program*got fatal signal"
  	
  	if [string match "$fatal_signal 6" $comp_output] then {
  	    g77_fail $testcase "Got Signal 6, $option"
--- 177,183 ----
  	set comp_output [g77_target_compile "$src" "$executable" executable $options];
  
  	# Set a few common compiler messages.
! 	set fatal_signal "*77*: Internal compiler error: program*got fatal signal"
  	
  	if [string match "$fatal_signal 6" $comp_output] then {
  	    g77_fail $testcase "Got Signal 6, $option"
***************
*** 192,198 ****
  	}
  	
  	# We shouldn't get these because of -w, but just in case.
! 	if [string match "*cc:*warning:*" $comp_output] then {
  	    warning "$testcase: (with warnings) $option"
  	    send_log "$comp_output\n"
  	    unresolved "$testcase, $option"
--- 192,198 ----
  	}
  	
  	# We shouldn't get these because of -w, but just in case.
! 	if [string match "*77*:*warning:*" $comp_output] then {
  	    warning "$testcase: (with warnings) $option"
  	    send_log "$comp_output\n"
  	    unresolved "$testcase, $option"
***************
*** 225,231 ****
  	# See if this source file uses "long long" types, if it does, and
  	# no_long_long is set, skip execution of the test.
  	if [target_info exists no_long_long] then {
! 	    if [expr [search_for $src "long long"]] then {
  		untested "$testcase execution, $option"
  		continue
  	    }
--- 225,231 ----
  	# See if this source file uses "long long" types, if it does, and
  	# no_long_long is set, skip execution of the test.
  	if [target_info exists no_long_long] then {
! 	    if [expr [search_for $src "integer\*8"]] then {
  		untested "$testcase execution, $option"
  		continue
  	    }
***************
*** 252,258 ****
      set fd [open $file r]
      while { [gets $fd cur_line]>=0 } {
  	set lower [string tolower $cur_line]
! 	if [string match "*$pattern*" $lower] then {
  	    close $fd
  	    return 1
  	}
--- 252,258 ----
      set fd [open $file r]
      while { [gets $fd cur_line]>=0 } {
  	set lower [string tolower $cur_line]
! 	if [regexp "$pattern" $lower] then {
  	    close $fd
  	    return 1
  	}
***************
*** 302,308 ****
      # Look for a loop within the source code - if we don't find one,
      # don't pass -funroll[-all]-loops.
      global torture_with_loops torture_without_loops
!     if [expr [search_for $src "do*("]+[search_for $src "while*("]] then {
  	set option_list $torture_with_loops
      } else {
  	set option_list $torture_without_loops
--- 302,308 ----
      # Look for a loop within the source code - if we don't find one,
      # don't pass -funroll[-all]-loops.
      global torture_with_loops torture_without_loops
!     if [expr [search_for $src "do *\[0-9\]"]+[search_for $src "end *do"]] then {
  	set option_list $torture_with_loops
      } else {
  	set option_list $torture_without_loops



More information about the Gcc mailing list