This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH, i386]: Fix PR target/44546, ICE in extract_insn, at recog.c:2103 with -ffast-math -Os


Hello!

*fp_jcc_8<mode>_387 splits with swapped operands and comparison
operator.  We should use different predicate that looks at swapped
condition.  The patch also renames fp_jcc patterns.

2010-06-20  Uros Bizjak  <ubizjak@gmail.com>

	PR target/44546
	* config/i386/predicates.md (ix86_swapped_fp_comparsion_operator):
	New predicate.
	* config/i386/i386.md (*fp_jcc_8<mode>_387): Use
	ix86_swapped_fp_comparsion_operator instead of
	ix86_fp_comparison_operator.

	(*fp_jcc_1_387): Rename from *fp_jcc_3_387.
	(*fp_jcc_1r_387): Rename from *fp_jcc_4_387.
	(*fp_jcc_2_387): Rename from *fp_jcc_5_387.
	(*fp_jcc_2r_387): Rename from *fp_jcc_6_387.
	(*fp_jcc_3_387): Rename from *fp_jcc_7_387.
	(*fp_jcc_4_<mode>_387): Rename from *fp_jcc_8<mode>_387.

testsuite/ChangeLog:

2010-06-20  Uros Bizjak  <ubizjak@gmail.com>

	PR target/44546
	* gcc.target/i386/pr44546.c: New test.

Patch was bootstrapped and tested on x86_64-pc-linux-gnu.  Patch is
committed to mainline, will be committed to 4.5 branch.

Uros.

Attachment: p.diff.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]