1 /* { dg-do compile { target { ! { ia32 } } } } */
2 /* { dg-require-effective-target maybe_x32 } */
3 /* { dg-require-effective-target fpic } */
4 /* { dg-options "-O3 -mx32 -maddress-mode=long -fpic" } */
5 /* { dg-final { scan-assembler-not "movl\[\\t \]*%.*,\[\\t \]*-1073742592\\(%r(.x|.i|.p|\[1-9\]*)\\)" } } */
8 typedef unsigned int uint32_t;
9 typedef uint32_t Elf32_Word
;
10 typedef int32_t Elf32_Sword
;
11 typedef uint32_t Elf32_Addr
;
21 Elf32_Dyn
*l_info
[34 + 16 + 3 + 12 + 11];
24 elf_get_dynamic_info (struct link_map
*l
)
26 Elf32_Dyn
*dyn
= l
->l_ld
;
27 Elf32_Dyn
**info
= l
->l_info
;
28 typedef Elf32_Word d_tag_utype
;
29 while (dyn
->d_tag
!= 0) {
30 if ((d_tag_utype
) (0x6ffffeff - dyn
->d_tag
) < 11)
31 info
[(0x6ffffeff - dyn
->d_tag
) + 34 + 16 + 3 + 12] = dyn
;