getHalfPrecisionInt function
Gets a half precision integer value from a float.
Implementation
int getHalfPrecisionInt(double val) {
final fBuff = typed.Float32Buffer(1);
fBuff[0] = val;
final bBuff = fBuff.buffer;
final uList = bBuff.asUint8List();
final intVal = uList[0] | uList[1] << 8 | uList[2] << 16 | uList[3] << 24;
final index = intVal >> 23;
final masked = intVal & 0x7FFFFF;
final hBits = baseTable[index] + (masked >> shiftTable[index]);
return hBits;
}