SRA problem with uninitialzed fields
Richard Kenner
kenner@vlsi1.ultra.nyu.edu
Fri Sep 24 16:55:00 GMT 2004
This looks like a bug in the expanders than the SRA as the <unnamed
type> is the right type in the sense it say it is only a certain
number of bits in this case 2.
Indeed I stopped when I looked at the .vars since I "knew" we didn't do
that sort of masking. But now I see that we actually do that masking
operation whenever TYPE_PRECISION is less than the size of the mode, if it's
required by the language (the default is false, but set true for C/C++/Objc).
I'd guess that logic was added for precisely this case and the generated
code omits the comparison since it's always known to be true.
I clearly have to turn that flag on for Ada and then revisit some of the
discussions I had this morning in this light.
Thanks!
More information about the Gcc
mailing list