* gcc.target/mips/dsp-ctrl.c: New test.
From-SVN: r141569
This commit is contained in:
parent
1e27273ff0
commit
a72bd667e0
@ -1,3 +1,7 @@
|
||||
2008-11-03 Chao-ying Fu <fu@mips.com>
|
||||
|
||||
* gcc.target/mips/dsp-ctrl.c: New test.
|
||||
|
||||
2008-11-03 Steve Ellcey <sje@cup.hp.com>
|
||||
|
||||
* gfortran.dg/f2003_io_1.f03: XFAIL until PR37839 is fixed.
|
||||
|
80
gcc/testsuite/gcc.target/mips/dsp-ctrl.c
Normal file
80
gcc/testsuite/gcc.target/mips/dsp-ctrl.c
Normal file
@ -0,0 +1,80 @@
|
||||
/* { dg-do run { target mips*-*-* } } */
|
||||
/* { dg-options "-O2" } */
|
||||
|
||||
extern void abort (void);
|
||||
extern void exit (int);
|
||||
#if __mips_dsp
|
||||
|
||||
void __attribute__ ((noinline))
|
||||
test1 (int i)
|
||||
{
|
||||
__builtin_mips_wrdsp (i, 63);
|
||||
}
|
||||
|
||||
void __attribute__ ((noinline))
|
||||
test2 ()
|
||||
{
|
||||
long long a = 0;
|
||||
__builtin_mips_extpdp (a, 3);
|
||||
}
|
||||
|
||||
void __attribute__ ((noinline))
|
||||
test3 (int i)
|
||||
{
|
||||
long long a = 0;
|
||||
__builtin_mips_extpdp (a, i);
|
||||
}
|
||||
|
||||
void __attribute__ ((noinline))
|
||||
test4 ()
|
||||
{
|
||||
long long a = 0;
|
||||
int i = 0;
|
||||
__builtin_mips_mthlip (a, i);
|
||||
}
|
||||
|
||||
int
|
||||
main ()
|
||||
{
|
||||
int cntl;
|
||||
|
||||
/* Test 1: wrdsp */
|
||||
__builtin_mips_wrdsp (0,63);
|
||||
test1 (63);
|
||||
cntl = __builtin_mips_rddsp (63);
|
||||
if (cntl != 63)
|
||||
abort ();
|
||||
|
||||
/* Test 2: extpdp */
|
||||
__builtin_mips_wrdsp (63,63);
|
||||
test2 ();
|
||||
cntl = __builtin_mips_rddsp (63);
|
||||
if (cntl != 59)
|
||||
abort ();
|
||||
|
||||
/* Test 3: extpdpv */
|
||||
__builtin_mips_wrdsp (63,63);
|
||||
test3 (10);
|
||||
cntl = __builtin_mips_rddsp (63);
|
||||
if (cntl != 52)
|
||||
abort ();
|
||||
|
||||
/* Test 4: mthlip */
|
||||
__builtin_mips_wrdsp (8,63);
|
||||
test4 ();
|
||||
cntl = __builtin_mips_rddsp (63);
|
||||
if (cntl != 40)
|
||||
abort ();
|
||||
|
||||
exit (0);
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
int
|
||||
main ()
|
||||
{
|
||||
exit (0);
|
||||
}
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue
Block a user