[Bug target/14471] Workaround for errata regarding multiplication bug

cvs-commit at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Mon Mar 8 00:56:00 GMT 2004


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-03-08 00:56 -------
Subject: Bug 14471

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_3-branch
Changes by:	hp@gcc.gnu.org	2004-03-08 00:56:30

Modified files:
	gcc            : ChangeLog 
	gcc/doc        : invoke.texi 
	gcc/config/cris: cris.c cris.h cris.md mulsi3.asm 

Log message:
	PR target/14471
	* doc/invoke.texi (CRIS Options): Document -mmul-bug-workaround
	and -mno-mul-bug-workaround.
	* config/cris/cris.md ("smulsi3_highpart", "umulsi3_highpart")
	("mulsidi3", "umulsidi3"): Prefix output template with "%!".
	("umulhisi3", "umulqihi3", "mulsi3", "mulqihi3", "mulhisi3"):
	Ditto.  Make attribute "slottable" dependent on TARGET_MUL_BUG.
	* config/cris/mulsi3.asm (__Mul) [__CRIS_arch_version >= 10]: Make
	sure mulu.d is not last on cache-line.
	* config/cris/cris.h (ASM_SPEC): Translate -mno-mul-bug-workaround
	into -no-mul-bug-abort depending on HAVE_AS_MUL_BUG_ABORT_OPTION.
	(TARGET_MASK_MUL_BUG, TARGET_MUL_BUG): New macros.
	(TARGET_SWITCHES): New options -mmul-bug-workaround and
	-mno-mul-bug-workaround.
	(TARGET_DEFAULT): Include TARGET_MASK_MUL_BUG.
	(PRINT_OPERAND_PUNCT_VALID_P): Include '!'.
	* config/cris/cris.c (cris_operand_extend_operator): Clarify
	relation to MULT in head comment.
	(cris_op_str): Abort for MULT.
	(cris_print_operand) <case '!'>: New case.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.16114.2.924&r2=1.16114.2.925
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/invoke.texi.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.209.2.54&r2=1.209.2.55
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/cris/cris.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.32.4.3&r2=1.32.4.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/cris/cris.h.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.42.4.3&r2=1.42.4.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/cris/cris.md.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.6.4.4&r2=1.6.4.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/cris/mulsi3.asm.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.1&r2=1.1.44.1



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14471



More information about the Gcc-bugs mailing list