# 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.  

# i860 assembler testsuite.

if [istarget i860-*-*] {
    run_dump_test "bitwise"
    run_dump_test "branch"
    run_dump_test "bte"
    run_dump_test "dir-align01"
    run_dump_test "dir-intel01"
    run_dump_test "dir-intel02"
    run_list_test "dir-intel03-err" ""
    run_dump_test "dual01"
    run_list_test "dual02-err" ""
    run_dump_test "dual03"
    run_dump_test "fldst01"
    run_dump_test "fldst02"
    run_dump_test "fldst03"
    run_dump_test "fldst04"
    run_dump_test "fldst05"
    run_dump_test "fldst06"
    run_dump_test "fldst07"
    run_dump_test "fldst08"
    run_dump_test "float01"
    run_dump_test "float02"
    run_dump_test "float03"
    run_dump_test "float04"
    run_dump_test "form"
    run_dump_test "iarith"
    run_dump_test "ldst01"
    run_dump_test "ldst02"
    run_dump_test "ldst03"
    run_dump_test "ldst04"
    run_dump_test "ldst05"
    run_dump_test "ldst06"
    run_dump_test "pfam"
    run_dump_test "pfmam"
    run_dump_test "pfmsm"
    run_dump_test "pfsm"
    run_dump_test "pseudo-ops01"
    run_dump_test "regress01"
    run_dump_test "shift"
    run_dump_test "simd"
    run_dump_test "system"
    run_dump_test "xp"
}

