On 10/8/24 20:38, Sami Tolvanen wrote:
> The compiler may choose not to emit type information in DWARF for
> external symbols. Clang, for example, does this for symbols not
> defined in the current TU.
>
> To provide a way to work around this issue, add support for
> __gendwarfksyms_ptr_<symbol> pointers that force the compiler to emit
> the necessary type information in DWARF also for the missing symbols.
>
> Example usage:
>
> #define GENDWARFKSYMS_PTR(sym) \
> static typeof(sym) *__gendwarfksyms_ptr_##sym __used \
> __section(".discard.gendwarfksyms") = &sym;
>
> extern int external_symbol(void);
> GENDWARFKSYMS_PTR(external_symbol);
>
> Signed-off-by: Sami Tolvanen <[email protected]>
> Acked-by: Neal Gompa <[email protected]>
Looks ok to me, feel free to add:
Reviewed-by: Petr Pavlu <[email protected]>
-- Petr