------- Comment #5 from ubizjak at gmail dot com 2008-11-18 00:11 -------
(In reply to comment #4)
> Using top-of-stack GCC and Binutils from Nov 17, issue still present; Applied
> the below patch and re-tried, no change in behavior. Fails the same way...
This one is tested with a cross and works for me:
Index: mips.md
===================================================================
--- mips.md (revision 141951)
+++ mips.md (working copy)
@@ -4537,7 +4537,7 @@
rtx low = mips_subword (operands[0], 0);
rtx high = mips_subword (operands[0], 1);
emit_insn (gen_store_word<mode> (low, operands[1], const0_rtx));
- if (ISA_HAS_MXHC1)
+ if (register_operand (high, <HALFMODE>mode) && ISA_HAS_MXHC1)
emit_insn (gen_mfhc1<mode> (high, operands[1]));
else
emit_insn (gen_store_word<mode> (high, operands[1], const1_rtx));
--
ubizjak at gmail dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2008-11-18 00:11:22
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37362