Hi, Andrew

Which case will have to do this change? If the file format needs a relocation 
entry, what it will impact?

Thanks
Feng

From: Andrew Fish [mailto:af...@apple.com]
Sent: Wednesday, January 16, 2013 05:58
To: edk2-devel@lists.sourceforge.net
Subject: [edk2] [Patch] MdeModulePkg: Fix Xcode assembly issue

Dear MdeModulePkg maintainer,

Please review this patch that is required to make this file assemble and link 
with Xcode. It replaces absolute addressing that requires a relocation entry 
with PC relative addressing that does not require a relocation entry.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: af...@apple.com<mailto:af...@apple.com>

svn diff --diff-cmd diff Universal/Acpi/BootScriptExecutorDxe/X64/S3Asm.S
Index: Universal/Acpi/BootScriptExecutorDxe/X64/S3Asm.S
===================================================================
--- Universal/Acpi/BootScriptExecutorDxe/X64/S3Asm.S    (revision 14050)
+++ Universal/Acpi/BootScriptExecutorDxe/X64/S3Asm.S (working copy)
@@ -18,14 +18,14 @@
 ASM_PFX(AsmTransferControl):
     # rcx S3WakingVector    :DWORD
     # rdx AcpiLowMemoryBase :DWORD
-    lea   _AsmTransferControl_al_0000, %eax
+    lea   _AsmTransferControl_al_0000(%rip), %eax
     movq  $0x2800000000, %r8
     orq   %r8, %rax
     pushq %rax
     shrd  $20, %ecx, %ebx
     andl  $0x0f, %ecx
     movw  %cx, %bx
-    movl  %ebx, jmp_addr
+    movl  %ebx, jmp_addr(%rip)
     lret
 _AsmTransferControl_al_0000:
     .byte    0x0b8, 0x30, 0      # mov ax, 30h as selector
@@ -124,7 +124,7 @@
     popq     %rcx
     popq     %rax                         # restore all volatile registers
     jnz      L1
-    jmpq     *ASM_PFX(mOriginalHandler)
+    jmpq     *ASM_PFX(mOriginalHandler)(%rip)
 L1:
     addq     $0x08, %rsp                  # skip error code for PF
     iretq


Andrew Fish





------------------------------------------------------------------------------
Master Java SE, Java EE, Eclipse, Spring, Hibernate, JavaScript, jQuery
and much more. Keep your Java skills current with LearnJavaNow -
200+ hours of step-by-step video tutorials by Java experts.
SALE $49.99 this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122612 
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to