From f9423ff3fa5ac2374ed1a36c2d93475539f63f35 Mon Sep 17 00:00:00 2001 From: Michael Matz Date: Mon, 11 Jul 2016 16:28:48 +0200 Subject: inline asm: Fix 'P' and accept some r registers A 'P' template modifier should avoid adding a '$' to literal arguments. Also accept the numbered r8+ registers in an inline asm clobber list (ignoring them for now). --- tccasm.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'tccasm.c') diff --git a/tccasm.c b/tccasm.c index 569ff81..b651f68 100644 --- a/tccasm.c +++ b/tccasm.c @@ -1043,10 +1043,10 @@ static void subst_asm_operands(ASMOperand *operands, int nb_operands, } modifier = 0; if (*str == 'c' || *str == 'n' || - *str == 'b' || *str == 'w' || - *str == 'h' || *str == 'k' || *str == 'q' || - /* P in GCC would add "@PLT" to symbol refs in PIC mode - Ignore this in TCC. */ + *str == 'b' || *str == 'w' || *str == 'h' || *str == 'k' || + *str == 'q' || + /* P in GCC would add "@PLT" to symbol refs in PIC mode, + and make literal operands not be decorated with '$'. */ *str == 'P') modifier = *str++; index = find_constraint(operands, nb_operands, str, &str); -- cgit v1.3.1