x86inc: Fix call with memory operands
We overload the `call` instruction with a macro, but it would misbehave when the macro argument wasn't a valid identifier. Fix it by explicitly checking if the argument is an identifier.
This commit is contained in:
parent
9f20cc5c84
commit
406e0ddc0b
@ -1,7 +1,7 @@
|
|||||||
;*****************************************************************************
|
;*****************************************************************************
|
||||||
;* x86inc.asm: x264asm abstraction layer
|
;* x86inc.asm: x264asm abstraction layer
|
||||||
;*****************************************************************************
|
;*****************************************************************************
|
||||||
;* Copyright (C) 2005-2016 x264 project
|
;* Copyright (C) 2005-2017 x264 project
|
||||||
;*
|
;*
|
||||||
;* Authors: Loren Merritt <lorenm@u.washington.edu>
|
;* Authors: Loren Merritt <lorenm@u.washington.edu>
|
||||||
;* Anton Mitrofanov <BugMaster@narod.ru>
|
;* Anton Mitrofanov <BugMaster@narod.ru>
|
||||||
@ -1037,7 +1037,11 @@ INIT_XMM
|
|||||||
|
|
||||||
; Append cpuflags to the callee's name iff the appended name is known and the plain name isn't
|
; Append cpuflags to the callee's name iff the appended name is known and the plain name isn't
|
||||||
%macro call 1
|
%macro call 1
|
||||||
call_internal %1 %+ SUFFIX, %1
|
%ifid %1
|
||||||
|
call_internal %1 %+ SUFFIX, %1
|
||||||
|
%else
|
||||||
|
call %1
|
||||||
|
%endif
|
||||||
%endmacro
|
%endmacro
|
||||||
%macro call_internal 2
|
%macro call_internal 2
|
||||||
%xdefine %%i %2
|
%xdefine %%i %2
|
||||||
|
Loading…
x
Reference in New Issue
Block a user