PATCH: VAX sltu and sgeu patterns

Richard Henderson rth@cygnus.com
Thu Aug 17 20:25:00 GMT 2000


On Thu, Aug 17, 2000 at 06:01:03PM -0600, Jeffrey A Law wrote:
> Thinking more about this, I believe you can still lose -- you could have a
> pseudo which does not get a hard register.  That would trigger an input
> reload, which would trigger the no input reloads rule for cc0 using insns.

 (define_insn "sltu"
-  [(set (match_operand:SI 0 "general_operand" "=ro")
+  [(set (match_operand:SI 0 "register_operand" "=r")
        (ltu (cc0) (const_int 0)))]

Err.. there's no input here.  Therefore we should get no input
reloads, only output reloads.

> The more I think about it, the more I think it's better to include the
> comparison in the pattern itself.  Then split it after reload.  This would
> ensure the cc0 setter & user stay together and shouldn't inhibit any
> significant optimizations.

None of our other cc0 ports need this, that I recall.


r~


More information about the Gcc-patches mailing list