Message ID | 1354914437-15967-1-git-send-email-rth@twiddle.net |
---|---|
State | New |
Headers | show |
Ping? r~ On 12/07/2012 01:07 PM, Richard Henderson wrote: > Cc: Aurelien Jarno <aurelien@aurel32.net> > Signed-off-by: Richard Henderson <rth@twiddle.net> > --- > tcg/tcg-op.h | 2 ++ > tcg/tcg.h | 3 +++ > 2 files changed, 5 insertions(+) > > Changes since v1: > * Add tl-sized TCGV_IS_UNUSED to tcg-op.h. > > > r~ > > > diff --git a/tcg/tcg-op.h b/tcg/tcg-op.h > index 0b3cb0b..91c9d80 100644 > --- a/tcg/tcg-op.h > +++ b/tcg/tcg-op.h > @@ -2329,6 +2329,7 @@ static inline void tcg_gen_movcond_i64(TCGCond cond, TCGv_i64 ret, > #define tcg_gen_qemu_ldst_op tcg_gen_op3i_i32 > #define tcg_gen_qemu_ldst_op_i64 tcg_gen_qemu_ldst_op_i64_i32 > #define TCGV_UNUSED(x) TCGV_UNUSED_I32(x) > +#define TCGV_IS_UNUSED(x) TCGV_IS_UNUSED_I32(x) > #define TCGV_EQUAL(a, b) TCGV_EQUAL_I32(a, b) > #else > #define TCGv TCGv_i64 > @@ -2340,6 +2341,7 @@ static inline void tcg_gen_movcond_i64(TCGCond cond, TCGv_i64 ret, > #define tcg_gen_qemu_ldst_op tcg_gen_op3i_i64 > #define tcg_gen_qemu_ldst_op_i64 tcg_gen_qemu_ldst_op_i64_i64 > #define TCGV_UNUSED(x) TCGV_UNUSED_I64(x) > +#define TCGV_IS_UNUSED(x) TCGV_IS_UNUSED_I64(x) > #define TCGV_EQUAL(a, b) TCGV_EQUAL_I64(a, b) > #endif > > diff --git a/tcg/tcg.h b/tcg/tcg.h > index 9481e35..90406fc 100644 > --- a/tcg/tcg.h > +++ b/tcg/tcg.h > @@ -270,6 +270,9 @@ typedef int TCGv_i64; > #define TCGV_UNUSED_I32(x) x = MAKE_TCGV_I32(-1) > #define TCGV_UNUSED_I64(x) x = MAKE_TCGV_I64(-1) > > +#define TCGV_IS_UNUSED_I32(x) (GET_TCGV_I32(x) == -1) > +#define TCGV_IS_UNUSED_I64(x) (GET_TCGV_I64(x) == -1) > + > /* call flags */ > /* Helper does not read globals (either directly or through an exception). It > implies TCG_CALL_NO_WRITE_GLOBALS. */ >
Am 07.12.2012 22:07, schrieb Richard Henderson: > Cc: Aurelien Jarno <aurelien@aurel32.net> > Signed-off-by: Richard Henderson <rth@twiddle.net> Reviewed-by: Andreas Färber <afaerber@suse.de> Looks fine to me. The only remark I have is that for a use case of mine (writing a new target) I found it helpful to distinguish between tl and i32/i64, which requires static inline functions rather than macros for type safety - but since TCGV_UNUSED() is a macro, too, such changes would be a follow-up. Andreas > --- > tcg/tcg-op.h | 2 ++ > tcg/tcg.h | 3 +++ > 2 files changed, 5 insertions(+) > > Changes since v1: > * Add tl-sized TCGV_IS_UNUSED to tcg-op.h. > > > r~ > > > diff --git a/tcg/tcg-op.h b/tcg/tcg-op.h > index 0b3cb0b..91c9d80 100644 > --- a/tcg/tcg-op.h > +++ b/tcg/tcg-op.h > @@ -2329,6 +2329,7 @@ static inline void tcg_gen_movcond_i64(TCGCond cond, TCGv_i64 ret, > #define tcg_gen_qemu_ldst_op tcg_gen_op3i_i32 > #define tcg_gen_qemu_ldst_op_i64 tcg_gen_qemu_ldst_op_i64_i32 > #define TCGV_UNUSED(x) TCGV_UNUSED_I32(x) > +#define TCGV_IS_UNUSED(x) TCGV_IS_UNUSED_I32(x) > #define TCGV_EQUAL(a, b) TCGV_EQUAL_I32(a, b) > #else > #define TCGv TCGv_i64 > @@ -2340,6 +2341,7 @@ static inline void tcg_gen_movcond_i64(TCGCond cond, TCGv_i64 ret, > #define tcg_gen_qemu_ldst_op tcg_gen_op3i_i64 > #define tcg_gen_qemu_ldst_op_i64 tcg_gen_qemu_ldst_op_i64_i64 > #define TCGV_UNUSED(x) TCGV_UNUSED_I64(x) > +#define TCGV_IS_UNUSED(x) TCGV_IS_UNUSED_I64(x) > #define TCGV_EQUAL(a, b) TCGV_EQUAL_I64(a, b) > #endif > > diff --git a/tcg/tcg.h b/tcg/tcg.h > index 9481e35..90406fc 100644 > --- a/tcg/tcg.h > +++ b/tcg/tcg.h > @@ -270,6 +270,9 @@ typedef int TCGv_i64; > #define TCGV_UNUSED_I32(x) x = MAKE_TCGV_I32(-1) > #define TCGV_UNUSED_I64(x) x = MAKE_TCGV_I64(-1) > > +#define TCGV_IS_UNUSED_I32(x) (GET_TCGV_I32(x) == -1) > +#define TCGV_IS_UNUSED_I64(x) (GET_TCGV_I64(x) == -1) > + > /* call flags */ > /* Helper does not read globals (either directly or through an exception). It > implies TCG_CALL_NO_WRITE_GLOBALS. */ >
Ping 2. There is a Reviewed-by... r~ On 2012-12-07 13:07, Richard Henderson wrote: > Cc: Aurelien Jarno <aurelien@aurel32.net> > Signed-off-by: Richard Henderson <rth@twiddle.net> > --- > tcg/tcg-op.h | 2 ++ > tcg/tcg.h | 3 +++ > 2 files changed, 5 insertions(+) > > Changes since v1: > * Add tl-sized TCGV_IS_UNUSED to tcg-op.h. > > > r~ > > > diff --git a/tcg/tcg-op.h b/tcg/tcg-op.h > index 0b3cb0b..91c9d80 100644 > --- a/tcg/tcg-op.h > +++ b/tcg/tcg-op.h > @@ -2329,6 +2329,7 @@ static inline void tcg_gen_movcond_i64(TCGCond cond, TCGv_i64 ret, > #define tcg_gen_qemu_ldst_op tcg_gen_op3i_i32 > #define tcg_gen_qemu_ldst_op_i64 tcg_gen_qemu_ldst_op_i64_i32 > #define TCGV_UNUSED(x) TCGV_UNUSED_I32(x) > +#define TCGV_IS_UNUSED(x) TCGV_IS_UNUSED_I32(x) > #define TCGV_EQUAL(a, b) TCGV_EQUAL_I32(a, b) > #else > #define TCGv TCGv_i64 > @@ -2340,6 +2341,7 @@ static inline void tcg_gen_movcond_i64(TCGCond cond, TCGv_i64 ret, > #define tcg_gen_qemu_ldst_op tcg_gen_op3i_i64 > #define tcg_gen_qemu_ldst_op_i64 tcg_gen_qemu_ldst_op_i64_i64 > #define TCGV_UNUSED(x) TCGV_UNUSED_I64(x) > +#define TCGV_IS_UNUSED(x) TCGV_IS_UNUSED_I64(x) > #define TCGV_EQUAL(a, b) TCGV_EQUAL_I64(a, b) > #endif > > diff --git a/tcg/tcg.h b/tcg/tcg.h > index 9481e35..90406fc 100644 > --- a/tcg/tcg.h > +++ b/tcg/tcg.h > @@ -270,6 +270,9 @@ typedef int TCGv_i64; > #define TCGV_UNUSED_I32(x) x = MAKE_TCGV_I32(-1) > #define TCGV_UNUSED_I64(x) x = MAKE_TCGV_I64(-1) > > +#define TCGV_IS_UNUSED_I32(x) (GET_TCGV_I32(x) == -1) > +#define TCGV_IS_UNUSED_I64(x) (GET_TCGV_I64(x) == -1) > + > /* call flags */ > /* Helper does not read globals (either directly or through an exception). It > implies TCG_CALL_NO_WRITE_GLOBALS. */ >
Thanks, applied. On Fri, Dec 7, 2012 at 9:07 PM, Richard Henderson <rth@twiddle.net> wrote: > Cc: Aurelien Jarno <aurelien@aurel32.net> > Signed-off-by: Richard Henderson <rth@twiddle.net> > --- > tcg/tcg-op.h | 2 ++ > tcg/tcg.h | 3 +++ > 2 files changed, 5 insertions(+) > > Changes since v1: > * Add tl-sized TCGV_IS_UNUSED to tcg-op.h. > > > r~ > > > diff --git a/tcg/tcg-op.h b/tcg/tcg-op.h > index 0b3cb0b..91c9d80 100644 > --- a/tcg/tcg-op.h > +++ b/tcg/tcg-op.h > @@ -2329,6 +2329,7 @@ static inline void tcg_gen_movcond_i64(TCGCond cond, TCGv_i64 ret, > #define tcg_gen_qemu_ldst_op tcg_gen_op3i_i32 > #define tcg_gen_qemu_ldst_op_i64 tcg_gen_qemu_ldst_op_i64_i32 > #define TCGV_UNUSED(x) TCGV_UNUSED_I32(x) > +#define TCGV_IS_UNUSED(x) TCGV_IS_UNUSED_I32(x) > #define TCGV_EQUAL(a, b) TCGV_EQUAL_I32(a, b) > #else > #define TCGv TCGv_i64 > @@ -2340,6 +2341,7 @@ static inline void tcg_gen_movcond_i64(TCGCond cond, TCGv_i64 ret, > #define tcg_gen_qemu_ldst_op tcg_gen_op3i_i64 > #define tcg_gen_qemu_ldst_op_i64 tcg_gen_qemu_ldst_op_i64_i64 > #define TCGV_UNUSED(x) TCGV_UNUSED_I64(x) > +#define TCGV_IS_UNUSED(x) TCGV_IS_UNUSED_I64(x) > #define TCGV_EQUAL(a, b) TCGV_EQUAL_I64(a, b) > #endif > > diff --git a/tcg/tcg.h b/tcg/tcg.h > index 9481e35..90406fc 100644 > --- a/tcg/tcg.h > +++ b/tcg/tcg.h > @@ -270,6 +270,9 @@ typedef int TCGv_i64; > #define TCGV_UNUSED_I32(x) x = MAKE_TCGV_I32(-1) > #define TCGV_UNUSED_I64(x) x = MAKE_TCGV_I64(-1) > > +#define TCGV_IS_UNUSED_I32(x) (GET_TCGV_I32(x) == -1) > +#define TCGV_IS_UNUSED_I64(x) (GET_TCGV_I64(x) == -1) > + > /* call flags */ > /* Helper does not read globals (either directly or through an exception). It > implies TCG_CALL_NO_WRITE_GLOBALS. */ > -- > 1.7.11.7 > >
diff --git a/tcg/tcg-op.h b/tcg/tcg-op.h index 0b3cb0b..91c9d80 100644 --- a/tcg/tcg-op.h +++ b/tcg/tcg-op.h @@ -2329,6 +2329,7 @@ static inline void tcg_gen_movcond_i64(TCGCond cond, TCGv_i64 ret, #define tcg_gen_qemu_ldst_op tcg_gen_op3i_i32 #define tcg_gen_qemu_ldst_op_i64 tcg_gen_qemu_ldst_op_i64_i32 #define TCGV_UNUSED(x) TCGV_UNUSED_I32(x) +#define TCGV_IS_UNUSED(x) TCGV_IS_UNUSED_I32(x) #define TCGV_EQUAL(a, b) TCGV_EQUAL_I32(a, b) #else #define TCGv TCGv_i64 @@ -2340,6 +2341,7 @@ static inline void tcg_gen_movcond_i64(TCGCond cond, TCGv_i64 ret, #define tcg_gen_qemu_ldst_op tcg_gen_op3i_i64 #define tcg_gen_qemu_ldst_op_i64 tcg_gen_qemu_ldst_op_i64_i64 #define TCGV_UNUSED(x) TCGV_UNUSED_I64(x) +#define TCGV_IS_UNUSED(x) TCGV_IS_UNUSED_I64(x) #define TCGV_EQUAL(a, b) TCGV_EQUAL_I64(a, b) #endif diff --git a/tcg/tcg.h b/tcg/tcg.h index 9481e35..90406fc 100644 --- a/tcg/tcg.h +++ b/tcg/tcg.h @@ -270,6 +270,9 @@ typedef int TCGv_i64; #define TCGV_UNUSED_I32(x) x = MAKE_TCGV_I32(-1) #define TCGV_UNUSED_I64(x) x = MAKE_TCGV_I64(-1) +#define TCGV_IS_UNUSED_I32(x) (GET_TCGV_I32(x) == -1) +#define TCGV_IS_UNUSED_I64(x) (GET_TCGV_I64(x) == -1) + /* call flags */ /* Helper does not read globals (either directly or through an exception). It implies TCG_CALL_NO_WRITE_GLOBALS. */
Cc: Aurelien Jarno <aurelien@aurel32.net> Signed-off-by: Richard Henderson <rth@twiddle.net> --- tcg/tcg-op.h | 2 ++ tcg/tcg.h | 3 +++ 2 files changed, 5 insertions(+) Changes since v1: * Add tl-sized TCGV_IS_UNUSED to tcg-op.h. r~