On Thu, Oct 10, 2013 at 7:12 PM, Andrew MacLeod <amacl...@redhat.com> wrote: > On 10/10/2013 10:35 AM, Richard Biener wrote: >> >> On Thu, Oct 10, 2013 at 4:30 PM, Richard Biener >> <richard.guent...@gmail.com> wrote: >>> >>> On Thu, Oct 10, 2013 at 3:10 PM, Andrew MacLeod <amacl...@redhat.com> >>> wrote: >>>> >>>> More fun target specific stuff. gimplify.c needs the back end supplied >>>> macros/function for the va-arg padding functions to bootstrap... >>> >>> Err ... don't we have the va_arg gimplify target hooks to hide this >>> kind of target dependency? >> >> Ah - it's common code for the targets... which makes me believe >> it belongs in targhooks.c, kind of. >> >> Btw, you didn't move gimplify_va_arg_expr to gimplify.c for some reason? >> >> > yeah, gimplify.c already was calling it, so it seemed more appropriate for a > gimplification routine in gimplify.c. If we didn't move it, gimpliify.c > would need builtins.h for no reason other than to get the prototype (once it > was moved out of tree.h where it happened to be declared) I didn't realize > it would drag crud with it :-P > > seems like there should be a better solution for PAD_VARARGS_DOWN (defined > in config/targ.h) and ARGS_GROW_DOWNWARD.. and somewhere in there something > gets expanded to ARGS_SIZE_RTX which required expr.h :-P . Its a bit ugly > for sure.
Well, I think the factored std_ routine which is supposed to be used by target hook implementations just resides in the wrong place. It should be in targhooks.c or target.c or somewhere similar. Richard.