diff options
Diffstat (limited to 'tcg/tci/tcg-target.inc.c')
-rw-r--r-- | tcg/tci/tcg-target.inc.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/tcg/tci/tcg-target.inc.c b/tcg/tci/tcg-target.inc.c index 42d4bd671c..26ee9b1664 100644 --- a/tcg/tci/tcg-target.inc.c +++ b/tcg/tci/tcg-target.inc.c @@ -384,10 +384,10 @@ static void patch_reloc(tcg_insn_unit *code_ptr, int type, } /* Parse target specific constraints. */ -static int target_parse_constraint(TCGArgConstraint *ct, const char **pct_str) +static const char *target_parse_constraint(TCGArgConstraint *ct, + const char *ct_str, TCGType type) { - const char *ct_str = *pct_str; - switch (ct_str[0]) { + switch (*ct_str++) { case 'r': case 'L': /* qemu_ld constraint */ case 'S': /* qemu_st constraint */ @@ -395,11 +395,9 @@ static int target_parse_constraint(TCGArgConstraint *ct, const char **pct_str) tcg_regset_set32(ct->u.regs, 0, BIT(TCG_TARGET_NB_REGS) - 1); break; default: - return -1; + return NULL; } - ct_str++; - *pct_str = ct_str; - return 0; + return ct_str; } #if defined(CONFIG_DEBUG_TCG_INTERPRETER) |