From 0d9376da70d984c2a6d60838ec07075a3e6504e3 Mon Sep 17 00:00:00 2001 From: Joe Soroka Date: Tue, 1 Feb 2011 15:53:48 -0800 Subject: tccasm: accept bracketed offset expressions --- i386-asm.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'i386-asm.c') diff --git a/i386-asm.c b/i386-asm.c index 2623ef6..4d2f9b8 100644 --- a/i386-asm.c +++ b/i386-asm.c @@ -376,8 +376,20 @@ static void parse_operand(TCCState *s1, Operand *op) op->e.v = e.v; op->e.sym = e.sym; } else { - op->e.v = 0; - op->e.sym = NULL; + next(); + if (tok == '%') { + unget_tok('('); + op->e.v = 0; + op->e.sym = NULL; + } else { + /* bracketed offset expression */ + asm_expr(s1, &e); + if (tok != ')') + expect(")"); + next(); + op->e.v = e.v; + op->e.sym = e.sym; + } } if (tok == '(') { next(); -- cgit v1.3.1