I think we should convert each one in a separate commit. This allows
'git bisect' to work its magic. :)

If you run: python BaseTools/Scripts/ConvertMasmToNasm.py --git OvmfPkg
then the script should produce individual commits for each assembly
file.

-Jordan

On 2014-11-05 06:21:42, Anthony PERARD wrote:
> The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert
> all *.asm to *.nasm.
> 
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Anthony PERARD <anthony.per...@citrix.com>
> ---
>  .../XenBusDxe/Ia32/InterlockedCompareExchange16.S  | 15 ---------------
>  ...nge16.asm => InterlockedCompareExchange16.nasm} |  9 +++------
>  OvmfPkg/XenBusDxe/Ia32/TestAndClearBit.S           | 13 -------------
>  .../{TestAndClearBit.asm => TestAndClearBit.nasm}  |  7 +++----
>  OvmfPkg/XenBusDxe/Ia32/hypercall.S                 | 22 
> ----------------------
>  .../Ia32/{hypercall.asm => hypercall.nasm}         |  7 +++----
>  .../XenBusDxe/X64/InterlockedCompareExchange16.S   | 13 -------------
>  ...nge16.asm => InterlockedCompareExchange16.nasm} |  8 ++++----
>  OvmfPkg/XenBusDxe/X64/TestAndClearBit.S            | 12 ------------
>  .../{TestAndClearBit.asm => TestAndClearBit.nasm}  |  8 ++++----
>  OvmfPkg/XenBusDxe/X64/hypercall.S                  | 22 
> ----------------------
>  .../X64/{hypercall.asm => hypercall.nasm}          |  8 ++++----
>  OvmfPkg/XenBusDxe/XenBusDxe.inf                    | 18 ++++++------------
>  13 files changed, 27 insertions(+), 135 deletions(-)
>  delete mode 100644 OvmfPkg/XenBusDxe/Ia32/InterlockedCompareExchange16.S
>  rename OvmfPkg/XenBusDxe/Ia32/{InterlockedCompareExchange16.asm => 
> InterlockedCompareExchange16.nasm} (88%)
>  delete mode 100644 OvmfPkg/XenBusDxe/Ia32/TestAndClearBit.S
>  rename OvmfPkg/XenBusDxe/Ia32/{TestAndClearBit.asm => TestAndClearBit.nasm} 
> (67%)
>  delete mode 100644 OvmfPkg/XenBusDxe/Ia32/hypercall.S
>  rename OvmfPkg/XenBusDxe/Ia32/{hypercall.asm => hypercall.nasm} (83%)
>  delete mode 100644 OvmfPkg/XenBusDxe/X64/InterlockedCompareExchange16.S
>  rename OvmfPkg/XenBusDxe/X64/{InterlockedCompareExchange16.asm => 
> InterlockedCompareExchange16.nasm} (88%)
>  delete mode 100644 OvmfPkg/XenBusDxe/X64/TestAndClearBit.S
>  rename OvmfPkg/XenBusDxe/X64/{TestAndClearBit.asm => TestAndClearBit.nasm} 
> (63%)
>  delete mode 100644 OvmfPkg/XenBusDxe/X64/hypercall.S
>  rename OvmfPkg/XenBusDxe/X64/{hypercall.asm => hypercall.nasm} (77%)
> 
> diff --git a/OvmfPkg/XenBusDxe/Ia32/InterlockedCompareExchange16.S 
> b/OvmfPkg/XenBusDxe/Ia32/InterlockedCompareExchange16.S
> deleted file mode 100644
> index 5306448..0000000
> --- a/OvmfPkg/XenBusDxe/Ia32/InterlockedCompareExchange16.S
> +++ /dev/null
> @@ -1,15 +0,0 @@
> -# UINT16
> -# EFIAPI
> -# InternalSyncCompareExchange16 (
> -#   IN      volatile UINT16           *Value,
> -#   IN      UINT16                    CompareValue,
> -#   IN      UINT16                    ExchangeValue
> -#   );
> -ASM_GLOBAL ASM_PFX(InternalSyncCompareExchange16)
> -ASM_PFX(InternalSyncCompareExchange16):
> -  mov 4(%esp), %ecx
> -  mov 8(%esp), %eax
> -  mov 12(%esp), %edx
> -  lock
> -  cmpxchgw %dx, (%ecx)
> -  ret
> diff --git a/OvmfPkg/XenBusDxe/Ia32/InterlockedCompareExchange16.asm 
> b/OvmfPkg/XenBusDxe/Ia32/InterlockedCompareExchange16.nasm
> similarity index 88%
> rename from OvmfPkg/XenBusDxe/Ia32/InterlockedCompareExchange16.asm
> rename to OvmfPkg/XenBusDxe/Ia32/InterlockedCompareExchange16.nasm
> index adcfbd0..fe6eb02 100644
> --- a/OvmfPkg/XenBusDxe/Ia32/InterlockedCompareExchange16.asm
> +++ b/OvmfPkg/XenBusDxe/Ia32/InterlockedCompareExchange16.nasm
> @@ -21,9 +21,7 @@
>  ;
>  
> ;------------------------------------------------------------------------------
>  
> -    .486
> -    .model  flat,C
> -    .code
> +SECTION .text
>  
>  
> ;------------------------------------------------------------------------------
>  ; UINT32
> @@ -34,12 +32,11 @@
>  ;   IN      UINT16                    ExchangeValue
>  ;   );
>  
> ;------------------------------------------------------------------------------
> -InternalSyncCompareExchange16   PROC
> +global ASM_PFX(InternalSyncCompareExchange16)
> +ASM_PFX(InternalSyncCompareExchange16):
>      mov     ecx, [esp + 4]
>      mov     eax, [esp + 8]
>      mov     edx, [esp + 12]
>      lock    cmpxchg [ecx], dx
>      ret
> -InternalSyncCompareExchange16   ENDP
>  
> -    END
> diff --git a/OvmfPkg/XenBusDxe/Ia32/TestAndClearBit.S 
> b/OvmfPkg/XenBusDxe/Ia32/TestAndClearBit.S
> deleted file mode 100644
> index 58dfa8b..0000000
> --- a/OvmfPkg/XenBusDxe/Ia32/TestAndClearBit.S
> +++ /dev/null
> @@ -1,13 +0,0 @@
> -# INT32
> -# EFIAPI
> -# TestAndClearBit (
> -#   IN  INT32 Bit,
> -#   IN  volatile VOID* Address
> -#   );
> -ASM_GLOBAL ASM_PFX(TestAndClearBit)
> -ASM_PFX(TestAndClearBit):
> -  mov 4(%esp), %ecx
> -  mov 8(%esp), %edx
> -  lock btrl %ecx, (%edx)
> -  sbbl %eax, %eax
> -  ret
> diff --git a/OvmfPkg/XenBusDxe/Ia32/TestAndClearBit.asm 
> b/OvmfPkg/XenBusDxe/Ia32/TestAndClearBit.nasm
> similarity index 67%
> rename from OvmfPkg/XenBusDxe/Ia32/TestAndClearBit.asm
> rename to OvmfPkg/XenBusDxe/Ia32/TestAndClearBit.nasm
> index ac80902..d77f74e 100644
> --- a/OvmfPkg/XenBusDxe/Ia32/TestAndClearBit.asm
> +++ b/OvmfPkg/XenBusDxe/Ia32/TestAndClearBit.nasm
> @@ -1,4 +1,4 @@
> -.code
> +SECTION .text
>  
>  ; INT32
>  ; EFIAPI
> @@ -6,12 +6,11 @@
>  ;   IN  INT32 Bit,
>  ;   IN  volatile VOID* Address
>  ;   );
> -TestAndClearBit PROC
> +global ASM_PFX(TestAndClearBit)
> +ASM_PFX(TestAndClearBit):
>    mov ecx, [esp + 4]
>    mov edx, [esp + 8]
>    lock btr [edx], ecx
>    sbb eax, eax
>    ret
> -TestAndClearBit ENDP
>  
> -END
> diff --git a/OvmfPkg/XenBusDxe/Ia32/hypercall.S 
> b/OvmfPkg/XenBusDxe/Ia32/hypercall.S
> deleted file mode 100644
> index 77d3478..0000000
> --- a/OvmfPkg/XenBusDxe/Ia32/hypercall.S
> +++ /dev/null
> @@ -1,22 +0,0 @@
> -# INTN
> -# EFIAPI
> -# XenHypercall2 (
> -#   IN     VOID *HypercallAddr,
> -#   IN OUT INTN Arg1,
> -#   IN OUT INTN Arg2
> -#   );
> -ASM_GLOBAL ASM_PFX(XenHypercall2)
> -ASM_PFX(XenHypercall2):
> -  # Save only ebx, ecx is supposed to be a scratch register and needs to be
> -  # saved by the caller
> -  push %ebx
> -  # Copy HypercallAddr to eax
> -  mov 8(%esp), %eax
> -  # Copy Arg1 to the register expected by Xen
> -  mov 12(%esp), %ebx
> -  # Copy Arg2 to the register expected by Xen
> -  mov 16(%esp), %ecx
> -  # Call HypercallAddr
> -  call *%eax
> -  pop %ebx
> -  ret
> diff --git a/OvmfPkg/XenBusDxe/Ia32/hypercall.asm 
> b/OvmfPkg/XenBusDxe/Ia32/hypercall.nasm
> similarity index 83%
> rename from OvmfPkg/XenBusDxe/Ia32/hypercall.asm
> rename to OvmfPkg/XenBusDxe/Ia32/hypercall.nasm
> index 9ead740..8547c30 100644
> --- a/OvmfPkg/XenBusDxe/Ia32/hypercall.asm
> +++ b/OvmfPkg/XenBusDxe/Ia32/hypercall.nasm
> @@ -1,4 +1,4 @@
> -.code
> +SECTION .text
>  
>  ; INTN
>  ; EFIAPI
> @@ -7,7 +7,8 @@
>  ;   IN OUT INTN Arg1,
>  ;   IN OUT INTN Arg2
>  ;   );
> -XenHypercall2 PROC
> +global ASM_PFX(XenHypercall2)
> +ASM_PFX(XenHypercall2):
>    ; Save only ebx, ecx is supposed to be a scratch register and needs to be
>    ; saved by the caller
>    push ebx
> @@ -21,6 +22,4 @@ XenHypercall2 PROC
>    call eax
>    pop ebx
>    ret
> -XenHypercall2 ENDP
>  
> -END
> diff --git a/OvmfPkg/XenBusDxe/X64/InterlockedCompareExchange16.S 
> b/OvmfPkg/XenBusDxe/X64/InterlockedCompareExchange16.S
> deleted file mode 100644
> index 23e08f3..0000000
> --- a/OvmfPkg/XenBusDxe/X64/InterlockedCompareExchange16.S
> +++ /dev/null
> @@ -1,13 +0,0 @@
> -# UINT16
> -# EFIAPI
> -# InternalSyncCompareExchange16 (
> -#   IN      volatile UINT16           *Value,
> -#   IN      UINT16                    CompareValue,
> -#   IN      UINT16                    ExchangeValue
> -#   );
> -ASM_GLOBAL ASM_PFX(InternalSyncCompareExchange16)
> -ASM_PFX(InternalSyncCompareExchange16):
> -  mov %edx, %eax
> -  lock
> -  cmpxchgw %r8w, (%rcx)
> -  ret
> diff --git a/OvmfPkg/XenBusDxe/X64/InterlockedCompareExchange16.asm 
> b/OvmfPkg/XenBusDxe/X64/InterlockedCompareExchange16.nasm
> similarity index 88%
> rename from OvmfPkg/XenBusDxe/X64/InterlockedCompareExchange16.asm
> rename to OvmfPkg/XenBusDxe/X64/InterlockedCompareExchange16.nasm
> index b23e421..7385c78 100644
> --- a/OvmfPkg/XenBusDxe/X64/InterlockedCompareExchange16.asm
> +++ b/OvmfPkg/XenBusDxe/X64/InterlockedCompareExchange16.nasm
> @@ -21,7 +21,8 @@
>  ;
>  
> ;------------------------------------------------------------------------------
>  
> -    .code
> +DEFAULT REL
> +SECTION .text
>  
>  
> ;------------------------------------------------------------------------------
>  ; UINT16
> @@ -32,10 +33,9 @@
>  ;   IN      UINT16                    ExchangeValue
>  ;   );
>  
> ;------------------------------------------------------------------------------
> -InternalSyncCompareExchange16   PROC
> +global ASM_PFX(InternalSyncCompareExchange16)
> +ASM_PFX(InternalSyncCompareExchange16):
>      mov     eax, edx
>      lock    cmpxchg [rcx], r8w
>      ret
> -InternalSyncCompareExchange16   ENDP
>  
> -    END
> diff --git a/OvmfPkg/XenBusDxe/X64/TestAndClearBit.S 
> b/OvmfPkg/XenBusDxe/X64/TestAndClearBit.S
> deleted file mode 100644
> index 0372e83..0000000
> --- a/OvmfPkg/XenBusDxe/X64/TestAndClearBit.S
> +++ /dev/null
> @@ -1,12 +0,0 @@
> -# INT32
> -# EFIAPI
> -# TestAndClearBit (
> -#   IN  INT32 Bit,                // rcx
> -#   IN  volatile VOID* Address    // rdx
> -#   );
> -ASM_GLOBAL ASM_PFX(TestAndClearBit)
> -ASM_PFX(TestAndClearBit):
> -  lock
> -  btrl %ecx, (%rdx)
> -  sbbl %eax, %eax
> -  ret
> diff --git a/OvmfPkg/XenBusDxe/X64/TestAndClearBit.asm 
> b/OvmfPkg/XenBusDxe/X64/TestAndClearBit.nasm
> similarity index 63%
> rename from OvmfPkg/XenBusDxe/X64/TestAndClearBit.asm
> rename to OvmfPkg/XenBusDxe/X64/TestAndClearBit.nasm
> index 3a25879..38ac549 100644
> --- a/OvmfPkg/XenBusDxe/X64/TestAndClearBit.asm
> +++ b/OvmfPkg/XenBusDxe/X64/TestAndClearBit.nasm
> @@ -1,4 +1,5 @@
> -.code
> +DEFAULT REL
> +SECTION .text
>  
>  ; INT32
>  ; EFIAPI
> @@ -6,11 +7,10 @@
>  ;   IN  INT32 Bit,                // rcx
>  ;   IN  volatile VOID* Address    // rdx
>  ;   );
> -TestAndClearBit PROC
> +global ASM_PFX(TestAndClearBit)
> +ASM_PFX(TestAndClearBit):
>    lock
>    btr [rdx], ecx
>    sbb eax, eax
>    ret
> -TestAndClearBit ENDP
>  
> -END
> diff --git a/OvmfPkg/XenBusDxe/X64/hypercall.S 
> b/OvmfPkg/XenBusDxe/X64/hypercall.S
> deleted file mode 100644
> index 83cf466..0000000
> --- a/OvmfPkg/XenBusDxe/X64/hypercall.S
> +++ /dev/null
> @@ -1,22 +0,0 @@
> -# INTN
> -# EFIAPI
> -# XenHypercall2 (
> -#   IN     VOID *HypercallAddr,
> -#   IN OUT INTN Arg1,
> -#   IN OUT INTN Arg2
> -#   );
> -ASM_GLOBAL ASM_PFX(XenHypercall2)
> -ASM_PFX(XenHypercall2):
> -  push %rdi
> -  push %rsi
> -  # Copy HypercallAddr to rax
> -  movq %rcx, %rax
> -  # Copy Arg1 to the register expected by Xen
> -  movq %rdx, %rdi
> -  # Copy Arg2 to the register expected by Xen
> -  movq %r8, %rsi
> -  # Call HypercallAddr
> -  call *%rax
> -  pop %rsi
> -  pop %rdi
> -  ret
> diff --git a/OvmfPkg/XenBusDxe/X64/hypercall.asm 
> b/OvmfPkg/XenBusDxe/X64/hypercall.nasm
> similarity index 77%
> rename from OvmfPkg/XenBusDxe/X64/hypercall.asm
> rename to OvmfPkg/XenBusDxe/X64/hypercall.nasm
> index 5b34514..177f271 100644
> --- a/OvmfPkg/XenBusDxe/X64/hypercall.asm
> +++ b/OvmfPkg/XenBusDxe/X64/hypercall.nasm
> @@ -1,4 +1,5 @@
> -.code
> +DEFAULT REL
> +SECTION .text
>  
>  ; INTN
>  ; EFIAPI
> @@ -7,7 +8,8 @@
>  ;   IN OUT INTN Arg1,
>  ;   IN OUT INTN Arg2
>  ;   );
> -XenHypercall2 PROC
> +global ASM_PFX(XenHypercall2)
> +ASM_PFX(XenHypercall2):
>    push rdi
>    push rsi
>    ; Copy HypercallAddr to rax
> @@ -21,6 +23,4 @@ XenHypercall2 PROC
>    pop rsi
>    pop rdi
>    ret
> -XenHypercall2 ENDP
>  
> -END
> diff --git a/OvmfPkg/XenBusDxe/XenBusDxe.inf b/OvmfPkg/XenBusDxe/XenBusDxe.inf
> index 17a5a90..4ce4743 100644
> --- a/OvmfPkg/XenBusDxe/XenBusDxe.inf
> +++ b/OvmfPkg/XenBusDxe/XenBusDxe.inf
> @@ -49,20 +49,14 @@
>    Helpers.c
>  
>  [Sources.IA32]
> -  Ia32/hypercall.S
> -  Ia32/hypercall.asm
> -  Ia32/InterlockedCompareExchange16.S
> -  Ia32/InterlockedCompareExchange16.asm
> -  Ia32/TestAndClearBit.S
> -  Ia32/TestAndClearBit.asm
> +  Ia32/hypercall.nasm
> +  Ia32/InterlockedCompareExchange16.nasm
> +  Ia32/TestAndClearBit.nasm
>  
>  [Sources.X64]
> -  X64/hypercall.S
> -  X64/hypercall.asm
> -  X64/InterlockedCompareExchange16.S
> -  X64/InterlockedCompareExchange16.asm
> -  X64/TestAndClearBit.S
> -  X64/TestAndClearBit.asm
> +  X64/hypercall.nasm
> +  X64/InterlockedCompareExchange16.nasm
> +  X64/TestAndClearBit.nasm
>  
>  [LibraryClasses]
>    UefiDriverEntryPoint
> -- 
> Anthony PERARD
> 
> 
> ------------------------------------------------------------------------------
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/edk2-devel

------------------------------------------------------------------------------
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to