> > Thanks for the reply. It seems that -mcmodel=large is different from > -mlong-calls. > > GCC still emit the BL instruction with -mcmodel=large. I thinks GCC should > emit BLR instruction with -mlong-calls, right? > > > Oh right. Also it looks like it is not hooked up but the support is partly > there: > /* Return true if calls to DECL should be treated as > long-calls (ie called via a register). */ static bool > aarch64_decl_is_long_call_p > (const_tree decl ATTRIBUTE_UNUSED) { > return false; > } > > I had added the attribute in a version for this and the users of the > toolchain has > not reported a bug about it so it seems like it is working. > I don't have time right now to add support for the option or port the > attribute to > the latest version but it should be easy as returning true from that function > when > the option is turned on. > > Thanks, > Andrew Pinski >
Thanks Andrew. I'm interested in this part and already have an initial patch for it. I can handle this if you don't mind :-)