From 5c6fadada82d599c0dd79ecc2585ce765ce25213 Mon Sep 17 00:00:00 2001 From: nickysn Date: Thu, 23 Apr 2020 02:17:03 +0000 Subject: [PATCH] + return singles in the same registers as 32-bit ints git-svn-id: branches/z80@45023 - --- compiler/z80/cpupara.pas | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/compiler/z80/cpupara.pas b/compiler/z80/cpupara.pas index 1784be621e..fbe5425d0f 100644 --- a/compiler/z80/cpupara.pas +++ b/compiler/z80/cpupara.pas @@ -437,9 +437,27 @@ unit cpupara; OS_F32: begin paraloc^.loc:=LOC_REGISTER; - paraloc^.register:=NR_FUNCTION_RETURN_REG; - paraloc^.size:=OS_32; - paraloc^.def:=u32inttype; + paraloc^.register:=NR_L; + paraloc^.size:=OS_8; + paraloc^.def:=u8inttype; + + paraloc:=result.add_location; + paraloc^.loc:=LOC_REGISTER; + paraloc^.register:=NR_H; + paraloc^.size:=OS_8; + paraloc^.def:=u8inttype; + + paraloc:=result.add_location; + paraloc^.loc:=LOC_REGISTER; + paraloc^.register:=NR_E; + paraloc^.size:=OS_8; + paraloc^.def:=u8inttype; + + paraloc:=result.add_location; + paraloc^.loc:=LOC_REGISTER; + paraloc^.register:=NR_D; + paraloc^.size:=OS_8; + paraloc^.def:=u8inttype; end; else internalerror(2005082603);