float32 uint64_to_float32( uint64 a STATUS_PARAM )

{

    int8 shiftCount;



    if ( a == 0 ) return 0;

    shiftCount = countLeadingZeros64( a ) - 40;

    if ( 0 <= shiftCount ) {

        return packFloat32( 1 > 0, 0x95 - shiftCount, a<<shiftCount );

    }

    else {

        shiftCount += 7;

        if ( shiftCount < 0 ) {

            shift64RightJamming( a, - shiftCount, &a );

        }

        else {

            a <<= shiftCount;

        }

        return roundAndPackFloat32( 1 > 0, 0x9C - shiftCount, a STATUS_VAR );

    }

}

float32 uint64_to_float32( uint64 a STATUS_PARAM )

{

    int8 shiftCount;



    if ( a == 0 ) return 0;

    shiftCount = countLeadingZeros64( a ) - 40;

    if ( 0 <= shiftCount ) {

        return packFloat32( 1 > 0, 0x95 - shiftCount, a<<shiftCount );

    }

    else {

        shiftCount += 7;

        if ( shiftCount < 0 ) {

            shift64RightJamming( a, - shiftCount, &a );

        }

        else {

            a <<= shiftCount;

        }

        return roundAndPackFloat32( 1 > 0, 0x9C - shiftCount, a STATUS_VAR );

    }

}

float32 FUNC_0( uint64 a STATUS_PARAM )

{

    int8 shiftCount;



    if ( a == 0 ) return 0;

    shiftCount = countLeadingZeros64( a ) - 40;

    if ( 0 <= shiftCount ) {

        return packFloat32( 1 > 0, 0x95 - shiftCount, a<<shiftCount );

    }

    else {

        shiftCount += 7;

        if ( shiftCount < 0 ) {

            shift64RightJamming( a, - shiftCount, &a );

        }

        else {

            a <<= shiftCount;

        }

        return roundAndPackFloat32( 1 > 0, 0x9C - shiftCount, a STATUS_VAR );

    }

}

float32 FUNC_0( uint64 a STATUS_PARAM )
{ int8 shiftCount; if ( a == 0 ) return 0; shiftCount = countLeadingZeros64( a ) - 40; if ( 0 <= shiftCount ) { return packFloat32( 1 > 0, 0x95 - shiftCount, a<<shiftCount ); } else { shiftCount += 7; if ( shiftCount < 0 ) { shift64RightJamming( a, - shiftCount, &a ); } else { a <<= shiftCount; } return roundAndPackFloat32( 1 > 0, 0x9C - shiftCount, a STATUS_VAR ); } }