Hi Sheng,

On 02/19/21 05:47, Sheng Wei wrote:
> This is to add instruction SAVEPREVSSP, CLRSSBSY and RSTORSSP_RAX in Nasm.
> The open CI is using NASM 2.14.02.
> CET instructions are supported since NASM 2.15.01.
> 
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3192
> 
> Signed-off-by: Sheng Wei <[email protected]>
> Cc: Michael D Kinney <[email protected]>
> Cc: Liming Gao <[email protected]>
> Cc: Zhiguang Liu <[email protected]>
> Cc: Jiewen Yao <[email protected]>
> ---
>  MdePkg/Include/Ia32/Nasm.inc | 12 ++++++++++++
>  MdePkg/Include/X64/Nasm.inc  | 12 ++++++++++++
>  2 files changed, 24 insertions(+)
> 
> diff --git a/MdePkg/Include/Ia32/Nasm.inc b/MdePkg/Include/Ia32/Nasm.inc
> index 31ce861f1e..fa42f9d3e9 100644
> --- a/MdePkg/Include/Ia32/Nasm.inc
> +++ b/MdePkg/Include/Ia32/Nasm.inc
> @@ -9,6 +9,18 @@
>  ;
>  
> ;------------------------------------------------------------------------------
>  
> +%macro SAVEPREVSSP     0
> +    DB 0xF3, 0x0F, 0x01, 0xEA
> +%endmacro

Under your v1 patch, I wrote the following:

msgid <[email protected]>
https://edk2.groups.io/g/devel/message/71366

    I'll let others review this patch.

    I'm OK to add macros to the nasm.inc files under MdePkg, as wrappers
    for the DB-encoded CET instructions, as long as you also file a
    reminder BZ to replace the DBs with the actual instructions, once a
    CET-supporting NASM becomes available in CI.

Can you please file a reminder BZ *now*, for removing the DB-encoded
instructions, and can you also please reference that BZ ticket in the
commit message of this patch?

(To slightly correct my above quote, the new BZ should be addressed when
the edk2-native BaseTools requirements are advanced to NASM 2.15.01 as
well.)

Thanks
Laszlo


> +
> +%macro CLRSSBSY_EAX    0
> +    DB 0x67, 0xF3, 0x0F, 0xAE, 0x30
> +%endmacro
> +
> +%macro RSTORSSP_EAX    0
> +    DB 0x67, 0xF3, 0x0F, 0x01, 0x28
> +%endmacro
> +
>  %macro SETSSBSY        0
>      DB 0xF3, 0x0F, 0x01, 0xE8
>  %endmacro
> diff --git a/MdePkg/Include/X64/Nasm.inc b/MdePkg/Include/X64/Nasm.inc
> index 42412735ea..e57a803c81 100644
> --- a/MdePkg/Include/X64/Nasm.inc
> +++ b/MdePkg/Include/X64/Nasm.inc
> @@ -9,6 +9,18 @@
>  ;
>  
> ;------------------------------------------------------------------------------
>  
> +%macro SAVEPREVSSP     0
> +    DB 0xF3, 0x0F, 0x01, 0xEA
> +%endmacro
> +
> +%macro CLRSSBSY_RAX    0
> +    DB 0xF3, 0x0F, 0xAE, 0x30
> +%endmacro
> +
> +%macro RSTORSSP_RAX    0
> +    DB 0xF3, 0x0F, 0x01, 0x28
> +%endmacro
> +
>  %macro SETSSBSY        0
>      DB 0xF3, 0x0F, 0x01, 0xE8
>  %endmacro
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#71848): https://edk2.groups.io/g/devel/message/71848
Mute This Topic: https://groups.io/mt/80749115/21656
Group Owner: [email protected]
Unsubscribe: https://edk2.groups.io/g/devel/unsub [[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to