28 lines
808 B
Text
28 lines
808 B
Text
|
- define _CET_ENDBR depending X86_64 / X86
|
||
|
- use it in cglobal macro
|
||
|
|
||
|
Index: libavutil/x86/x86inc.asm
|
||
|
--- libavutil/x86/x86inc.asm.orig
|
||
|
+++ libavutil/x86/x86inc.asm
|
||
|
@@ -53,6 +53,12 @@
|
||
|
%endif
|
||
|
%endif
|
||
|
|
||
|
+%if ARCH_X86_64
|
||
|
+ %define _CET_ENDBR endbr64
|
||
|
+%else
|
||
|
+ %define _CET_ENDBR
|
||
|
+%endif
|
||
|
+
|
||
|
%define WIN64 0
|
||
|
%define UNIX64 0
|
||
|
%if ARCH_X86_64
|
||
|
@@ -746,6 +752,7 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg,
|
||
|
%endif
|
||
|
align function_align
|
||
|
%2:
|
||
|
+ _CET_ENDBR
|
||
|
RESET_MM_PERMUTATION ; needed for x86-64, also makes disassembly somewhat nicer
|
||
|
%xdefine rstk rsp ; copy of the original stack pointer, used when greater alignment than the known stack alignment is required
|
||
|
%assign stack_offset 0 ; stack pointer offset relative to the return address
|