diff options
author | Adam Nemet <anemet@caviumnetworks.com> | 2008-11-26 22:14:50 +0000 |
---|---|---|
committer | Adam Nemet <nemet@gcc.gnu.org> | 2008-11-26 22:14:50 +0000 |
commit | 6411cd386c53ee1de40b535830e4995a3d442d77 (patch) | |
tree | 455f0d968b8d481dd4993e78291ad017e9255fd3 /gcc/config/mips | |
parent | 15a43677412ba3d23667bb50d2cde194c986dfb8 (diff) | |
download | gcc-6411cd386c53ee1de40b535830e4995a3d442d77.zip gcc-6411cd386c53ee1de40b535830e4995a3d442d77.tar.gz gcc-6411cd386c53ee1de40b535830e4995a3d442d77.tar.bz2 |
mips.md (clear_hazard): Rename to clear_hazard_<mode>.
* config/mips/mips.md (clear_hazard): Rename to
clear_hazard_<mode>. Use mode-specific addition.
(clear_cache): Rename gen_clear_hazard to gen_clear_hazard_si
or gen_clear_hazard_di depending on the size of Pmode.
From-SVN: r142229
Diffstat (limited to 'gcc/config/mips')
-rw-r--r-- | gcc/config/mips/mips.md | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/gcc/config/mips/mips.md b/gcc/config/mips/mips.md index 046f6a7..21b76c5 100644 --- a/gcc/config/mips/mips.md +++ b/gcc/config/mips/mips.md @@ -4703,7 +4703,9 @@ { mips_expand_synci_loop (operands[0], operands[1]); emit_insn (gen_sync ()); - emit_insn (gen_clear_hazard ()); + emit_insn (Pmode == SImode + ? gen_clear_hazard_si () + : gen_clear_hazard_di ()); } else if (mips_cache_flush_func && mips_cache_flush_func[0]) { @@ -4732,14 +4734,14 @@ "ISA_HAS_SYNCI" "rdhwr\t%0,$1") -(define_insn "clear_hazard" +(define_insn "clear_hazard_<mode>" [(unspec_volatile [(const_int 0)] UNSPEC_CLEAR_HAZARD) - (clobber (reg:SI 31))] + (clobber (reg:P 31))] "ISA_HAS_SYNCI" { return "%(%<bal\t1f\n" "\tnop\n" - "1:\taddiu\t$31,$31,12\n" + "1:\t<d>addiu\t$31,$31,12\n" "\tjr.hb\t$31\n" "\tnop%>%)"; } |