FPO_DATA structure (winnt.h)
Represents the stack frame layout for a function on an x86 computer when frame pointer omission (FPO) optimization is used. The structure is used to locate the base of the call frame.
Syntax
typedef struct _FPO_DATA {
DWORD ulOffStart;
DWORD cbProcSize;
DWORD cdwLocals;
WORD cdwParams;
WORD cbProlog : 8;
WORD cbRegs : 3;
WORD fHasSEH : 1;
WORD fUseBP : 1;
WORD reserved : 1;
WORD cbFrame : 2;
} FPO_DATA, *PFPO_DATA;
Members
ulOffStart
The offset of the first byte of the function code.
cbProcSize
The number of bytes in the function.
cdwLocals
The number of local variables.
cdwParams
The size of the parameters, in DWORDs.
cbProlog
The number of bytes in the function prolog code.
cbRegs
The number of registers saved.
fHasSEH
A variable that indicates whether the function uses structured exception handling.
fUseBP
A variable that indicates whether the EBP register has been allocated.
reserved
Reserved for future use.
cbFrame
A variable that indicates the frame type.
Type | Meaning |
---|---|
|
FPO frame |
|
Non-FPO frame |
|
Trap frame |
|
TSS frame |
Requirements
Requirement | Value |
---|---|
Header | winnt.h (include Windows.h) |
Redistributable | DbgHelp.dll 5.1 or later |