UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
syms_default_helpers.c
Go to the documentation of this file.
1
2//~ allen: memory helpers
3
4static SYMS_U32
5syms_override_memisnull(void *ptr, SYMS_U64 size){
6 SYMS_U32 result = 1;
7
8 // break down size
9 SYMS_U64 extra = (size&0x7);
10 SYMS_U64 count8 = (size >> 3);
11
12 SYMS_U8 *p8;
13
14 // check with 8-byte stride
15 SYMS_U64 *p64 = (SYMS_U64*)ptr;
16 for (SYMS_U64 i = 0; i < count8; i += 1, p64 += 1){
17 if (*p64 != 0){
18 result = 0;
19 goto done;
20 }
21 }
22
23 // check extra
24 p8 = (SYMS_U8*)p64;
25 for (SYMS_U64 i = 0; i < extra; i += 1, p8 += 1){
26 if (*p8 != 0){
27 result = 0;
28 goto done;
29 }
30 }
31
32 done:;
33 return(result);
34}
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
uint32_t SYMS_U32
Definition syms_crt_overrides.h:38
uint64_t SYMS_U64
Definition syms_crt_overrides.h:39
uint8_t SYMS_U8
Definition syms_crt_overrides.h:36