> On 09/04/2013 06:04 PM, Jan Hubicka wrote: > > this is third fallout of my change to remove DECL_ARGUMENTS/DECL_RESULT for > > functions w/o > > bodies I did not really anticipate. > [...] > > I would like to basically ask if it seems to make sense to go this route and > > try to get rid of those declarations. > > I'm currently working on a new target, ptx, which uses a > pseudo-assembler where functions (even extern ones) need to be declared > with their arguments and return types. With my current code I have to > look at DECL_ARGUMENTS fairly late in the compilation. I'm not quite > sure yet whether the change to delete them will break the backend.
How do you support K&R functions here? My basic idea was that TYPE_ARG_TYPES should give enough information about external function calling convention anyone will ever need. I would hope that this will be sufficient for your use, too, despite the fact you no longer have parameter names at hand and you also lose info about external inline K&R-style delcared functions that has been optimized out. If not that indeed, you will not see DECL_ARGUMENTS for external function anytime after cgraph_remove_unreachable_functions is called. Honza