This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
config/sparc/sparc.md has a wrong condition at 980210.
- To: egcs-bugs at cygnus dot com
- Subject: config/sparc/sparc.md has a wrong condition at 980210.
- From: Teemu Torma <tot at Trema dot COM>
- Date: Tue, 10 Feb 1998 14:47:03 +0100 (MET)
I suspect that movdi_v8plus has wrong condition in sparc.md
(TARGET_V8PLUS), since it generates `stx' assembler instruction
that is not recognized by Sun or GNU as. Compiling of libgcc2
fails if configured --with-cpu=ultrasparc because of assembler error.
I think the condition should be TARGET_ARCH64.
Teemu
Index: config/sparc/sparc.md
===================================================================
RCS file: /trema/cvs/gnu/egcs/gcc/config/sparc/sparc.md,v
retrieving revision 1.1.1.7
diff -c -c -3 -p -r1.1.1.7 sparc.md
*** sparc.md 1998/02/10 09:38:34 1.1.1.7
--- sparc.md 1998/02/10 13:44:54
***************
*** 2147,2153 ****
(define_insn "*movdi_v8plus"
[(set (match_operand:DI 0 "reg_or_nonsymb_mem_operand" "=r,T,Q,r,r,f,f,Q,b")
(match_operand:DI 1 "general_operand" "r,J,r,Q,i,?f,?Q,?f,?J"))]
! "TARGET_V8PLUS
&& (register_operand (operands[0], DImode)
|| register_operand (operands[1], DImode)
|| operands[1] == const0_rtx)"
--- 2147,2153 ----
(define_insn "*movdi_v8plus"
[(set (match_operand:DI 0 "reg_or_nonsymb_mem_operand" "=r,T,Q,r,r,f,f,Q,b")
(match_operand:DI 1 "general_operand" "r,J,r,Q,i,?f,?Q,?f,?J"))]
! "TARGET_ARCH64
&& (register_operand (operands[0], DImode)
|| register_operand (operands[1], DImode)
|| operands[1] == const0_rtx)"