1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-09 06:29:38 +00:00

make compare functions fastcall

This commit is contained in:
mrdudz 2022-09-17 16:51:11 +02:00
parent 0f5122be2f
commit 09d383dd32
2 changed files with 21 additions and 15 deletions

View File

@ -1027,7 +1027,7 @@ float32 float32_rem( float32 a, float32 b )
{
flag aSign, bSign, zSign;
int16 aExp, bExp, expDiff;
bits32 aSig, bSig, q, allZero, alternateASig;
bits32 aSig, bSig, q, /*allZero,*/ alternateASig;
sbits32 sigMean;
aSig = extractFloat32Frac( a );
@ -1164,7 +1164,7 @@ float32 float32_sqrt( float32 a )
| according to the IEEE Standard for Floating-Point Arithmetic.
*----------------------------------------------------------------------------*/
flag float32_eq( float32 a, float32 b )
flag __fastcall__ float32_eq( float32 a, float32 b )
{
if ( ( ( extractFloat32Exp( a ) == 0xFF ) && extractFloat32Frac( a ) )
@ -1185,7 +1185,7 @@ flag float32_eq( float32 a, float32 b )
| performed according to the IEEE Standard for Floating-Point Arithmetic.
*----------------------------------------------------------------------------*/
flag float32_le( float32 a, float32 b )
flag __fastcall__ float32_le( float32 a, float32 b )
{
flag aSign, bSign;
@ -1208,7 +1208,7 @@ flag float32_le( float32 a, float32 b )
| according to the IEEE Standard for Floating-Point Arithmetic.
*----------------------------------------------------------------------------*/
flag float32_lt( float32 a, float32 b )
flag __fastcall__ float32_lt( float32 a, float32 b )
{
flag aSign, bSign;
@ -1232,7 +1232,7 @@ flag float32_lt( float32 a, float32 b )
| according to the IEEE Standard for Floating-Point Arithmetic.
*----------------------------------------------------------------------------*/
flag float32_eq_signaling( float32 a, float32 b )
flag __fastcall__ float32_eq_signaling( float32 a, float32 b )
{
if ( ( ( extractFloat32Exp( a ) == 0xFF ) && extractFloat32Frac( a ) )
@ -1252,10 +1252,10 @@ flag float32_eq_signaling( float32 a, float32 b )
| IEEE Standard for Floating-Point Arithmetic.
*----------------------------------------------------------------------------*/
flag float32_le_quiet( float32 a, float32 b )
flag __fastcall__ float32_le_quiet( float32 a, float32 b )
{
flag aSign, bSign;
int16 aExp, bExp;
/*int16 aExp, bExp;*/
if ( ( ( extractFloat32Exp( a ) == 0xFF ) && extractFloat32Frac( a ) )
|| ( ( extractFloat32Exp( b ) == 0xFF ) && extractFloat32Frac( b ) )
@ -1279,7 +1279,7 @@ flag float32_le_quiet( float32 a, float32 b )
| Standard for Floating-Point Arithmetic.
*----------------------------------------------------------------------------*/
flag float32_lt_quiet( float32 a, float32 b )
flag __fastcall__ float32_lt_quiet( float32 a, float32 b )
{
flag aSign, bSign;

View File

@ -1,4 +1,7 @@
#ifndef SOFTFLOAT_H_
#define SOFTFLOAT_H_
/*============================================================================
This C header file template is part of the Berkeley SoftFloat IEEE Floating-
@ -92,14 +95,15 @@ float32 float32_mul( float32, float32 );
float32 float32_div( float32, float32 );
float32 float32_rem( float32, float32 );
float32 float32_sqrt( float32 );
unsigned char float32_eq( float32, float32 );
unsigned char float32_le( float32, float32 );
unsigned char float32_lt( float32, float32 );
unsigned char float32_eq_signaling( float32, float32 );
unsigned char float32_le_quiet( float32, float32 );
unsigned char float32_lt_quiet( float32, float32 );
unsigned char float32_is_signaling_nan( float32 );
unsigned char __fastcall__ float32_eq( float32, float32 );
unsigned char __fastcall__ float32_le( float32, float32 );
unsigned char __fastcall__ float32_lt( float32, float32 );
unsigned char __fastcall__ float32_eq_signaling( float32, float32 );
unsigned char __fastcall__ float32_le_quiet( float32, float32 );
unsigned char __fastcall__ float32_lt_quiet( float32, float32 );
unsigned char __fastcall__ float32_is_signaling_nan( float32 );
#ifdef DOUBLES
/*----------------------------------------------------------------------------
| Software IEEE double-precision conversion routines.
*----------------------------------------------------------------------------*/
@ -124,4 +128,6 @@ unsigned char float64_eq_signaling( float64, float64 );
unsigned char float64_le_quiet( float64, float64 );
unsigned char float64_lt_quiet( float64, float64 );
unsigned char float64_is_signaling_nan( float64 );
#endif
#endif /* SOFTFLOAT_H_ */