X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fconfig%2Fia64%2Fia64.c;h=9c3b1f8db18a1f8ce070ef1642b41ee86c80fd5d;hb=e9edf8facf24f9b05937702ad69609464e4abfd4;hp=9de15aba805ff55fc75bcfa5c77109330922e98d;hpb=ac2f98ea793f5def6307b036a288ae5cdc569dd4;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index 9de15aba805..9c3b1f8db18 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -2421,16 +2421,7 @@ rtx_needs_barrier (x, flags, pred) need_barrier |= rws_access_reg (i, flags, pred); break; - case 6: /* mov pr= */ - /* This writes all predicate registers. */ - new_flags.is_write = 1; - /* We need to skip by two, because rws_access_reg always writes - to two predicate registers at a time. */ - /* ??? Strictly speaking, we shouldn't be counting writes to pr0. */ - for (i = PR_REG (0); i < PR_REG (64); i += 2) - need_barrier |= rws_access_reg (i, new_flags, pred); - break; - + case 6: case 7: abort (); @@ -2486,6 +2477,16 @@ rtx_needs_barrier (x, flags, pred) need_barrier = rws_access_reg (REG_AR_PFS, new_flags, pred); break; + case 6: /* mov pr= */ + /* This writes all predicate registers. */ + new_flags.is_write = 1; + /* We need to skip by two, because rws_access_reg always writes + to two predicate registers at a time. */ + /* ??? Strictly speaking, we shouldn't be counting writes to pr0. */ + for (i = PR_REG (0); i < PR_REG (64); i += 2) + need_barrier |= rws_access_reg (i, new_flags, pred); + break; + default: abort (); }