public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* Renaming moutline-msabi-xlogues to mcall-ms2sysv-xlogues
@ 2017-04-09 20:48 Daniel Santos
  2017-04-10  7:52 ` Segher Boessenkool
  0 siblings, 1 reply; 2+ messages in thread
From: Daniel Santos @ 2017-04-09 20:48 UTC (permalink / raw)
  To: Sandra Loosemore, gcc, Uros Bizjak, Jan Hubicka

After careful thought, I'm renaming -moutline-msabi-xlogues to 
-mcall-ms2sysv-xlogues and would appreciate some feedback or any objections.

This is a new gcc8 feature that emits prologues and epilogues that call 
or tail-call stubs in libgcc when 64-bit ms_abi function calls a 
sysv_abi function and is required to consider 10 SSE registers 
clobbered.  I haven't been terribly happy with the name 
"moutline-msabi-xlogues."  First of all, as Sandra has pointed out, the 
language used in gcc for in-line verse out-of-line is always "inline" or 
"no-inline" and never "outline".  Yet changing this to 
"mno-inline-msabi-xlogues" seems to get further from describing what it 
does.  So I've been browsing through the gcc docs for other archs and 
noticed that they all use different terminology for their options that 
call or jump to stubs as a substitute for emitting inline saves & 
restores for registers.

ARC:  -mno-millicode
AVR:  -mcall-prologues
V850: -mno-prolog-function(enabled by default)

I think that PowerPC/rs6000 does this without an option (or maybe in -Os?).

What makes this feature different is that it has a vary narrow scope, so 
I'm thinking "mcall-ms2sysv-xlogues" is a good and brief descriptor.  
Any comments, objections?

Thanks,
Daniel

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Renaming moutline-msabi-xlogues to mcall-ms2sysv-xlogues
  2017-04-09 20:48 Renaming moutline-msabi-xlogues to mcall-ms2sysv-xlogues Daniel Santos
@ 2017-04-10  7:52 ` Segher Boessenkool
  0 siblings, 0 replies; 2+ messages in thread
From: Segher Boessenkool @ 2017-04-10  7:52 UTC (permalink / raw)
  To: Daniel Santos; +Cc: Sandra Loosemore, gcc, Uros Bizjak, Jan Hubicka

On Sun, Apr 09, 2017 at 03:52:30PM -0500, Daniel Santos wrote:
> So I've been browsing through the gcc docs for other archs and 
> noticed that they all use different terminology for their options that 
> call or jump to stubs as a substitute for emitting inline saves & 
> restores for registers.
> 
> ARC:  -mno-millicode
> AVR:  -mcall-prologues
> V850: -mno-prolog-function(enabled by default)
> 
> I think that PowerPC/rs6000 does this without an option (or maybe in -Os?).

The rs6000 ports determines what to do in function rs6000_savres_strategy.

Whether or not to do inline saves is different per kind of registers
(integer, float, vector), per ABI, and depends on other factors as well:
we always inline if it is just as small, we always inline if the outline
routines wouldn't work, and indeed for some ABIs we inline unless -Os
was used.  There are some more considerations.

But yes, there is no option to force different code generation.  This
is a good thing.


Segher

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-04-10  7:52 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-09 20:48 Renaming moutline-msabi-xlogues to mcall-ms2sysv-xlogues Daniel Santos
2017-04-10  7:52 ` Segher Boessenkool

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).