1 /* { dg-do compile { target powerpc*-*-* ia64-*-* x86_64-*-* } } */
2 /* { dg-options "-O2 -fselective-scheduling -fmodulo-sched" } */
6 INSN
, ADDR_VEC
, ADDR_DIFF_VEC
, CALL_INSN
, CODE_LABEL
, BARRIER
, NOTE
8 typedef union rtunion_def
13 struct rtvec_def
*rtvec
;
16 typedef struct rtx_def
22 typedef struct rtvec_def
28 extern rtx
emit_barrier (void);
29 extern rtx
emit_note (char *);
32 copy_loop_body (rtx
*map
)
36 rtx pat
= copy
->fld
[3].rtx
;
44 else if (pat
->code
== ADDR_VEC
|| pat
->code
== ADDR_DIFF_VEC
)
46 int diff_vec_p
= pat
->code
== ADDR_DIFF_VEC
;
47 int len
= pat
->fld
[diff_vec_p
].rtvec
->num_elem
;
48 for (i
= 0; i
< len
; i
++)
49 pat
->fld
[diff_vec_p
].rtvec
->elem
[i
].rtx
->fld
[5].rtint
++;
52 for (i
= 0; i
< 64; i
++)
56 copy
= emit_barrier ();
58 copy
= emit_note ("x");
62 unroll_loop (int insn_count
, rtx
*map
)