On Sat, Jul 2, 2011 at 12:11 AM, Joseph S. Myers <jos...@codesourcery.com> wrote: > On Fri, 1 Jul 2011, Bernd Schmidt wrote: > >> > * The global tree nodes for various modes are suspicious. Why are they >> > needed at all? >> >> Do you mean only the PImode ones or also intQI_type_node etc.? These are >> used to pick a suitable type in c_common_type_for_size. > > All of them.
Btw, I agree. The type_for_size langhook shouldn't be used from the middle-end, so the langhook should be restricted to handle those types the frontends use the langhook for (which means, the language specific types available). The middle-end uses of type-for-size should be all changed to build_nonstandard_integer_type. I think that in the end all global (middle-end visible) tree types should be those of the targets respective C ABI, thus those types necessary for example to create the various builtins for the C library functions. Thus, I don't understand why we have all those mode-specific global tree type nodes. In fact, most of them are not used at all. Richard.