From 18be2ff0fd9291328814ec5d7751797d942242eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A1roly=20Balogh?= Date: Wed, 5 Jan 2005 19:01:53 +0000 Subject: [PATCH] * sysv abi also uses F0-F13 as volatile registers --- compiler/powerpc/cgcpu.pas | 9 ++++++--- compiler/powerpc/cpupara.pas | 8 +++++--- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/compiler/powerpc/cgcpu.pas b/compiler/powerpc/cgcpu.pas index 809f2199ad..fb2b64984b 100644 --- a/compiler/powerpc/cgcpu.pas +++ b/compiler/powerpc/cgcpu.pas @@ -1027,7 +1027,7 @@ const abi_powerpc_aix: firstfpureg := RS_F14; abi_powerpc_sysv: - firstfpureg := RS_F9; + firstfpureg := RS_F14; else internalerror(2003122903); end; @@ -1235,7 +1235,7 @@ const abi_powerpc_aix: firstfpureg := RS_F14; abi_powerpc_sysv: - firstfpureg := RS_F9; + firstfpureg := RS_F14; else internalerror(2003122903); end; @@ -2299,7 +2299,10 @@ begin end. { $Log$ - Revision 1.189 2004-12-24 11:51:55 jonas + Revision 1.190 2005-01-05 19:01:53 karoly + * sysv abi also uses F0-F13 as volatile registers + + Revision 1.189 2004/12/24 11:51:55 jonas * fixed a_jmp_name() for darwin Revision 1.188 2004/12/11 12:42:28 jonas diff --git a/compiler/powerpc/cpupara.pas b/compiler/powerpc/cpupara.pas index dfcf479725..badc3534d2 100644 --- a/compiler/powerpc/cpupara.pas +++ b/compiler/powerpc/cpupara.pas @@ -73,8 +73,7 @@ unit cpupara; abi_powerpc_aix: result := [RS_F0..RS_F13]; abi_powerpc_sysv: - {$warning: the 64bit sysv abi also uses RS_F0..RS_F13 like the aix abi above } - result := [RS_F0..RS_F8]; + result := [RS_F0..RS_F13]; else internalerror(2003091401); end; @@ -630,7 +629,10 @@ begin end. { $Log$ - Revision 1.77 2004-12-24 15:00:11 jonas + Revision 1.78 2005-01-05 19:01:53 karoly + * sysv abi also uses F0-F13 as volatile registers + + Revision 1.77 2004/12/24 15:00:11 jonas * fixed call-by-value passing of records with size 1, 2 or 4 for AIX abi (using a hack, normally all records should by passed by value under the aix abi, but that's currently impossible)