===================================================================
@@ -13,12 +13,12 @@ struct A
void func (struct A);
-unsigned int f1 (struct A a)
+NOMIPS16 unsigned int f1 (struct A a)
{
return a.j;
}
-void f2 (int i)
+NOMIPS16 void f2 (int i)
{
struct A c;
c.j = i;
===================================================================
@@ -4,7 +4,7 @@
/* The pop instruction does not depend on the word value to be sign extended. */
/* { dg-final { scan-assembler-not "sll\t" } } */
-long long f(long long i)
+NOMIPS16 long long f(long long i)
{
return __builtin_popcount (i);
}
===================================================================
@@ -9,8 +9,8 @@ typedef struct s {
struct s *r;
} S;
-
-int foo(S *s)
+/* Test requires conditional moves. */
+NOMIPS16 int foo(S *s)
{
S *this;
S *next;
===================================================================
@@ -2,7 +2,8 @@
/* { dg-final { scan-assembler "\tlw\t" } } */
/* { dg-final { scan-assembler-not "\td?addiu\t(\\\$sp,)?\\\$sp,\[1-9\].*\tlw\t" } } */
-int foo (int y)
+/* Avoid use of SAVE and RESTORE. */
+NOMIPS16 int foo (int y)
{
volatile int a = y;
volatile int *volatile b = &a;
===================================================================
@@ -20,25 +20,25 @@ struct s
long long l;
} __attribute__ ((packed)) s __attribute__((aligned(1) ));
-void
+NOMIPS16 void
sd (long long l)
{
s.l = l;
}
-long long
+NOMIPS16 long long
ld ()
{
return s.l;
}
-void
+NOMIPS16 void
sw (int i)
{
s.i = i;
}
-int
+NOMIPS16 int
lw ()
{
return s.i;