On 2025-11-22 01:33, Uros Bizjak wrote:
>>
>> I think it would be good to have a comment at the point where
>> ASM_CALL_CONSTRAINT is defined explaining its proper use.
>>
>> Specifically, instructions like syscall, vmcall, vmfunc, vmmcall, int xx and
>> VM-specific escape instructions are not "calls" because they either don't
>> modify the stack or create an exception frame (kernel) or signal frame (user
>> space) which is completely special.
>
> The existing comment already mentions CALL instruction only:
>
> /*
> * This output constraint should be used for any inline asm which has a "call"
> * instruction. Otherwise the asm may be inserted before the frame pointer
> * gets set up by the containing function. If you forget to do this, objtool
> * may print a "call without frame pointer save/setup" warning.
> */
>
Yes. Some people seem to have misunderstood it to mean any instruction with
"CALL" in the name.
-hpa