On 15/06/17 09:16, Ramana Radhakrishnan wrote: > crtl->is_leaf has a comment above it referring to "Local Register > Allocation". However this is set by IRA and not LRA since the meaning of > Local Register Allocator in GCC has changed quite drastically since 1999 > when this comment was introduced above the variable > current_function_is_leaf. From memory gcc in those days had "local" and > "global" register allocation - however all of this has changed quite a > bit drastically since. > > This patch merely updates the comment as I did some head scratching this > morning about how this could be set before Local Register Allocator > especially given the comment in ira.c as below. > > > /* Determine if the current function is a leaf before running IRA > since this can impact optimizations done by the prologue and > epilogue thus changing register elimination offsets. */ > crtl->is_leaf = leaf_function_p (); > > > Ok to apply ? > > > * emit-rtl.h (is_leaf): Update comment about local register allocator. >
OK. R. > > Thanks, > Ramana > > > update-comment.txt > > > diff --git a/gcc/emit-rtl.h b/gcc/emit-rtl.h > index 0a242b1..86fec77 100644 > --- a/gcc/emit-rtl.h > +++ b/gcc/emit-rtl.h > @@ -265,7 +265,7 @@ struct GTY(()) rtl_data { > > /* Nonzero if function being compiled doesn't contain any calls > (ignoring the prologue and epilogue). This is set prior to > - local register allocation and is valid for the remaining > + register allocation in IRA and is valid for the remaining > compiler passes. */ > bool is_leaf; > >