Thank you both for your answers. Let me know if I am wrong, but it seems it is more a technical issue than a conceptual one. So, the compiler could theoretically be patched to perform this kind of forward address? Yet, I would be glad to see such a cool feature, but I do not need it in reality and it looks like it is a lot of work to obtain it. Still, I can file a bug if you want (at the gcc-bugs mailing list, is not it?) ________________________________________ From: Segher Boessenkool [segher@xxxxxxxxxxxxxxxxxxx] Sent: Tuesday, January 14, 2020 2:11 PM To: RECOULES Frederic Cc: gcc-help@xxxxxxxxxxx Subject: Re: Interactions between function inlining and inline assembly On Tue, Jan 14, 2020 at 12:54:10PM +0000, RECOULES Frederic wrote: > Thank you for the answer. > > Yet, I agree this example has no real meaning, but my question is, > as v is already an address (global variable), why GCC prefers to > copy the value pointed by v into the stack and give the new pointer > rather than just give v directly? Ah, I see. The copy is made in gimple already, and the RTL passes cannot get rid of this. Could you please file a bug? Segher