From 48c23a6c39fa4f75a9054921ad7ce2f12e99fdb0 Mon Sep 17 00:00:00 2001 From: Paul Brook Date: Mon, 1 Sep 2008 22:02:55 +0000 Subject: thumb2.md (thumb2_negscc): Match the correct operand for optimized LT0 test. 2008-09-01 Paul Brook gcc/ * config/arm/thumb2.md (thumb2_negscc): Match the correct operand for optimized LT0 test. Remove optimization for GT. From-SVN: r139873 --- gcc/ChangeLog | 5 +++++ gcc/config/arm/thumb2.md | 5 +---- 2 files changed, 6 insertions(+), 4 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 43bb844..e271d88 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2008-09-01 Paul Brook + + * config/arm/thumb2.md (thumb2_negscc): Match the correct operand for + optimized LT0 test. Remove optimization for GT. + 2008-09-01 John David Anglin * pa64-hpux.h (LIB_SPEC): Link against librt when building static diff --git a/gcc/config/arm/thumb2.md b/gcc/config/arm/thumb2.md index f33d820..2417650 100644 --- a/gcc/config/arm/thumb2.md +++ b/gcc/config/arm/thumb2.md @@ -755,15 +755,12 @@ (clobber (reg:CC CC_REGNUM))] "TARGET_THUMB2" "* - if (GET_CODE (operands[3]) == LT && operands[3] == const0_rtx) + if (GET_CODE (operands[3]) == LT && operands[2] == const0_rtx) return \"asr\\t%0, %1, #31\"; if (GET_CODE (operands[3]) == NE) return \"subs\\t%0, %1, %2\;it\\tne\;mvnne\\t%0, #0\"; - if (GET_CODE (operands[3]) == GT) - return \"subs\\t%0, %1, %2\;it\\tne\;mvnne\\t%0, %0, asr #31\"; - output_asm_insn (\"cmp\\t%1, %2\", operands); output_asm_insn (\"ite\\t%D3\", operands); output_asm_insn (\"mov%D3\\t%0, #0\", operands); -- cgit v1.1