1 /* { dg-do assemble { target { lp64 } } } */
2 /* { dg-options "-O2 -fno-align-functions -mtraceback=no -save-temps" } */
4 typedef int TImode
__attribute__ ((mode (TI
)));
6 void w1 (void *x
, TImode y
) { *(TImode
*) (x
+ 32767) = y
; }
7 void w2 (void *x
, TImode y
) { *(TImode
*) (x
+ 32766) = y
; }
8 void w3 (void *x
, TImode y
) { *(TImode
*) (x
+ 32765) = y
; }
9 void w4 (void *x
, TImode y
) { *(TImode
*) (x
+ 32764) = y
; }
10 void w5 (void *x
, TImode y
) { *(TImode
*) (x
+ 32763) = y
; }
11 void w6 (void *x
, TImode y
) { *(TImode
*) (x
+ 32762) = y
; }
12 void w7 (void *x
, TImode y
) { *(TImode
*) (x
+ 32761) = y
; }
13 void w8 (void *x
, TImode y
) { *(TImode
*) (x
+ 32760) = y
; }
14 void w9 (void *x
, TImode y
) { *(TImode
*) (x
+ 32759) = y
; }
15 void w10 (void *x
, TImode y
) { *(TImode
*) (x
+ 32758) = y
; }
16 void w11 (void *x
, TImode y
) { *(TImode
*) (x
+ 32757) = y
; }
17 void w12 (void *x
, TImode y
) { *(TImode
*) (x
+ 32756) = y
; }
18 void w13 (void *x
, TImode y
) { *(TImode
*) (x
+ 32755) = y
; }
19 void w14 (void *x
, TImode y
) { *(TImode
*) (x
+ 32754) = y
; }
20 void w15 (void *x
, TImode y
) { *(TImode
*) (x
+ 32753) = y
; }
21 void w16 (void *x
, TImode y
) { *(TImode
*) (x
+ 32752) = y
; }
22 void w17 (void *x
, TImode y
) { *(TImode
*) (x
+ 32751) = y
; }
23 void w18 (void *x
, TImode y
) { *(TImode
*) (x
+ 32750) = y
; }
24 void w19 (void *x
, TImode y
) { *(TImode
*) (x
+ 32749) = y
; }
25 void w20 (void *x
, TImode y
) { *(TImode
*) (x
+ 32748) = y
; }
27 TImode
r1 (void *x
) { return *(TImode
*) (x
+ 32767); }
28 TImode
r2 (void *x
) { return *(TImode
*) (x
+ 32766); }
29 TImode
r3 (void *x
) { return *(TImode
*) (x
+ 32765); }
30 TImode
r4 (void *x
) { return *(TImode
*) (x
+ 32764); }
31 TImode
r5 (void *x
) { return *(TImode
*) (x
+ 32763); }
32 TImode
r6 (void *x
) { return *(TImode
*) (x
+ 32762); }
33 TImode
r7 (void *x
) { return *(TImode
*) (x
+ 32761); }
34 TImode
r8 (void *x
) { return *(TImode
*) (x
+ 32760); }
35 TImode
r9 (void *x
) { return *(TImode
*) (x
+ 32759); }
36 TImode
r10 (void *x
) { return *(TImode
*) (x
+ 32758); }
37 TImode
r11 (void *x
) { return *(TImode
*) (x
+ 32757); }
38 TImode
r12 (void *x
) { return *(TImode
*) (x
+ 32756); }
39 TImode
r13 (void *x
) { return *(TImode
*) (x
+ 32755); }
40 TImode
r14 (void *x
) { return *(TImode
*) (x
+ 32754); }
41 TImode
r15 (void *x
) { return *(TImode
*) (x
+ 32753); }
42 TImode
r16 (void *x
) { return *(TImode
*) (x
+ 32752); }
43 TImode
r17 (void *x
) { return *(TImode
*) (x
+ 32751); }
44 TImode
r18 (void *x
) { return *(TImode
*) (x
+ 32750); }
45 TImode
r19 (void *x
) { return *(TImode
*) (x
+ 32749); }
46 TImode
r20 (void *x
) { return *(TImode
*) (x
+ 32748); }
48 /* test should really be == 616, see pr54110 */
49 /* { dg-final { object-size text <= 700 } } */
50 /* { dg-final { scan-assembler-not "(st|l)fd" } } */
51 /* { dg-final { cleanup-saved-temps "timode_off" } } */