From: Richard Henderson Date: Sun, 19 Aug 2001 02:46:30 +0000 (-0700) Subject: ia64.c (ia64_internal_sched_reorder): Emit stop bit before asm as needed. X-Git-Tag: prereleases/libstdc++-3.0.95~2564 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f83594c41cf89df9817cc9cf61f7dcd57f90340c;p=thirdparty%2Fgcc.git ia64.c (ia64_internal_sched_reorder): Emit stop bit before asm as needed. * config/ia64/ia64.c (ia64_internal_sched_reorder): Emit stop bit before asm as needed. From-SVN: r45018 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 30b7c23d9ff4..c77f0f37bed2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2001-08-18 Richard Henderson + + * config/ia64/ia64.c (ia64_internal_sched_reorder): Emit stop + bit before asm as needed. + 2001-08-18 Richard Henderson * timevar.def (TV_MACH_DEP): New. diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index 52fc6e504f25..a8070de82f44 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -6114,6 +6114,12 @@ ia64_internal_sched_reorder (dump, sched_verbose, ready, pn_ready, else if (n_ready > 0) { /* Only asm insns left. */ + if (ia64_final_schedule && group_barrier_needed_p (ready[n_ready - 1])) + { + schedule_stop (sched_verbose ? dump : NULL); + sched_data.last_was_stop = 1; + maybe_rotate (sched_verbose ? dump : NULL); + } cycle_end_fill_slots (sched_verbose ? dump : NULL); return 1; }