This is the mail archive of the
mailing list for the GCC project.
Re: The subreg question
Ling-hua Tseng wrote:
James E Wilson wrote:
I read the descriptions of (high:m exp) and (lo_sum:m x y) in the gcc
internal manuls (Section 10.7 and 10.9).
The last line of their descriptions confused me because they wrote "m
should be Pmode".
A doc bug. You only need Pmode if you are operating on an address.
high was originally added for loading addresses on a risc, like a sparc,
in which case you would have to have Pmode. However, it has proven
useful in many other cases. The sparc.md file for instance has an
SFmode pattern that uses high/lo_sum, for loading an SFmode constant
into a general register.
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com