reverts patches in softfloat

This commit is contained in:
Eyck-Alexander Jentzsch 2024-07-30 13:30:21 +02:00
parent 2edd68d1bd
commit 5d69b79232

View File

@ -92,14 +92,11 @@ float32_t
goto infProdArg;
}
if ( expC == 0xFF ) {
// expC indicates special value
if ( sigC ) {
//uiC is quiet NaN
uiZ = 0;
goto propagateNaN_ZC;
}
//uiC is +- infinity
uiZ = (uiC & ~(1UL << 31)) | ((unsigned long)signC << 31); //set sign bit
uiZ = uiC;
goto uiZ;
}
/*------------------------------------------------------------------------
@ -212,22 +209,15 @@ float32_t
/*------------------------------------------------------------------------
*------------------------------------------------------------------------*/
zeroProd:
if(expC | sigC){
//3rd operand != 0
uiZ = (uiC & ~(1UL << 31)) | ((unsigned long)(signC) << 31); //set sign bit
}
else {
//3rd operand == +-0
if (signProd != signC) {
completeCancellation:
uiZ = packToF32UI((softfloat_roundingMode == softfloat_round_min), 0, 0 );
goto uiZ;
}
uiZ = (uiC & ~(1UL << 31)) | ((unsigned long)signC << 31); //set sign bit
uiZ = uiC;
if ( ! (expC | sigC) && (signProd != signC) ) {
completeCancellation:
uiZ =
packToF32UI(
(softfloat_roundingMode == softfloat_round_min), 0, 0 );
}
uiZ:
uZ.ui = uiZ;
return uZ.f;
}