The current AsmGetFspInfoHeader function in FspHeader.nasm is
position dependent code since it uses absolute address. Change
to use relative address instead to make it position independent.
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Giri P Mudusuru <giri.p.mudusuru@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Maurice Ma <maurice.ma@intel.com>
Reviewed-by: Giri P Mudusuru <giri.p.mudusuru@intel.com>
pop eax\r
sub eax, ASM_PFX(NextInstruction)\r
add eax, ASM_PFX(AsmGetFspInfoHeader)\r
pop eax\r
sub eax, ASM_PFX(NextInstruction)\r
add eax, ASM_PFX(AsmGetFspInfoHeader)\r
- sub eax, dword [ASM_PFX(FspInfoHeaderRelativeOff)]\r
+ sub eax, dword [eax - ASM_PFX(AsmGetFspInfoHeader) + ASM_PFX(FspInfoHeaderRelativeOff)]\r
ret\r
\r
global ASM_PFX(AsmGetFspInfoHeaderNoStack)\r
ret\r
\r
global ASM_PFX(AsmGetFspInfoHeaderNoStack)\r