On Mon, Jun 18, 2018 at 08:43:04AM -0500, Siddhesh Poyarekar wrote: > r217431 changed X30 as caller-saved in CALL_USE_REGISTERS because of > which this comment about X30 not being marked as call-clobbered is no > longer accurate.
Is the second paragraph is still relevant to how we define EPILOGUE_USES? Possibly I'd rewrite the comment to explain the behaviour around calls and how they interact with x30. It seems like the right thing to do, but I can't shake the feeling we'd be losing useful information here. James > * config/aarch64/aarch64.h: Remove obsolete comment. > --- > diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h > index 976f9afae54..df9fb31aa64 100644 > --- a/gcc/config/aarch64/aarch64.h > +++ b/gcc/config/aarch64/aarch64.h > @@ -303,15 +303,6 @@ extern unsigned aarch64_architecture_version; > register. GCC internally uses the poly_int variable aarch64_sve_vg > instead. */ > > -/* Note that we don't mark X30 as a call-clobbered register. The idea is > - that it's really the call instructions themselves which clobber X30. > - We don't care what the called function does with it afterwards. > - > - This approach makes it easier to implement sibcalls. Unlike normal > - calls, sibcalls don't clobber X30, so the register reaches the > - called function intact. EPILOGUE_USES says that X30 is useful > - to the called function. */ > - > #define FIXED_REGISTERS \ > { \ > 0, 0, 0, 0, 0, 0, 0, 0, /* R0 - R7 */ \ > -- > 2.14.4 >