| # Copyright 2012 |
| # Free Software Foundation, Inc. |
| |
| # This program is free software; you can redistribute it and/or modify |
| # it under the terms of the GNU General Public License as published by |
| # the Free Software Foundation; either version 3 of the License, or |
| # (at your option) any later version. |
| # |
| # This program is distributed in the hope that it will be useful, |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| # GNU General Public License for more details. |
| # |
| # You should have received a copy of the GNU General Public License |
| # along with this program; if not, write to the Free Software |
| # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. |
| |
| # |
| # symver tests |
| # |
| proc run_error_test { name opts } { |
| global srcdir subdir |
| set testname "symver $name" |
| set file $srcdir/$subdir/$name |
| gas_run ${name}.s $opts ">&dump.out" |
| if { [regexp_diff "dump.out" "${file}.l"] } then { |
| fail $testname |
| verbose "output is [file_contents "dump.out"]" 2 |
| return |
| } |
| pass $testname |
| } |
| |
| # symver is only supported by ELF targets. |
| if { [is_elf_format] } then { |
| |
| if {[istarget "ia64-*"]} then { |
| return |
| } |
| |
| if {[istarget "hppa*64*-*-*"]} then { |
| return |
| } |
| |
| # not supported by D30V |
| if {[istarget "d30v-*-*"]} { |
| return |
| } |
| |
| # not yet supported by i960 |
| if {[istarget "i960-*-*"]} { |
| return |
| } |
| |
| run_dump_test "symver0" |
| run_dump_test "symver1" |
| run_error_test "symver2" "" |
| run_error_test "symver3" "" |
| # We have to comment out symver4 and symver5, which check the |
| # missing version name, since some tests in ld/testsuite/ld-elfvers |
| # have no version names. We cannot flag an error for the missing |
| # version name. |
| # run_error_test "symver4" "" |
| # run_error_test "symver5" "" |
| run_error_test "symver6" "" |
| } |