annotate gcc/testsuite/gcc.target/arm/pr63408.c @ 152:2b5abeee2509

update gcc11
author anatofuz
date Mon, 25 May 2020 07:50:57 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* { dg-do run } */
kono
parents:
diff changeset
2 /* { dg-options "-O2" } */
kono
parents:
diff changeset
3 void abort (void) __attribute__ ((noreturn));
kono
parents:
diff changeset
4 float __attribute__((noinline))
kono
parents:
diff changeset
5 f(float a, int b)
kono
parents:
diff changeset
6 {
kono
parents:
diff changeset
7 return a - (((float)b / 0x7fffffff) * 100);
kono
parents:
diff changeset
8 }
kono
parents:
diff changeset
9
kono
parents:
diff changeset
10 int
kono
parents:
diff changeset
11 main (void)
kono
parents:
diff changeset
12 {
kono
parents:
diff changeset
13 float a[] = { 100.0, 0.0, 0.0};
kono
parents:
diff changeset
14 int b[] = { 0x7fffffff, 0x7fffffff/100.0f, -0x7fffffff / 100.0f};
kono
parents:
diff changeset
15 float c[] = { 0.0, -1.0, 1.0 };
kono
parents:
diff changeset
16 int i;
kono
parents:
diff changeset
17
kono
parents:
diff changeset
18 for (i = 0; i < (sizeof(a) / sizeof (float)); i++)
kono
parents:
diff changeset
19 if (f (a[i], b[i]) != c[i])
kono
parents:
diff changeset
20 abort ();
kono
parents:
diff changeset
21
kono
parents:
diff changeset
22 return 0;
kono
parents:
diff changeset
23 }