[PATCH, RFC 6/9] gas: dw2gencfi: ignore all .cfi_* directives with --scfi=all

Indu Bhagat indu.bhagat@oracle.com
Sat Sep 30 06:20:53 GMT 2023


On 9/28/23 07:10, Nick Clifton wrote:
> Hi Indu,
> 
>> @@ -806,6 +806,12 @@ dot_cfi (int arg)
>>     offsetT offset;
>>     unsigned reg1, reg2;
>> +  if (flag_synth_cfi)
>> +    {
>> +      ignore_rest_of_line ();
>> +      return;
>> +    }
>> +
> 
> I am concerned about this behaviour.  I understand that mixing
> synthetic CFI statements and real ones would be a bad idea, but
> I think that silently ignoring the real ones is a mistake.  At
> the very least you ought to generate a warning message letting
> the user know that their cfi instructions are being ignored.
> 

Yes, we could trigger one warning per function, when we see, say a 
.cfi_startproc, for a asm function for which user specified --scfi=all:

   "Warning: --scfi=all ignores sythesizable CFI directives for function 
'foo'"

That said, it looks like for --scfi=all, we will need to honor at least 
the following from the user:
   - .cfi_sections
   - .cfi_label
   - .cfi_signal_frame

Thanks



More information about the Binutils mailing list