qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] tcg/mips: make some functions inline.
@ 2017-11-02 10:26 Jiang Biao
  2017-11-02 10:53 ` Richard Henderson
  0 siblings, 1 reply; 7+ messages in thread
From: Jiang Biao @ 2017-11-02 10:26 UTC (permalink / raw)
  To: aurelien, rth; +Cc: qemu-devel, jiang.biao2, zhong.weidong

Make some functions inline.

Signed-off-by: Jiang Biao <jiang.biao2@zte.com.cn>
---
 tcg/mips/tcg-target.inc.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/tcg/mips/tcg-target.inc.c b/tcg/mips/tcg-target.inc.c
index 4b55ab8..f83a8ec 100644
--- a/tcg/mips/tcg-target.inc.c
+++ b/tcg/mips/tcg-target.inc.c
@@ -168,7 +168,7 @@ static inline void reloc_26(tcg_insn_unit *pc, tcg_insn_unit *target)
     *pc = deposit32(*pc, 0, 26, reloc_26_val(pc, target));
 }
 
-static void patch_reloc(tcg_insn_unit *code_ptr, int type,
+static inline void patch_reloc(tcg_insn_unit *code_ptr, int type,
                         intptr_t value, intptr_t addend)
 {
     tcg_debug_assert(type == R_MIPS_PC16);
@@ -507,7 +507,7 @@ static inline void tcg_out_opc_sa(TCGContext *s, MIPSInsn opc,
 
 }
 
-static void tcg_out_opc_sa64(TCGContext *s, MIPSInsn opc1, MIPSInsn opc2,
+static inline void tcg_out_opc_sa64(TCGContext *s, MIPSInsn opc1, MIPSInsn opc2,
                              TCGReg rd, TCGReg rt, TCGArg sa)
 {
     int32_t inst;
@@ -637,13 +637,13 @@ static inline void tcg_out_bswap16s(TCGContext *s, TCGReg ret, TCGReg arg)
     }
 }
 
-static void tcg_out_bswap_subr(TCGContext *s, tcg_insn_unit *sub)
+static inline void tcg_out_bswap_subr(TCGContext *s, tcg_insn_unit *sub)
 {
     bool ok = tcg_out_opc_jmp(s, OPC_JAL, sub);
     tcg_debug_assert(ok);
 }
 
-static void tcg_out_bswap32(TCGContext *s, TCGReg ret, TCGReg arg)
+static inline void tcg_out_bswap32(TCGContext *s, TCGReg ret, TCGReg arg)
 {
     if (use_mips32r2_instructions) {
         tcg_out_opc_reg(s, OPC_WSBH, ret, 0, arg);
@@ -656,7 +656,7 @@ static void tcg_out_bswap32(TCGContext *s, TCGReg ret, TCGReg arg)
     }
 }
 
-static void tcg_out_bswap32u(TCGContext *s, TCGReg ret, TCGReg arg)
+static inline void tcg_out_bswap32u(TCGContext *s, TCGReg ret, TCGReg arg)
 {
     if (use_mips32r2_instructions) {
         tcg_out_opc_reg(s, OPC_DSBH, ret, 0, arg);
@@ -670,7 +670,7 @@ static void tcg_out_bswap32u(TCGContext *s, TCGReg ret, TCGReg arg)
     }
 }
 
-static void tcg_out_bswap64(TCGContext *s, TCGReg ret, TCGReg arg)
+static inline void tcg_out_bswap64(TCGContext *s, TCGReg ret, TCGReg arg)
 {
     if (use_mips32r2_instructions) {
         tcg_out_opc_reg(s, OPC_DSBH, ret, 0, arg);
@@ -1103,7 +1103,7 @@ static void tcg_out_call_int(TCGContext *s, tcg_insn_unit *arg, bool tail)
     }
 }
 
-static void tcg_out_call(TCGContext *s, tcg_insn_unit *arg)
+static inline void tcg_out_call(TCGContext *s, tcg_insn_unit *arg)
 {
     tcg_out_call_int(s, arg, false);
     tcg_out_nop(s);
@@ -1661,7 +1661,7 @@ static void tcg_out_qemu_st(TCGContext *s, const TCGArg *args, bool is_64)
 #endif
 }
 
-static void tcg_out_mb(TCGContext *s, TCGArg a0)
+static inline void tcg_out_mb(TCGContext *s, TCGArg a0)
 {
     static const MIPSInsn sync[] = {
         /* Note that SYNC_MB is a slightly weaker than SYNC 0,
@@ -2433,7 +2433,7 @@ static void tcg_target_detect_isa(void)
     sigaction(SIGILL, &sa_old, NULL);
 }
 
-static tcg_insn_unit *align_code_ptr(TCGContext *s)
+static inline tcg_insn_unit *align_code_ptr(TCGContext *s)
 {
     uintptr_t p = (uintptr_t)s->code_ptr;
     if (p & 15) {
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] tcg/mips: make some functions inline.
  2017-11-02 10:26 [Qemu-devel] [PATCH] tcg/mips: make some functions inline Jiang Biao
@ 2017-11-02 10:53 ` Richard Henderson
  2017-11-02 11:23   ` jiang.biao2
  0 siblings, 1 reply; 7+ messages in thread
From: Richard Henderson @ 2017-11-02 10:53 UTC (permalink / raw)
  To: Jiang Biao, aurelien; +Cc: qemu-devel, zhong.weidong

On 11/02/2017 11:26 AM, Jiang Biao wrote:
> Make some functions inline.

Why?

Do you have evidence that the compiler isn't making reasonable default choices
with respect to inlining?


r~

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] tcg/mips: make some functions inline.
  2017-11-02 10:53 ` Richard Henderson
@ 2017-11-02 11:23   ` jiang.biao2
  2017-11-02 11:43     ` Richard Henderson
  0 siblings, 1 reply; 7+ messages in thread
From: jiang.biao2 @ 2017-11-02 11:23 UTC (permalink / raw)
  To: rth; +Cc: aurelien, qemu-devel, zhong.weidong

> On 11/02/2017 11:26 AM, Jiang Biao wrote:> > Make some functions inline.
> 
> Why?
> 
> Do you have evidence that the compiler isn't making reasonable default choices
> with respect to inlining?
No, :) Just found some of these functions are inline and others are not when reading 
the code, the style looks inconsistent. 
Besides, The compiler may make default inline choices for some functions, but may 
not for some cases(some longer ones). Adding inline manually can guarantee and 
not hurt. :)
Thanks.

r~

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] tcg/mips: make some functions inline.
  2017-11-02 11:23   ` jiang.biao2
@ 2017-11-02 11:43     ` Richard Henderson
  2017-11-02 12:16       ` Philippe Mathieu-Daudé
  2017-11-03  0:37       ` jiang.biao2
  0 siblings, 2 replies; 7+ messages in thread
From: Richard Henderson @ 2017-11-02 11:43 UTC (permalink / raw)
  To: jiang.biao2; +Cc: aurelien, qemu-devel, zhong.weidong

On 11/02/2017 12:23 PM, jiang.biao2@zte.com.cn wrote:
> No, :) Just found some of these functions are inline and others are not when reading 
> the code, the style looks inconsistent. 

My preference would be to remove them all.

> Besides, The compiler may make default inline choices for some functions, but may 
> not for some cases(some longer ones). Adding inline manually can guarantee and 
> not hurt. :)

The longer ones in particular should *not* be inline, so that we don't expand
the size of the code unnecessarily.  Which *can* hurt.


r~

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] tcg/mips: make some functions inline.
  2017-11-02 11:43     ` Richard Henderson
@ 2017-11-02 12:16       ` Philippe Mathieu-Daudé
  2017-11-03  0:37       ` jiang.biao2
  1 sibling, 0 replies; 7+ messages in thread
From: Philippe Mathieu-Daudé @ 2017-11-02 12:16 UTC (permalink / raw)
  To: Richard Henderson, Eric Blake
  Cc: Jiang Biao, zhong.weidong, qemu-devel@nongnu.org Developers,
	Aurelien Jarno

On Thu, Nov 2, 2017 at 8:43 AM, Richard Henderson <rth@twiddle.net> wrote:
> On 11/02/2017 12:23 PM, jiang.biao2@zte.com.cn wrote:
>> No, :) Just found some of these functions are inline and others are not when reading
>> the code, the style looks inconsistent.
>
> My preference would be to remove them all.

If more people agree to this we should add an entry in HACKING coding
guidelines (not sure about checkpatch).

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] tcg/mips: make some functions inline.
  2017-11-02 11:43     ` Richard Henderson
  2017-11-02 12:16       ` Philippe Mathieu-Daudé
@ 2017-11-03  0:37       ` jiang.biao2
  2017-11-03  8:42         ` Richard Henderson
  1 sibling, 1 reply; 7+ messages in thread
From: jiang.biao2 @ 2017-11-03  0:37 UTC (permalink / raw)
  To: rth; +Cc: aurelien, qemu-devel, zhong.weidong

> On 11/02/2017 12:23 PM, jiang.biao2@zte.com.cn wrote:
> > No, :) Just found some of these functions are inline and others are not when reading
> > the code, the style looks inconsistent.
> >
> My preference would be to remove them all.
Should I commit another patch to do that? :) 

> > Besides, The compiler may make default inline choices for some functions, but may
> > not for some cases(some longer ones). Adding inline manually can guarantee and
> > not hurt. :)
> The longer ones in particular should *not* be inline, so that we don't expand
> the size of the code unnecessarily.  Which *can* hurt.
Got that, thanks for the reply.

Regards,

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] tcg/mips: make some functions inline.
  2017-11-03  0:37       ` jiang.biao2
@ 2017-11-03  8:42         ` Richard Henderson
  0 siblings, 0 replies; 7+ messages in thread
From: Richard Henderson @ 2017-11-03  8:42 UTC (permalink / raw)
  To: jiang.biao2; +Cc: aurelien, qemu-devel, zhong.weidong

On 11/03/2017 01:37 AM, jiang.biao2@zte.com.cn wrote:
>> On 11/02/2017 12:23 PM, jiang.biao2@zte.com.cn wrote:
>>> No, :) Just found some of these functions are inline and others are not when reading
>>> the code, the style looks inconsistent.
>>>
>> My preference would be to remove them all.
> Should I commit another patch to do that? :) 

If you find the inconsistency distracting, yes.


r~

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2017-11-03  8:42 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-02 10:26 [Qemu-devel] [PATCH] tcg/mips: make some functions inline Jiang Biao
2017-11-02 10:53 ` Richard Henderson
2017-11-02 11:23   ` jiang.biao2
2017-11-02 11:43     ` Richard Henderson
2017-11-02 12:16       ` Philippe Mathieu-Daudé
2017-11-03  0:37       ` jiang.biao2
2017-11-03  8:42         ` Richard Henderson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).