blob: b271e2bf416b152f60842d4d9f2ea583abd68b0e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
/* { dg-options "-O2 -mabi=64 -mr10k-cache-barrier=store" } */
/* Test that stores to uncached addresses do not get unnecessary
cache barriers. */
#define TEST(ADDR) \
NOMIPS16 void \
test_##ADDR (int n) \
{ \
while (n--) \
{ \
*(volatile char *) (0x##ADDR##UL) = 1; \
*(volatile short *) (0x##ADDR##UL + 2) = 2; \
*(volatile int *) (0x##ADDR##UL + 4) = 0; \
} \
}
TEST (9000000000000000)
TEST (900000fffffffff8)
TEST (9200000000000000)
TEST (920000fffffffff8)
TEST (9400000000000000)
TEST (940000fffffffff8)
TEST (9600000000000000)
TEST (960000fffffffff8)
TEST (b800000000000000)
TEST (b80000fffffffff8)
TEST (ba00000000000000)
TEST (ba0000fffffffff8)
TEST (bc00000000000000)
TEST (bc0000fffffffff8)
TEST (be00000000000000)
TEST (be0000fffffffff8)
TEST (ffffffffa0000000)
TEST (ffffffffbffffff8)
/* { dg-final { scan-assembler-not "\tcache\t" } } */
|