diff options
Diffstat (limited to 'asm/parser.y')
-rw-r--r-- | asm/parser.y | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/asm/parser.y b/asm/parser.y index d5f9bde..676b949 100644 --- a/asm/parser.y +++ b/asm/parser.y @@ -680,7 +680,9 @@ dst_reg_flags: dst_reg_flag | dst_reg_flag dst_reg_flags /* note: destination registers are always incremented in repeat */ -dst_reg: reg { $1->flags |= IR3_REG_R; } +dst_reg: 'r' '<' T_A0 offset '>' { new_reg(0, IR3_REG_RELATIV)->offset = $4; } +| dst_reg_flags 'r' '<' T_A0 offset '>' { new_reg(0, IR3_REG_RELATIV)->offset = $4; } +| reg { $1->flags |= IR3_REG_R; } | dst_reg_flags reg { $2->flags |= IR3_REG_R; } src_reg_flag: T_ABSNEG { rflags.flags |= IR3_REG_ABS|IR3_REG_NEGATE; } |