On Wed, 21 Oct 2015, Richard Biener wrote: > Or maybe we should simply make GIMPLE _always_ adhere to the ABI > details from the start (gimplification). Note that this does not only involve > PROMOTE_MODE. Note that for what GIMPLE is concerned I'd only > "lower" passing / returning in registers (whee, and then we have > things like targetm.calls.split_complex_arg ... not to mention passing > GIMPLE memory in registers). > > Maybe I'm shooting too far here in the attempt to make GIMPLE closer > to the target (to expose those redundant extensions on GIMPLE) and > we'll end up with a bigger mess than with not doing this?
I don't know at what point target-specific promotion should appear, but right now it's visible before then (front ends use targetm.calls.promote_prototypes), which is definitely too early. -- Joseph S. Myers jos...@codesourcery.com