diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/final.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/gcc/final.c b/gcc/final.c index 375429d..61a90a9 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -824,9 +824,13 @@ asm_insn_count (body) char *template; int count = 1; - for (template = decode_asm_operands (body, NULL_PTR, NULL_PTR, - NULL_PTR, NULL_PTR); - *template; template++) + if (GET_CODE (body) == ASM_INPUT) + template = XSTR (body, 0); + else + template = decode_asm_operands (body, NULL_PTR, NULL_PTR, + NULL_PTR, NULL_PTR); + + for ( ; *template; template++) if (IS_ASM_LOGICAL_LINE_SEPARATOR(*template) || *template == '\n') count++; |