diff mbox series

[v2,07/22] tcg/tci: Split out target constraints to tcg-target-con-str.h

Message ID 20210115210456.1053477-8-richard.henderson@linaro.org
State Superseded
Headers show
Series tcg: backend constraints cleanup | expand

Commit Message

Richard Henderson Jan. 15, 2021, 9:04 p.m. UTC
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

---
 tcg/tci/tcg-target-con-str.h | 11 +++++++++++
 tcg/tci/tcg-target.h         |  2 ++
 tcg/tci/tcg-target.c.inc     | 14 --------------
 3 files changed, 13 insertions(+), 14 deletions(-)
 create mode 100644 tcg/tci/tcg-target-con-str.h

-- 
2.25.1

Comments

Peter Maydell Jan. 19, 2021, 2:47 p.m. UTC | #1
On Fri, 15 Jan 2021 at 21:08, Richard Henderson
<richard.henderson@linaro.org> wrote:
>

> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

> ---

>  tcg/tci/tcg-target-con-str.h | 11 +++++++++++

>  tcg/tci/tcg-target.h         |  2 ++

>  tcg/tci/tcg-target.c.inc     | 14 --------------

>  3 files changed, 13 insertions(+), 14 deletions(-)

>  create mode 100644 tcg/tci/tcg-target-con-str.h

>

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>


thanks
-- PMM
Philippe Mathieu-Daudé Jan. 19, 2021, 10:19 p.m. UTC | #2
On 1/15/21 10:04 PM, Richard Henderson wrote:
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

> ---

>  tcg/tci/tcg-target-con-str.h | 11 +++++++++++

>  tcg/tci/tcg-target.h         |  2 ++

>  tcg/tci/tcg-target.c.inc     | 14 --------------

>  3 files changed, 13 insertions(+), 14 deletions(-)

>  create mode 100644 tcg/tci/tcg-target-con-str.h

> 

> diff --git a/tcg/tci/tcg-target-con-str.h b/tcg/tci/tcg-target-con-str.h

> new file mode 100644

> index 0000000000..87c0f19e9c

> --- /dev/null

> +++ b/tcg/tci/tcg-target-con-str.h

> @@ -0,0 +1,11 @@

> +/* SPDX-License-Identifier: MIT */

> +/*

> + * Define TCI target-specific operand constraints.

> + * Copyright (c) 2021 Linaro

> + */

> +

> +/*

> + * Define constraint letters for register sets:

> + * REGS(letter, register_mask)

> + */

> +REGS('r', MAKE_64BIT_MASK(0, TCG_TARGET_NB_REGS))

> diff --git a/tcg/tci/tcg-target.h b/tcg/tci/tcg-target.h

> index bb784e018e..ab832aecc3 100644

> --- a/tcg/tci/tcg-target.h

> +++ b/tcg/tci/tcg-target.h

> @@ -207,4 +207,6 @@ static inline void tb_target_set_jmp_target(uintptr_t tc_ptr, uintptr_t jmp_rx,

>      /* no need to flush icache explicitly */

>  }

>  

> +#define TCG_TARGET_CON_STR_H

> +

>  #endif /* TCG_TARGET_H */

> diff --git a/tcg/tci/tcg-target.c.inc b/tcg/tci/tcg-target.c.inc

> index 9c45f5f88f..c913d85c37 100644

> --- a/tcg/tci/tcg-target.c.inc

> +++ b/tcg/tci/tcg-target.c.inc

> @@ -384,20 +384,6 @@ static bool patch_reloc(tcg_insn_unit *code_ptr, int type,

>      return true;

>  }

>  

> -/* Parse target specific constraints. */

> -static const char *target_parse_constraint(TCGArgConstraint *ct,

> -                                           const char *ct_str, TCGType type)

> -{

> -    switch (*ct_str++) {

> -    case 'r':

> -        ct->regs = BIT(TCG_TARGET_NB_REGS) - 1;

> -        break;


Easy one :)
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>


> -    default:

> -        return NULL;

> -    }

> -    return ct_str;

> -}
diff mbox series

Patch

diff --git a/tcg/tci/tcg-target-con-str.h b/tcg/tci/tcg-target-con-str.h
new file mode 100644
index 0000000000..87c0f19e9c
--- /dev/null
+++ b/tcg/tci/tcg-target-con-str.h
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: MIT */
+/*
+ * Define TCI target-specific operand constraints.
+ * Copyright (c) 2021 Linaro
+ */
+
+/*
+ * Define constraint letters for register sets:
+ * REGS(letter, register_mask)
+ */
+REGS('r', MAKE_64BIT_MASK(0, TCG_TARGET_NB_REGS))
diff --git a/tcg/tci/tcg-target.h b/tcg/tci/tcg-target.h
index bb784e018e..ab832aecc3 100644
--- a/tcg/tci/tcg-target.h
+++ b/tcg/tci/tcg-target.h
@@ -207,4 +207,6 @@  static inline void tb_target_set_jmp_target(uintptr_t tc_ptr, uintptr_t jmp_rx,
     /* no need to flush icache explicitly */
 }
 
+#define TCG_TARGET_CON_STR_H
+
 #endif /* TCG_TARGET_H */
diff --git a/tcg/tci/tcg-target.c.inc b/tcg/tci/tcg-target.c.inc
index 9c45f5f88f..c913d85c37 100644
--- a/tcg/tci/tcg-target.c.inc
+++ b/tcg/tci/tcg-target.c.inc
@@ -384,20 +384,6 @@  static bool patch_reloc(tcg_insn_unit *code_ptr, int type,
     return true;
 }
 
-/* Parse target specific constraints. */
-static const char *target_parse_constraint(TCGArgConstraint *ct,
-                                           const char *ct_str, TCGType type)
-{
-    switch (*ct_str++) {
-    case 'r':
-        ct->regs = BIT(TCG_TARGET_NB_REGS) - 1;
-        break;
-    default:
-        return NULL;
-    }
-    return ct_str;
-}
-
 #if defined(CONFIG_DEBUG_TCG_INTERPRETER)
 /* Show current bytecode. Used by tcg interpreter. */
 void tci_disas(uint8_t opc)