cris.exp: New file.

* gcc.target/cris/cris.exp: New file.
	* gcc.target/cris/rld-legit1.c: New test.
	* gcc.target/cris/rld-legit2.c: New test.

From-SVN: r106836
This commit is contained in:
Hans-Peter Nilsson 2005-11-12 21:10:23 +00:00 committed by Hans-Peter Nilsson
parent 15883505db
commit fa7682c729
4 changed files with 84 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2005-11-12 Hans-Peter Nilsson <hp@axis.com>
* gcc.target/cris/cris.exp: New file.
* gcc.target/cris/rld-legit1.c: New test.
* gcc.target/cris/rld-legit2.c: New test.
2005-11-12 Jakub Jelinek <jakub@redhat.com>
PR c++/24780

View File

@ -0,0 +1,41 @@
# Copyright (C) 2005 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 2 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.
# GCC testsuite that uses the `gcc-dg.exp' driver, just a single option, no
# looping over tests.
# Exit immediately if this isn't a CRIS target.
if ![istarget cris-*-*] then {
return
}
# Load support procs.
load_lib gcc-dg.exp
# If a testcase doesn't have special options, use these.
global DEFAULT_CFLAGS
if ![info exists DEFAULT_CFLAGS] then {
set DEFAULT_CFLAGS " -ansi -pedantic-errors"
}
# Initialize `dg'.
dg-init
# Main loop.
dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[cS\]]] "" $DEFAULT_CFLAGS
# All done.
dg-finish

View File

@ -0,0 +1,21 @@
/* Check that we don't get unnecessary insns due to reload using more
insns than needed due to reloading of more locations than
needed. */
/* { dg-options -O2 } */
/* { dg-final { scan-assembler-not "movs.w" } } */
/* { dg-final { scan-assembler-not "move.w" } } */
/* As torture/pr24750-2.c, except we need to clobber R8 for thorough
testing and know we can do, since we replace the frame-pointer. */
int
f (short *a, char *y)
{
__asm__ ("" : : :
#ifndef __PIC__
"r0",
#endif
"r1", "r2", "r3", "r4", "r5", "r6", "r7", "r8",
"r9", "r10", "r11", "r12", "r13");
return y[*a];
}

View File

@ -0,0 +1,16 @@
/* A variant of rld-legit1.c only for full code coverage of the
initial version of cris_reload_address_legitimized. */
/* { dg-options -O2 } */
short *
g (short *a, char *y)
{
__asm__ ("" : : :
#ifndef __PIC__
"r0",
#endif
"r1", "r2", "r3", "r4", "r5", "r6", "r7", "r8",
"r9", "r10", "r11", "r12", "r13");
y[*a++] = 0;
return a;
}