From e0c34369b81d9334b04833c2fa7de08282b3929f Mon Sep 17 00:00:00 2001 From: James E Wilson Date: Fri, 20 Feb 2004 01:20:33 +0000 Subject: [PATCH] Fix latent problem found by Mostafa Hagog. * config/i386/i386.md (doloop_end_internal): Use nonimmediate_operand for operand2. Add condition that requires register_operand operand2 before reload. From-SVN: r78140 --- gcc/ChangeLog | 6 ++++++ gcc/config/i386/i386.md | 6 ++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 757d529ec0f..79022e82180 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-02-19 James E Wilson + + * config/i386/i386.md (doloop_end_internal): Use nonimmediate_operand + for operand2. Add condition that requires register_operand operand2 + before reload. + 2004-02-19 Richard Sandiford Maciej W. Rozycki diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index 77336814934..abd7f3dd773 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -13468,12 +13468,14 @@ (const_int 1)) (label_ref (match_operand 0 "" "")) (pc))) - (set (match_operand:SI 2 "register_operand" "=1,1,*m*r") + (set (match_operand:SI 2 "nonimmediate_operand" "=1,1,*m*r") (plus:SI (match_dup 1) (const_int -1))) (clobber (match_scratch:SI 3 "=X,X,r")) (clobber (reg:CC 17))] - "!TARGET_64BIT && TARGET_USE_LOOP" + "!TARGET_64BIT && TARGET_USE_LOOP + && (reload_in_progress || reload_completed + || register_operand (operands[2], VOIDmode))" { if (which_alternative != 0) return "#"; -- 2.11.4.GIT