Adam Nemet <ane...@caviumnetworks.com> writes: > Ian Lance Taylor writes: >> truncate has a machine independent meaning. > > Yes, I guess with your definition below it does. It's interesting though that > Jim had said the opposite in the excerpts posted by Jeff: > > And a later message from Jim: > > Truncate converts a value from a larger to a smaller mode in a machine > dependent way. > > A subreg just chops off the high bits. A truncate does not. The name might > be a little confusing, but the whole point of truncate is to have something > that operates differently than a subreg. > > Combine is clearly making an invalid transformation.
I'm not entirely sure, but I don't think Jim said the opposite. He said that the way truncate works is machine dependent. I said that the output of truncate is machine independent. Since truncate is only defined for fixed-point modes, I think both statements are true. Ian