diff options
author | DJ Delorie <dj@redhat.com> | 2009-06-26 16:36:05 -0400 |
---|---|---|
committer | DJ Delorie <dj@gcc.gnu.org> | 2009-06-26 16:36:05 -0400 |
commit | bb7681bf8628466df0a05e2ef55a088a7469fc23 (patch) | |
tree | 825f3706c637171a203c59fde5a1dc72db24c826 /gcc | |
parent | a35120a3c6bc526325a727a4b71317bce11d1ca7 (diff) | |
download | gcc-bb7681bf8628466df0a05e2ef55a088a7469fc23.zip gcc-bb7681bf8628466df0a05e2ef55a088a7469fc23.tar.gz gcc-bb7681bf8628466df0a05e2ef55a088a7469fc23.tar.bz2 |
mep.opt (mfar): Remove -mfar as it doesn't do anything.
* config/mep/mep.opt (mfar): Remove -mfar as it doesn't do anything.
* config/mep/mep.c (mep_bundle_insns): Account for the fact that
the scheduler doesn't tag jump insns.
From-SVN: r148986
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/config/mep/mep.c | 14 | ||||
-rw-r--r-- | gcc/config/mep/mep.opt | 4 |
3 files changed, 15 insertions, 10 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 86e7d6e..42b6b77 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2009-06-26 DJ Delorie <dj@redhat.com> + + * config/mep/mep.opt (mfar): Remove -mfar as it doesn't do anything. + + * config/mep/mep.c (mep_bundle_insns): Account for the fact that + the scheduler doesn't tag jump insns. + 2009-06-26 H.J. Lu <hongjiu.lu@intel.com> * c-decl.c (merge_decls): Re-indent. diff --git a/gcc/config/mep/mep.c b/gcc/config/mep/mep.c index 0ecfce2..88d6a07 100644 --- a/gcc/config/mep/mep.c +++ b/gcc/config/mep/mep.c @@ -6925,6 +6925,8 @@ mep_bundle_insns (rtx insns) VOIDmode. After this function, the first has VOIDmode and the rest have BImode. */ + /* Note: this doesn't appear to be true for JUMP_INSNs. */ + /* First, move any NOTEs that are within a bundle, to the beginning of the bundle. */ for (insn = insns; insn ; insn = NEXT_INSN (insn)) @@ -6932,10 +6934,10 @@ mep_bundle_insns (rtx insns) if (NOTE_P (insn) && first) /* Don't clear FIRST. */; - else if (INSN_P (insn) && GET_MODE (insn) == TImode) + else if (NONJUMP_INSN_P (insn) && GET_MODE (insn) == TImode) first = insn; - else if (INSN_P (insn) && GET_MODE (insn) == VOIDmode && first) + else if (NONJUMP_INSN_P (insn) && GET_MODE (insn) == VOIDmode && first) { rtx note, prev; @@ -6968,7 +6970,7 @@ mep_bundle_insns (rtx insns) } } - else if (!INSN_P (insn)) + else if (!NONJUMP_INSN_P (insn)) first = 0; } @@ -6978,7 +6980,7 @@ mep_bundle_insns (rtx insns) if (NOTE_P (insn)) continue; - if (!INSN_P (insn)) + if (!NONJUMP_INSN_P (insn)) { last = 0; continue; @@ -7001,14 +7003,14 @@ mep_bundle_insns (rtx insns) The IVC2 assembler can insert whatever NOPs are needed, and allows a COP insn to be first. */ - if (INSN_P (insn) + if (NONJUMP_INSN_P (insn) && GET_CODE (PATTERN (insn)) != USE && GET_MODE (insn) == TImode) { for (last = insn; NEXT_INSN (last) && GET_MODE (NEXT_INSN (last)) == VOIDmode - && INSN_P (NEXT_INSN (last)); + && NONJUMP_INSN_P (NEXT_INSN (last)); last = NEXT_INSN (last)) { if (core_insn_p (last)) diff --git a/gcc/config/mep/mep.opt b/gcc/config/mep/mep.opt index d8b4134..54e6161 100644 --- a/gcc/config/mep/mep.opt +++ b/gcc/config/mep/mep.opt @@ -83,10 +83,6 @@ mel Target Mask(LITTLE_ENDIAN) RejectNegative Use little-endian byte order -mfar -Target RejectNegative -Enable -ml, -mtf, and -mc=far - mio-volatile Target Mask(IO_VOLATILE) __io vars are volatile by default |