| 137 | void quantize_cpu_fp16(float* code, fp16_t* A, float* absmax, unsigned char* out, long long blocksize, long long n); |
| 138 | |
| 139 | static inline bf16_t float_to_bf16(float x) { |
| 140 | uint32_t bits; |
| 141 | std::memcpy(&bits, &x, 4); |
| 142 | uint32_t r = bits + 0x7FFF + ((bits >> 16) & 1); |
| 143 | return bf16_t{static_cast<uint16_t>(r >> 16)}; |
| 144 | } |
| 145 | |
| 146 | static float bf16_to_float(uint16_t bf16) { |
| 147 | uint32_t bits = (uint32_t)bf16 << 16; |
no outgoing calls
no test coverage detected