All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Andreas Färber" <andreas.faerber@web.de>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-trivial@nongnu.org, qemu-devel@nongnu.org, patches@linaro.org
Subject: Re: [Qemu-trivial] [Qemu-devel] [PATCH] tcg: make tcg_const_ptr actually accept a pointer argument
Date: Sat, 10 Dec 2011 21:17:05 +0100	[thread overview]
Message-ID: <4EE3BE41.4010408@web.de> (raw)
In-Reply-To: <1323534931-10853-1-git-send-email-peter.maydell@linaro.org>

Am 10.12.2011 17:35, schrieb Peter Maydell:
> Make tcg_const_ptr() include a cast so that you can pass it a
> pointer. This allows us to drop the casts we had in all the places
> that use this macro.
> 
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

Acked-by: Andreas Färber <andreas.faerber@web.de>

At first the use of tcg_target_long seemed wrong to me, in case anyone
else is wondering, but it is in fact the type depending on
TCG_TARGET_REG_BITS not TARGET_LONG_BITS. (I'll have to fix my series.)

Andreas

> ---
> Minor cleanup; I have a patchset cooking that wants to use
> tcg_const_ptr(), which is why I noticed this infelicity.
> 
>  tcg/tcg-op.h |    6 +++---
>  tcg/tcg.h    |    4 ++--
>  2 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/tcg/tcg-op.h b/tcg/tcg-op.h
> index 82e04e7..169d3b2 100644
> --- a/tcg/tcg-op.h
> +++ b/tcg/tcg-op.h
> @@ -389,7 +389,7 @@ static inline void tcg_gen_helperN(void *func, int flags, int sizemask,
>                                     TCGArg ret, int nargs, TCGArg *args)
>  {
>      TCGv_ptr fn;
> -    fn = tcg_const_ptr((tcg_target_long)func);
> +    fn = tcg_const_ptr(func);
>      tcg_gen_callN(&tcg_ctx, fn, flags, sizemask, ret,
>                    nargs, args);
>      tcg_temp_free_ptr(fn);
> @@ -405,7 +405,7 @@ static inline void tcg_gen_helper32(void *func, int sizemask, TCGv_i32 ret,
>  {
>      TCGv_ptr fn;
>      TCGArg args[2];
> -    fn = tcg_const_ptr((tcg_target_long)func);
> +    fn = tcg_const_ptr(func);
>      args[0] = GET_TCGV_I32(a);
>      args[1] = GET_TCGV_I32(b);
>      tcg_gen_callN(&tcg_ctx, fn, TCG_CALL_CONST | TCG_CALL_PURE, sizemask,
> @@ -418,7 +418,7 @@ static inline void tcg_gen_helper64(void *func, int sizemask, TCGv_i64 ret,
>  {
>      TCGv_ptr fn;
>      TCGArg args[2];
> -    fn = tcg_const_ptr((tcg_target_long)func);
> +    fn = tcg_const_ptr(func);
>      args[0] = GET_TCGV_I64(a);
>      args[1] = GET_TCGV_I64(b);
>      tcg_gen_callN(&tcg_ctx, fn, TCG_CALL_CONST | TCG_CALL_PURE, sizemask,
> diff --git a/tcg/tcg.h b/tcg/tcg.h
> index 175000f..5c28239 100644
> --- a/tcg/tcg.h
> +++ b/tcg/tcg.h
> @@ -544,7 +544,7 @@ void tcg_add_target_add_op_defs(const TCGTargetOpDef *tdefs);
>  #define TCGV_NAT_TO_PTR(n) MAKE_TCGV_PTR(GET_TCGV_I32(n))
>  #define TCGV_PTR_TO_NAT(n) MAKE_TCGV_I32(GET_TCGV_PTR(n))
>  
> -#define tcg_const_ptr(V) TCGV_NAT_TO_PTR(tcg_const_i32(V))
> +#define tcg_const_ptr(V) TCGV_NAT_TO_PTR(tcg_const_i32((tcg_target_long)(V)))
>  #define tcg_global_reg_new_ptr(R, N) \
>      TCGV_NAT_TO_PTR(tcg_global_reg_new_i32((R), (N)))
>  #define tcg_global_mem_new_ptr(R, O, N) \
> @@ -555,7 +555,7 @@ void tcg_add_target_add_op_defs(const TCGTargetOpDef *tdefs);
>  #define TCGV_NAT_TO_PTR(n) MAKE_TCGV_PTR(GET_TCGV_I64(n))
>  #define TCGV_PTR_TO_NAT(n) MAKE_TCGV_I64(GET_TCGV_PTR(n))
>  
> -#define tcg_const_ptr(V) TCGV_NAT_TO_PTR(tcg_const_i64(V))
> +#define tcg_const_ptr(V) TCGV_NAT_TO_PTR(tcg_const_i64((tcg_target_long)(V)))
>  #define tcg_global_reg_new_ptr(R, N) \
>      TCGV_NAT_TO_PTR(tcg_global_reg_new_i64((R), (N)))
>  #define tcg_global_mem_new_ptr(R, O, N) \



WARNING: multiple messages have this Message-ID (diff)
From: "Andreas Färber" <andreas.faerber@web.de>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-trivial@nongnu.org, qemu-devel@nongnu.org, patches@linaro.org
Subject: Re: [Qemu-devel] [PATCH] tcg: make tcg_const_ptr actually accept a pointer argument
Date: Sat, 10 Dec 2011 21:17:05 +0100	[thread overview]
Message-ID: <4EE3BE41.4010408@web.de> (raw)
In-Reply-To: <1323534931-10853-1-git-send-email-peter.maydell@linaro.org>

Am 10.12.2011 17:35, schrieb Peter Maydell:
> Make tcg_const_ptr() include a cast so that you can pass it a
> pointer. This allows us to drop the casts we had in all the places
> that use this macro.
> 
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

Acked-by: Andreas Färber <andreas.faerber@web.de>

At first the use of tcg_target_long seemed wrong to me, in case anyone
else is wondering, but it is in fact the type depending on
TCG_TARGET_REG_BITS not TARGET_LONG_BITS. (I'll have to fix my series.)

Andreas

> ---
> Minor cleanup; I have a patchset cooking that wants to use
> tcg_const_ptr(), which is why I noticed this infelicity.
> 
>  tcg/tcg-op.h |    6 +++---
>  tcg/tcg.h    |    4 ++--
>  2 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/tcg/tcg-op.h b/tcg/tcg-op.h
> index 82e04e7..169d3b2 100644
> --- a/tcg/tcg-op.h
> +++ b/tcg/tcg-op.h
> @@ -389,7 +389,7 @@ static inline void tcg_gen_helperN(void *func, int flags, int sizemask,
>                                     TCGArg ret, int nargs, TCGArg *args)
>  {
>      TCGv_ptr fn;
> -    fn = tcg_const_ptr((tcg_target_long)func);
> +    fn = tcg_const_ptr(func);
>      tcg_gen_callN(&tcg_ctx, fn, flags, sizemask, ret,
>                    nargs, args);
>      tcg_temp_free_ptr(fn);
> @@ -405,7 +405,7 @@ static inline void tcg_gen_helper32(void *func, int sizemask, TCGv_i32 ret,
>  {
>      TCGv_ptr fn;
>      TCGArg args[2];
> -    fn = tcg_const_ptr((tcg_target_long)func);
> +    fn = tcg_const_ptr(func);
>      args[0] = GET_TCGV_I32(a);
>      args[1] = GET_TCGV_I32(b);
>      tcg_gen_callN(&tcg_ctx, fn, TCG_CALL_CONST | TCG_CALL_PURE, sizemask,
> @@ -418,7 +418,7 @@ static inline void tcg_gen_helper64(void *func, int sizemask, TCGv_i64 ret,
>  {
>      TCGv_ptr fn;
>      TCGArg args[2];
> -    fn = tcg_const_ptr((tcg_target_long)func);
> +    fn = tcg_const_ptr(func);
>      args[0] = GET_TCGV_I64(a);
>      args[1] = GET_TCGV_I64(b);
>      tcg_gen_callN(&tcg_ctx, fn, TCG_CALL_CONST | TCG_CALL_PURE, sizemask,
> diff --git a/tcg/tcg.h b/tcg/tcg.h
> index 175000f..5c28239 100644
> --- a/tcg/tcg.h
> +++ b/tcg/tcg.h
> @@ -544,7 +544,7 @@ void tcg_add_target_add_op_defs(const TCGTargetOpDef *tdefs);
>  #define TCGV_NAT_TO_PTR(n) MAKE_TCGV_PTR(GET_TCGV_I32(n))
>  #define TCGV_PTR_TO_NAT(n) MAKE_TCGV_I32(GET_TCGV_PTR(n))
>  
> -#define tcg_const_ptr(V) TCGV_NAT_TO_PTR(tcg_const_i32(V))
> +#define tcg_const_ptr(V) TCGV_NAT_TO_PTR(tcg_const_i32((tcg_target_long)(V)))
>  #define tcg_global_reg_new_ptr(R, N) \
>      TCGV_NAT_TO_PTR(tcg_global_reg_new_i32((R), (N)))
>  #define tcg_global_mem_new_ptr(R, O, N) \
> @@ -555,7 +555,7 @@ void tcg_add_target_add_op_defs(const TCGTargetOpDef *tdefs);
>  #define TCGV_NAT_TO_PTR(n) MAKE_TCGV_PTR(GET_TCGV_I64(n))
>  #define TCGV_PTR_TO_NAT(n) MAKE_TCGV_I64(GET_TCGV_PTR(n))
>  
> -#define tcg_const_ptr(V) TCGV_NAT_TO_PTR(tcg_const_i64(V))
> +#define tcg_const_ptr(V) TCGV_NAT_TO_PTR(tcg_const_i64((tcg_target_long)(V)))
>  #define tcg_global_reg_new_ptr(R, N) \
>      TCGV_NAT_TO_PTR(tcg_global_reg_new_i64((R), (N)))
>  #define tcg_global_mem_new_ptr(R, O, N) \

  reply	other threads:[~2011-12-10 20:18 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-10 16:35 [Qemu-trivial] [PATCH] tcg: make tcg_const_ptr actually accept a pointer argument Peter Maydell
2011-12-10 16:35 ` [Qemu-devel] " Peter Maydell
2011-12-10 20:17 ` Andreas Färber [this message]
2011-12-10 20:17   ` Andreas Färber
2011-12-14 11:13 ` [Qemu-trivial] " Stefan Hajnoczi
2011-12-14 11:13   ` Stefan Hajnoczi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4EE3BE41.4010408@web.de \
    --to=andreas.faerber@web.de \
    --cc=patches@linaro.org \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-trivial@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.