diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8423540f835..58798857fa3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2000-01-11 Alexandre Oliva , Richard Henderson + + * resource.c (mark_referenced_resources): Mark a set strict_low_part + as used. + * config/i386/i386.c (ix86_expand_setcc): Re-enable clear + set + strict_low_part when possible. + 2000-01-11 Kaveh R. Ghazi * alias.c: PROTO -> PARAMS. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index f2d98a47a97..c788229ae77 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -4341,8 +4341,6 @@ ix86_expand_setcc (code, unordered, dest) */ type = 0; - /* %%% reload problems with in-out. Revisit. */ - type = 1; if (GET_MODE (dest) == QImode) type = 2; diff --git a/gcc/resource.c b/gcc/resource.c index e0e54428a03..719bd2090c2 100644 --- a/gcc/resource.c +++ b/gcc/resource.c @@ -272,7 +272,9 @@ mark_referenced_resources (x, res, include_delayed_effects) mark_referenced_resources (SET_SRC (x), res, 0); x = SET_DEST (x); - if (GET_CODE (x) == SIGN_EXTRACT || GET_CODE (x) == ZERO_EXTRACT) + if (GET_CODE (x) == SIGN_EXTRACT + || GET_CODE (x) == ZERO_EXTRACT + || GET_CODE (x) == STRICT_LOW_PART) mark_referenced_resources (x, res, 0); else if (GET_CODE (x) == SUBREG) x = SUBREG_REG (x);