Commit 406e0ddc authored by Henrik Gramner's avatar Henrik Gramner Committed by James Darnley

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.
parent 9f20cc5c
;***************************************************************************** ;*****************************************************************************
;* 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 ...@@ -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
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment