diff options
author | H. Peter Anvin (Intel) <hpa@zytor.com> | 2020-06-08 13:29:06 -0700 |
---|---|---|
committer | H. Peter Anvin (Intel) <hpa@zytor.com> | 2020-06-08 13:29:06 -0700 |
commit | bacf04a3e0bd90a1cd6eee665ec0b8a2b162e408 (patch) | |
tree | ae665bf8da83b17ae920e9273da0f573a315fa07 | |
parent | ae0e50c49168852275d26f4e489be9ba7c2a1240 (diff) | |
download | nasm-bacf04a3e0bd90a1cd6eee665ec0b8a2b162e408.tar.gz |
preproc: need to look at mmac->in_progress not mstk->in_progress
mstk.mstk reflects %rep conditions as well as actual expanded
macros. However, in_progress is undefined for %rep loops; we instead
want to look at the underlying mmacro, if there is one.
Discovered trying to compile x264.
Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
-rw-r--r-- | asm/preproc.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/asm/preproc.c b/asm/preproc.c index 0080432f..0196f487 100644 --- a/asm/preproc.c +++ b/asm/preproc.c @@ -6394,8 +6394,9 @@ static Token *pp_tokline(void) * condition, in which case we don't want to meddle with * anything. */ - if (!defining && !(istk->conds && !emitting(istk->conds->state)) - && !(istk->mstk.mstk && !istk->mstk.mstk->in_progress)) { + if (!defining && + !(istk->conds && !emitting(istk->conds->state)) && + !(istk->mstk.mmac && !istk->mstk.mmac->in_progress)) { tline = expand_mmac_params(tline); } |