UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
syms_dwarf_expr.h File Reference

Go to the source code of this file.

Classes

struct  SYMS_DwRegsX64
 
struct  SYMS_DwExprMachineCallConfig
 
struct  SYMS_DwExprMachineConfig
 
struct  SYMS_DwExprAnalysis
 
struct  SYMS_DwExprAnalysisTask
 
struct  SYMS_DwSimpleLoc
 
struct  SYMS_DwPiece
 
struct  SYMS_DwLocation
 
struct  SYMS_DwExprStackNode
 
struct  SYMS_DwExprStack
 
struct  SYMS_DwExprCall
 
struct  SYMS_DwExprCallStack
 

Typedefs

typedef struct SYMS_DwRegsX64 SYMS_DwRegsX64
 
typedef SYMS_String8 SYMS_DwExprResolveCallFunc(void *call_user_ptr, SYMS_U64 p)
 
typedef struct SYMS_DwExprMachineCallConfig SYMS_DwExprMachineCallConfig
 
typedef struct SYMS_DwExprMachineConfig SYMS_DwExprMachineConfig
 
typedef SYMS_U32 SYMS_DwExprFlags
 
typedef struct SYMS_DwExprAnalysis SYMS_DwExprAnalysis
 
typedef struct SYMS_DwExprAnalysisTask SYMS_DwExprAnalysisTask
 
typedef enum SYMS_DwSimpleLocKind SYMS_DwSimpleLocKind
 
typedef enum SYMS_DwLocFailKind SYMS_DwLocFailKind
 
typedef struct SYMS_DwSimpleLoc SYMS_DwSimpleLoc
 
typedef struct SYMS_DwPiece SYMS_DwPiece
 
typedef struct SYMS_DwLocation SYMS_DwLocation
 
typedef struct SYMS_DwExprStackNode SYMS_DwExprStackNode
 
typedef struct SYMS_DwExprStack SYMS_DwExprStack
 
typedef struct SYMS_DwExprCall SYMS_DwExprCall
 
typedef struct SYMS_DwExprCallStack SYMS_DwExprCallStack
 

Enumerations

enum  {
  SYMS_DwExprFlag_UsesTextBase = (1 << 0) , SYMS_DwExprFlag_UsesMemory = (1 << 1) , SYMS_DwExprFlag_UsesRegisters = (1 << 2) , SYMS_DwExprFlag_UsesFrameBase = (1 << 3) ,
  SYMS_DwExprFlag_UsesObjectAddress = (1 << 4) , SYMS_DwExprFlag_UsesTLSAddress = (1 << 5) , SYMS_DwExprFlag_UsesCFA = (1 << 6) , SYMS_DwExprFlag_UsesCallResolution = (1 << 7) ,
  SYMS_DwExprFlag_UsesComposite = (1 << 8) , SYMS_DwExprFlag_NotSupported = (1 << 16) , SYMS_DwExprFlag_BadData = (1 << 17) , SYMS_DwExprFlag_NonLinearFlow = (1 << 18)
}
 
enum  SYMS_DwSimpleLocKind {
  SYMS_DwSimpleLocKind_Address , SYMS_DwSimpleLocKind_Register , SYMS_DwSimpleLocKind_Value , SYMS_DwSimpleLocKind_ValueLong ,
  SYMS_DwSimpleLocKind_Empty , SYMS_DwSimpleLocKind_Fail
}
 
enum  SYMS_DwLocFailKind {
  SYMS_DwLocFailKind_BadData , SYMS_DwLocFailKind_NotSupported , SYMS_DwLocFailKind_TimeOut , SYMS_DwLocFailKind_TooComplicated ,
  SYMS_DwLocFailKind_MissingTextBase , SYMS_DwLocFailKind_MissingMemory , SYMS_DwLocFailKind_MissingRegisters , SYMS_DwLocFailKind_MissingFrameBase ,
  SYMS_DwLocFailKind_MissingObjectAddress , SYMS_DwLocFailKind_MissingTLSAddress , SYMS_DwLocFailKind_MissingCFA , SYMS_DwLocFailKind_MissingCallResolution ,
  SYMS_DwLocFailKind_MissingArenaForComposite
}
 

Functions

SYMS_API SYMS_DwSimpleLoc syms_dw_expr__analyze_fast (void *base, SYMS_U64Range range, SYMS_U64 text_section_base)
 
SYMS_API SYMS_DwExprAnalysis syms_dw_expr__analyze_details (void *base, SYMS_U64Range range, SYMS_DwExprMachineCallConfig *call_config)
 
SYMS_API SYMS_DwLocation syms_dw_expr__eval (SYMS_Arena *arena_optional, void *base, SYMS_U64Range range, SYMS_DwExprMachineConfig *config)
 
SYMS_API SYMS_DwExprStack syms_dw_expr__stack_make (SYMS_Arena *arena)
 
SYMS_API void syms_dw_expr__stack_push (SYMS_Arena *arena, SYMS_DwExprStack *stack, SYMS_U64 x)
 
SYMS_API SYMS_U64 syms_dw_expr__stack_pop (SYMS_DwExprStack *stack)
 
SYMS_API SYMS_U64 syms_dw_expr__stack_pick (SYMS_DwExprStack *stack, SYMS_U64 idx)
 
SYMS_API SYMS_B32 syms_dw_expr__stack_is_empty (SYMS_DwExprStack *stack)
 
SYMS_API SYMS_DwExprCallsyms_dw_expr__call_top (SYMS_DwExprCallStack *stack)
 
SYMS_API void syms_dw_expr__call_push (SYMS_Arena *arena, SYMS_DwExprCallStack *stack, void *ptr, SYMS_U64 size)
 
SYMS_API void syms_dw_expr__call_pop (SYMS_DwExprCallStack *stack)
 
SYMS_API SYMS_DwExprAnalysisTasksyms_dw_expr__analysis_task_from_p (SYMS_DwExprAnalysisTask *first, SYMS_U64 p)
 

Variables

SYMS_GLOBAL SYMS_READ_ONLY SYMS_RegID syms_dw_reg_table_x64 []
 
SYMS_GLOBAL SYMS_READ_ONLY SYMS_RegID syms_dw_reg_table_x86 []
 

Typedef Documentation

◆ SYMS_DwExprAnalysis

◆ SYMS_DwExprAnalysisTask

◆ SYMS_DwExprCall

◆ SYMS_DwExprCallStack

◆ SYMS_DwExprFlags

◆ SYMS_DwExprMachineCallConfig

◆ SYMS_DwExprMachineConfig

◆ SYMS_DwExprResolveCallFunc

typedef SYMS_String8 SYMS_DwExprResolveCallFunc(void *call_user_ptr, SYMS_U64 p)

◆ SYMS_DwExprStack

◆ SYMS_DwExprStackNode

◆ SYMS_DwLocation

◆ SYMS_DwLocFailKind

◆ SYMS_DwPiece

◆ SYMS_DwRegsX64

◆ SYMS_DwSimpleLoc

◆ SYMS_DwSimpleLocKind

Enumeration Type Documentation

◆ anonymous enum

Enumerator
SYMS_DwExprFlag_UsesTextBase 
SYMS_DwExprFlag_UsesMemory 
SYMS_DwExprFlag_UsesRegisters 
SYMS_DwExprFlag_UsesFrameBase 
SYMS_DwExprFlag_UsesObjectAddress 
SYMS_DwExprFlag_UsesTLSAddress 
SYMS_DwExprFlag_UsesCFA 
SYMS_DwExprFlag_UsesCallResolution 
SYMS_DwExprFlag_UsesComposite 
SYMS_DwExprFlag_NotSupported 
SYMS_DwExprFlag_BadData 
SYMS_DwExprFlag_NonLinearFlow 

◆ SYMS_DwLocFailKind

Enumerator
SYMS_DwLocFailKind_BadData 
SYMS_DwLocFailKind_NotSupported 
SYMS_DwLocFailKind_TimeOut 
SYMS_DwLocFailKind_TooComplicated 
SYMS_DwLocFailKind_MissingTextBase 
SYMS_DwLocFailKind_MissingMemory 
SYMS_DwLocFailKind_MissingRegisters 
SYMS_DwLocFailKind_MissingFrameBase 
SYMS_DwLocFailKind_MissingObjectAddress 
SYMS_DwLocFailKind_MissingTLSAddress 
SYMS_DwLocFailKind_MissingCFA 
SYMS_DwLocFailKind_MissingCallResolution 
SYMS_DwLocFailKind_MissingArenaForComposite 

◆ SYMS_DwSimpleLocKind

Enumerator
SYMS_DwSimpleLocKind_Address 
SYMS_DwSimpleLocKind_Register 
SYMS_DwSimpleLocKind_Value 
SYMS_DwSimpleLocKind_ValueLong 
SYMS_DwSimpleLocKind_Empty 
SYMS_DwSimpleLocKind_Fail 

Function Documentation

◆ syms_dw_expr__analysis_task_from_p()

SYMS_API SYMS_DwExprAnalysisTask * syms_dw_expr__analysis_task_from_p ( SYMS_DwExprAnalysisTask first,
SYMS_U64  p 
)

◆ syms_dw_expr__analyze_details()

SYMS_API SYMS_DwExprAnalysis syms_dw_expr__analyze_details ( void base,
SYMS_U64Range  range,
SYMS_DwExprMachineCallConfig call_config 
)

◆ syms_dw_expr__analyze_fast()

SYMS_API SYMS_DwSimpleLoc syms_dw_expr__analyze_fast ( void base,
SYMS_U64Range  range,
SYMS_U64  text_section_base 
)

◆ syms_dw_expr__call_pop()

SYMS_API void syms_dw_expr__call_pop ( SYMS_DwExprCallStack stack)

◆ syms_dw_expr__call_push()

SYMS_API void syms_dw_expr__call_push ( SYMS_Arena arena,
SYMS_DwExprCallStack stack,
void ptr,
SYMS_U64  size 
)

◆ syms_dw_expr__call_top()

SYMS_API SYMS_DwExprCall * syms_dw_expr__call_top ( SYMS_DwExprCallStack stack)

◆ syms_dw_expr__eval()

SYMS_API SYMS_DwLocation syms_dw_expr__eval ( SYMS_Arena arena_optional,
void base,
SYMS_U64Range  range,
SYMS_DwExprMachineConfig config 
)

◆ syms_dw_expr__stack_is_empty()

SYMS_API SYMS_B32 syms_dw_expr__stack_is_empty ( SYMS_DwExprStack stack)

◆ syms_dw_expr__stack_make()

SYMS_API SYMS_DwExprStack syms_dw_expr__stack_make ( SYMS_Arena arena)

◆ syms_dw_expr__stack_pick()

SYMS_API SYMS_U64 syms_dw_expr__stack_pick ( SYMS_DwExprStack stack,
SYMS_U64  idx 
)

◆ syms_dw_expr__stack_pop()

SYMS_API SYMS_U64 syms_dw_expr__stack_pop ( SYMS_DwExprStack stack)

◆ syms_dw_expr__stack_push()

SYMS_API void syms_dw_expr__stack_push ( SYMS_Arena arena,
SYMS_DwExprStack stack,
SYMS_U64  x 
)

Variable Documentation

◆ syms_dw_reg_table_x64

SYMS_GLOBAL SYMS_READ_ONLY SYMS_RegID syms_dw_reg_table_x64[]
Initial value:
= {
}
@ SYMS_RegX64Code_r15
Definition syms_meta_regs_x64.h:103
@ SYMS_RegX64Code_rip
Definition syms_meta_regs_x64.h:106
@ SYMS_RegX64Code_r8
Definition syms_meta_regs_x64.h:96
@ SYMS_RegX64Code_rsi
Definition syms_meta_regs_x64.h:94
@ SYMS_RegX64Code_rsp
Definition syms_meta_regs_x64.h:92
@ SYMS_RegX64Code_rax
Definition syms_meta_regs_x64.h:88
@ SYMS_RegX64Code_rcx
Definition syms_meta_regs_x64.h:89
@ SYMS_RegX64Code_r11
Definition syms_meta_regs_x64.h:99
@ SYMS_RegX64Code_r12
Definition syms_meta_regs_x64.h:100
@ SYMS_RegX64Code_r14
Definition syms_meta_regs_x64.h:102
@ SYMS_RegX64Code_rdi
Definition syms_meta_regs_x64.h:95
@ SYMS_RegX64Code_r10
Definition syms_meta_regs_x64.h:98
@ SYMS_RegX64Code_rbp
Definition syms_meta_regs_x64.h:93
@ SYMS_RegX64Code_rdx
Definition syms_meta_regs_x64.h:90
@ SYMS_RegX64Code_r13
Definition syms_meta_regs_x64.h:101
@ SYMS_RegX64Code_r9
Definition syms_meta_regs_x64.h:97
@ SYMS_RegX64Code_rbx
Definition syms_meta_regs_x64.h:91

◆ syms_dw_reg_table_x86

SYMS_GLOBAL SYMS_READ_ONLY SYMS_RegID syms_dw_reg_table_x86[]
Initial value:
= {
}
@ SYMS_RegX86Code_eip
Definition syms_meta_regs_x86.h:83
@ SYMS_RegX86Code_esi
Definition syms_meta_regs_x86.h:78
@ SYMS_RegX86Code_eax
Definition syms_meta_regs_x86.h:72
@ SYMS_RegX86Code_esp
Definition syms_meta_regs_x86.h:76
@ SYMS_RegX86Code_ebp
Definition syms_meta_regs_x86.h:77
@ SYMS_RegX86Code_edx
Definition syms_meta_regs_x86.h:74
@ SYMS_RegX86Code_edi
Definition syms_meta_regs_x86.h:79
@ SYMS_RegX86Code_ebx
Definition syms_meta_regs_x86.h:75
@ SYMS_RegX86Code_ecx
Definition syms_meta_regs_x86.h:73