Hi Richard, Thanks for the message.
[EMAIL PROTECTED] (Richard Kenner) writes: >> It is seldom necessary to wrap hard registers in @code{subreg}s; >> such registers would normally reduce to a single @code{reg} rtx. > > Are these valid? I know we've gone back and forth, but I thought the > current position is that SUBREGs of hard regs are only allowed > transitorily (e.g., during reload), but must be converted into a hard > reg by the end of the pass. That's my understanding too as far as insn operands are concerned. But some backends use things like "(subreg (match_operand ...) ...)"; see config/rs6000/spe.md for an example. We need to define what those subregs mean when the inner register has been reloaded. Or I suppose we could say that such define_insns are in error and use another construct instead. Richard