REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3790 Replace Opcode with the corresponding instructions. The code changes have been verified with CompareBuild.py tool, which can be used to compare the results of two different EDK II builds to determine if they generate the same binaries. (tool link: https://github.com/mdkinney/edk2/tree/sandbox/CompareBuild) Signed-off-by: Jason Lou <yun.lou@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn> Cc: Zhiguang Liu <zhiguang.liu@intel.com>
		
			
				
	
	
		
			39 lines
		
	
	
		
			968 B
		
	
	
	
		
			NASM
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			968 B
		
	
	
	
		
			NASM
		
	
	
	
	
	
| ;------------------------------------------------------------------------------
 | |
| ;
 | |
| ; Copyright (c) 2006 - 2022, Intel Corporation. All rights reserved.<BR>
 | |
| ; SPDX-License-Identifier: BSD-2-Clause-Patent
 | |
| ;
 | |
| ; Module Name:
 | |
| ;
 | |
| ;   ReadDr4.Asm
 | |
| ;
 | |
| ; Abstract:
 | |
| ;
 | |
| ;   AsmReadDr4 function
 | |
| ;
 | |
| ; Notes:
 | |
| ;
 | |
| ;------------------------------------------------------------------------------
 | |
| 
 | |
|     SECTION .text
 | |
| 
 | |
| ;------------------------------------------------------------------------------
 | |
| ; UINTN
 | |
| ; EFIAPI
 | |
| ; AsmReadDr4 (
 | |
| ;   VOID
 | |
| ;   );
 | |
| ;------------------------------------------------------------------------------
 | |
| global ASM_PFX(AsmReadDr4)
 | |
| ASM_PFX(AsmReadDr4):
 | |
|     ;
 | |
|     ; DR4 is alias to DR6 only if DE (in CR4) is cleared. Otherwise, reading
 | |
|     ; this register will cause a #UD exception.
 | |
|     ;
 | |
|     ; MS assembler doesn't support this instruction since no one would use it
 | |
|     ; under normal circustances.
 | |
|     ;
 | |
|     mov     eax, dr4
 | |
|     ret
 | |
| 
 |