1 /* This failed on s390x due to bug in loop.c.
2 loop.c failed to remove a REG_EQUAL note when
3 hoisting an insn from a loop body. */
5 /* { dg-options "-O3 -fPIC" } */
6 /* { dg-do run { target fpic } } */
8 typedef __SIZE_TYPE__ size_t;
9 int memcmp(const void *s1, const void *s2, size_t n);
19 int subroutine_offset;
21 LOCAL local = { "local", 0 };
22 LOCAL keywords = { "keywords", 1 };
24 int keywords_table = 0;
26 void __attribute__((noinline)) bar (char *p_buffer)
31 int __attribute__((noinline)) foo (char *p_str1)
37 int __attribute__((noinline)) loop_next (int *p_table, char *p_table_head)
69 keywords.a += index - 1;
78 subroutine_offset = 0;
82 if (loop_next (&keywords_table, (char*)&keywords))
85 if ((!memcmp (keywords.name, "+++", 3)))
90 if ((!memcmp (keywords.name, "+++", 3)))
91 subroutine_offset += local_table;
95 if (loop_next (&local_table, (char*)&local))