Browse Source

m68k: do not generate argument popping for a noreturn call

Karoly Balogh 1 year ago
parent
commit
9eda172a48
1 changed files with 1 additions and 1 deletions
  1. 1 1
      compiler/m68k/n68kcal.pas

+ 1 - 1
compiler/m68k/n68kcal.pas

@@ -53,7 +53,7 @@ implementation
 
 
     procedure tm68kcallnode.pop_parasize(pop_size: longint);
     procedure tm68kcallnode.pop_parasize(pop_size: longint);
       begin
       begin
-        if pop_size<>0 then
+        if (pop_size<>0) and not (po_noreturn in procdefinition.procoptions) then
           current_asmdata.CurrAsmList.concat(taicpu.op_const_reg(A_ADD,S_L,pop_size,NR_SP));
           current_asmdata.CurrAsmList.concat(taicpu.op_const_reg(A_ADD,S_L,pop_size,NR_SP));
       end;
       end;