Alpha/testsuite: Run target testing over all the usual optimization levels

Use `gcc-dg-runtest' test driver rather than `dg-runtest' to run the
Alpha testsuite as several targets already do.  Add `-Og -g' and `-Oz'
as well via ADDITIONAL_TORTURE_OPTIONS to expand coverage.  Adjust test
options across individual test cases accordingly where required.

Discard base-2.c, cix-2.c, and max-2.c test cases as they merely are
optimization variants of base-1.c, cix-1.c, and max-1.c respectively,
run at `-O2' rather than the default level (`-O0'), now covered by the
framework with the latter ones in a generic way.

Old test results:

		=== gcc Summary ===

# of expected passes		44

vs new ones:
		=== gcc Summary ===

# of expected passes		364
# of unsupported tests		5

	gcc/testsuite/
	* gcc.target/alpha/alpha.exp: Use `gcc-dg-runtest' rather than
	`dg-runtest'.  Add `-Og -g' and `-Oz' variants via
	ADDITIONAL_TORTURE_OPTIONS.
	* gcc.target/alpha/20000715-1.c: Adjust test options
	accordingly.
	* gcc.target/alpha/20011018-1.c: Likewise.
	* gcc.target/alpha/980217-1.c: Likewise.
	* gcc.target/alpha/asm-1.c: Likewise.
	* gcc.target/alpha/pr105209.c: Likewise.
	* gcc.target/alpha/pr106966.c: Likewise.
	* gcc.target/alpha/pr115297.c: Likewise.
	* gcc.target/alpha/pr115526.c: Likewise.
	* gcc.target/alpha/pr19518.c: Likewise.
	* gcc.target/alpha/pr22093.c: Likewise.
	* gcc.target/alpha/pr24178.c: Likewise.
	* gcc.target/alpha/pr39740.c: Likewise.
	* gcc.target/alpha/pr42113.c: Likewise.
	* gcc.target/alpha/pr42269-1.c: Likewise.
	* gcc.target/alpha/pr42448-1.c: Likewise.
	* gcc.target/alpha/pr42448-2.c: Likewise.
	* gcc.target/alpha/pr42774.c: Likewise.
	* gcc.target/alpha/pr61586.c: Likewise.
	* gcc.target/alpha/pr66140.c: Likewise.
	* gcc.target/alpha/pr83628-1.c: Likewise.
	* gcc.target/alpha/pr83628-2.c: Likewise.
	* gcc.target/alpha/pr83628-3.c: Likewise.
	* gcc.target/alpha/pr86984.c: Likewise.
	* gcc.target/alpha/sqrt.c: Likewise.
	* gcc.target/alpha/base-2.c: Remove file.
	* gcc.target/alpha/cix-2.c: Remove file.
	* gcc.target/alpha/max-2.c: Remove file.
This commit is contained in:
Maciej W. Rozycki 2024-12-25 22:23:39 +00:00
parent 44e61bd712
commit 46cb538cc0
28 changed files with 32 additions and 40 deletions

View file

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-O2 -mieee" } */
/* { dg-options "-mieee" } */
float foo(unsigned char n)
{

View file

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-O2 -mieee" } */
/* { dg-options "-mieee" } */
double foo (void);
void bar (float, float);

View file

@ -1,7 +1,7 @@
/* Test float on alpha. */
/* { dg-do run } */
/* { dg-options "-mieee -O2" } */
/* { dg-options "-mieee" } */
extern void abort(void);
extern int printf(const char *, ...);

View file

@ -21,6 +21,8 @@ if ![istarget alpha*-*-*] then {
return
}
lappend ADDITIONAL_TORTURE_OPTIONS {-Og -g} {-Oz}
# Load support procs.
load_lib gcc-dg.exp
@ -34,7 +36,7 @@ if ![info exists DEFAULT_CFLAGS] then {
dg-init
# Main loop.
dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[cS\]]] \
gcc-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[cS\]]] \
"" $DEFAULT_CFLAGS
# All done.

View file

@ -2,7 +2,7 @@
hard register all the way through compilation. Example derived
from glibc source. */
/* { dg-do compile } */
/* { dg-options "-O2 -frename-registers -fcprop-registers" } */
/* { dg-options "-frename-registers -fcprop-registers" } */
/* { dg-final { scan-assembler "callsys1 .0 .19 .0 .16 .17" } } */
/* { dg-final { scan-assembler "callsys2 .0 .19 .0 .16 .17" } } */

View file

@ -1,5 +0,0 @@
/* Test that alpha-base-1.c compiles with optimization. */
/* { dg-do link } */
/* { dg-options "-mcpu=ev4 -O2" } */
#include "base-1.c"

View file

@ -1,5 +0,0 @@
/* Test that alpha-cix-1.c compiles with optimization. */
/* { dg-do link } */
/* { dg-options "-mcpu=ev67 -O2" } */
#include "cix-1.c"

View file

@ -1,5 +0,0 @@
/* Test that alpha-max-1.c compiles with optimization. */
/* { dg-do link } */
/* { dg-options "-mcpu=pca56 -O2" } */
#include "max-1.c"

View file

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftrapv -mcpu=ev4" } */
/* { dg-options "-ftrapv -mcpu=ev4" } */
typedef struct tnode_t {
struct tnode_t *tn_left, *tn_right;

View file

@ -1,6 +1,6 @@
/* PR target/106906 */
/* { dg-do compile } */
/* { dg-options "-O2 -mbuild-constants" } */
/* { dg-options "-mbuild-constants" } */
void
do_console (unsigned short *vga)

View file

@ -1,6 +1,6 @@
/* PR target/115297 */
/* { dg-do compile } */
/* { dg-options "-O1" } */
/* { dg-options "" } */
enum { BPF_F_USER_BUILD_ID } __bpf_get_stack_size;
long __bpf_get_stack_flags, bpf_get_stack___trans_tmp_2;

View file

@ -1,6 +1,6 @@
/* PR target/115526 */
/* { dg-do assemble } */
/* { dg-options "-O2 -Wno-attributes -fvisibility=hidden -fPIC -mcpu=ev4" } */
/* { dg-options "-Wno-attributes -fvisibility=hidden -fPIC -mcpu=ev4" } */
struct _ts {
struct _dtoa_state *interp;

View file

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-O2 -mcpu=ev67" } */
/* { dg-options "-mcpu=ev67" } */
typedef short INT16;
typedef unsigned int CARD32;

View file

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-O2" } */
/* { dg-options "" } */
struct shared_ptr_struct
{

View file

@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -mcpu=ev4" } */
/* { dg-options "-mcpu=ev4" } */
/* { dg-skip-if "" { *-*-* } { "-O0" } } */
struct S {
long l;

View file

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-O3 -std=c99 -mexplicit-relocs" } */
/* { dg-options "-std=c99 -mexplicit-relocs" } */
typedef int R_len_t;
typedef unsigned int SEXPTYPE;

View file

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-O2" } */
/* { dg-options "" } */
int foo (int a, int b)
{

View file

@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2" } */
/* { dg-options "" } */
/* { dg-skip-if "" { *-*-* } { "-O0" } } */
/* { dg-final { scan-assembler-not "addl" } } */
unsigned

View file

@ -1,5 +1,5 @@
/* { dg-do run } */
/* { dg-options "-mcpu=21064 -O0" } */
/* { dg-options "-mcpu=21064" } */
extern void abort (void);

View file

@ -1,5 +1,5 @@
/* { dg-do run } */
/* { dg-options "-mcpu=21064 -O0" } */
/* { dg-options "-mcpu=21064" } */
extern void abort (void);

View file

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-O2 -mcpu=ev4" } */
/* { dg-options "-mcpu=ev4" } */
unsigned int ntfs_getinfo(void *p)
{

View file

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-O2 -mieee" } */
/* { dg-options "-mieee" } */
void foo (int *dimensions, double **params, int hh)
{

View file

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-O2 -mcpu=ev4" } */
/* { dg-options "-mcpu=ev4" } */
struct scsi_cmnd {
int sc_data_direction;

View file

@ -1,6 +1,7 @@
/* PR target/83628 */
/* { dg-do compile } */
/* { dg-options "-O2" } */
/* { dg-options "" } */
/* { dg-skip-if "" { *-*-* } { "-O0" } } */
typedef __SIZE_TYPE__ size_t;

View file

@ -1,6 +1,7 @@
/* PR target/83628 */
/* { dg-do compile } */
/* { dg-options "-O2" } */
/* { dg-options "" } */
/* { dg-skip-if "" { *-*-* } { "-O0" } } */
int
s4l (int a, int b)

View file

@ -1,6 +1,7 @@
/* PR target/83628 */
/* { dg-do compile } */
/* { dg-options "-O2" } */
/* { dg-options "" } */
/* { dg-skip-if "" { *-*-* } { "-O0" } } */
int
s4l (int a, int b)

View file

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-O2 -Wall -Wwrite-strings -Werror -fmerge-all-constants -fno-stack-protector -mieee -fdump-rtl-expand" } */
/* { dg-options "-Wall -Wwrite-strings -Werror -fmerge-all-constants -fno-stack-protector -mieee -fdump-rtl-expand" } */
struct expression {
unsigned long int num;

View file

@ -2,7 +2,7 @@
When using software completions, we have to prevent assembler to match
input and output operands of sqrtt/sqrtf insn. Fixed in glibc 2.26. */
/* { dg-do run } */
/* { dg-options "-O2 -fno-builtin-sqrt -mieee" } */
/* { dg-options "-fno-builtin-sqrt -mieee" } */
double sqrt (double);