MCPcopy Create free account
hub / github.com/CloverHackyColor/CloverBootloader / DeserializeNumberSigned

Function DeserializeNumberSigned

Library/OcGuardLib/Ubsan.c:1346–1375  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1344#endif
1345
1346static void
1347DeserializeNumberSigned(char *pBuffer, size_t zBUfferLength, struct CTypeDescriptor *pType, longest L)
1348{
1349
1350 ASSERT(pBuffer);
1351 ASSERT(zBUfferLength > 0);
1352 ASSERT(pType);
1353 ASSERT(ISSET(pType->mTypeInfo, NUMBER_SIGNED_BIT));
1354
1355 switch (zDeserializeTypeWidth(pType)) {
1356 default:
1357 ASSERT(0 && "Invalid codepath");
1358 __unreachable();
1359 /* NOTREACHED */
1360#ifdef __SIZEOF_INT128__
1361 case WIDTH_128:
1362 DeserializeUINT128(pBuffer, zBUfferLength, pType, STATIC_CAST(__uint128_t, L));
1363 break;
1364#endif
1365 case WIDTH_64:
1366 /* FALLTHROUGH */
1367 case WIDTH_32:
1368 /* FALLTHROUGH */
1369 case WIDTH_16:
1370 /* FALLTHROUGH */
1371 case WIDTH_8:
1372 snprintf(pBuffer, zBUfferLength, "%" PRId64, STATIC_CAST(int64_t, L));
1373 break;
1374 }
1375}
1376
1377static void
1378DeserializeNumberUnsigned(char *pBuffer, size_t zBUfferLength, struct CTypeDescriptor *pType, ulongest L)

Callers 1

DeserializeNumberFunction · 0.85

Calls 2

zDeserializeTypeWidthFunction · 0.85
snprintfFunction · 0.85

Tested by

no test coverage detected