Re: gcc feature request / RFC: extra clobbered regs

From: Vladimir Makarov
Date: Wed Jul 01 2015 - 14:12:39 EST




On 07/01/2015 01:43 PM, Jakub Jelinek wrote:
On Wed, Jul 01, 2015 at 01:35:16PM -0400, Vladimir Makarov wrote:
Actually it raise a question for me. If we describe that a function
clobbers more than calling convention and then use it as a value (assigning
a variable or passing as an argument) and loosing a track of it and than
call it. How can RA know what the call clobbers actually. So for the
function with the attributes we should prohibit use it as a value or make
the attributes as a part of the function type, or at least say it is unsafe.
So now I see this as a *bigger problem* with this extension. Although I
guess it already exists as we have description of different ABI as an
extension.
Unfortunately target attribute is function decl attribute rather than
function type. And having more attributes affect switchable targets will be
non-fun.


Making attributes a part of type probably creates a lot issues too.

Although I am not a front-end developer, still I think it is hard to implement in front-end. Sticking fully to this approach, it would be logical to describe this as a debug info (I am not sure it is even possible).

Portability would be an issue too. It is hard to prevent for a regular C developer to assign such function to variable because it is ok on his system while the compilation of such code may fail on another system.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/