rs6000.c (legitimize_reload_address): Remove code handling non-aligned ld/std.
[official-gcc.git] / gcc / testsuite / gcc.target / powerpc / dimode_off.c
blob3d7489b59bcd3c1e31a2023ac36ee081cfc2e98a
1 /* { dg-do assemble } */
2 /* { dg-options "-O2 -fno-align-functions -mtraceback=no -save-temps" } */
4 void w1 (void *x, long long y) { *(long long *) (x + 32767) = y; }
5 void w2 (void *x, long long y) { *(long long *) (x + 32766) = y; }
6 void w3 (void *x, long long y) { *(long long *) (x + 32765) = y; }
7 void w4 (void *x, long long y) { *(long long *) (x + 32764) = y; }
8 void w5 (void *x, long long y) { *(long long *) (x + 32763) = y; }
9 void w6 (void *x, long long y) { *(long long *) (x + 32762) = y; }
10 void w7 (void *x, long long y) { *(long long *) (x + 32761) = y; }
11 void w8 (void *x, long long y) { *(long long *) (x + 32760) = y; }
12 void w9 (void *x, long long y) { *(long long *) (x + 32759) = y; }
13 void w10 (void *x, long long y) { *(long long *) (x + 32758) = y; }
14 void w11 (void *x, long long y) { *(long long *) (x + 32757) = y; }
15 void w12 (void *x, long long y) { *(long long *) (x + 32756) = y; }
16 void w13 (void *x, long long y) { *(long long *) (x + 32755) = y; }
17 void w14 (void *x, long long y) { *(long long *) (x + 32754) = y; }
18 void w15 (void *x, long long y) { *(long long *) (x + 32753) = y; }
19 void w16 (void *x, long long y) { *(long long *) (x + 32752) = y; }
20 void w17 (void *x, long long y) { *(long long *) (x + 32751) = y; }
21 void w18 (void *x, long long y) { *(long long *) (x + 32750) = y; }
22 void w19 (void *x, long long y) { *(long long *) (x + 32749) = y; }
23 void w20 (void *x, long long y) { *(long long *) (x + 32748) = y; }
25 long long r1 (void *x) { return *(long long *) (x + 32767); }
26 long long r2 (void *x) { return *(long long *) (x + 32766); }
27 long long r3 (void *x) { return *(long long *) (x + 32765); }
28 long long r4 (void *x) { return *(long long *) (x + 32764); }
29 long long r5 (void *x) { return *(long long *) (x + 32763); }
30 long long r6 (void *x) { return *(long long *) (x + 32762); }
31 long long r7 (void *x) { return *(long long *) (x + 32761); }
32 long long r8 (void *x) { return *(long long *) (x + 32760); }
33 long long r9 (void *x) { return *(long long *) (x + 32759); }
34 long long r10 (void *x) { return *(long long *) (x + 32758); }
35 long long r11 (void *x) { return *(long long *) (x + 32757); }
36 long long r12 (void *x) { return *(long long *) (x + 32756); }
37 long long r13 (void *x) { return *(long long *) (x + 32755); }
38 long long r14 (void *x) { return *(long long *) (x + 32754); }
39 long long r15 (void *x) { return *(long long *) (x + 32753); }
40 long long r16 (void *x) { return *(long long *) (x + 32752); }
41 long long r17 (void *x) { return *(long long *) (x + 32751); }
42 long long r18 (void *x) { return *(long long *) (x + 32750); }
43 long long r19 (void *x) { return *(long long *) (x + 32749); }
44 long long r20 (void *x) { return *(long long *) (x + 32748); }
46 /* { dg-final { object-size text == 440 { target { lp64 } } } } */
47 /* 32-bit test should really be == 512 bytes, see pr54110 */
48 /* { dg-final { object-size text <= 640 { target { ilp32 } } } } */
49 /* { dg-final { scan-assembler-not "(st|l)fd" } } */
50 /* { dg-final { cleanup-saved-temps "dimode_off" } } */