Paul Koning <paul_kon...@dell.com> writes:

> To take that example, on the pdp11 an SImode is two HImodes.  Could
> the RTL template in the MD file for, say, addsi3 split that into two
> or three insns that operate on HImode values and describe the actual
> instructions?  In this case: add high parts, then add low parts and
> propagate carry into high.  Split that way it would seem you would not
> be constrained to adjacent registers, or for that matter to both being
> registers at all.

The lower subreg pass will do that for you if you have the right set of
insns.

It's not ideal to do it at expand time because it will inhibit the RTL
CSE and loop optimizers and some of the optimizations done by combine.
Those passes are not criticial, but they do have some effect.

Ian

Reply via email to