- don't generate .size directives for function symbols on WebAssembly, to avoid

warnings from the external assembler
This commit is contained in:
Nikolay Nikolov 2024-09-01 22:48:36 +03:00
parent 28b080d9bc
commit 38100cd501

View File

@ -1475,7 +1475,12 @@ implementation
end;
ait_symbol_end :
begin
if tf_needs_symbol_size in target_info.flags then
if (tf_needs_symbol_size in target_info.flags) and
{ On WebAssembly, the .size directive shouldn't be generated for
function symbols, otherwise LLVM-MC v16 and above produce the
'warning: .size directive ignored for function symbols' message. }
(not (target_info.system in systems_wasm) or
(tai_symbol_end(hp).sym.typ<>AT_FUNCTION)) then
begin
s:=asminfo^.labelprefix+'e'+tostr(symendcount);
inc(symendcount);