2019-10-07 11:55:47

by Colin King

[permalink] [raw]
Subject: [PATCH] nfp: bpf: make array exp_mask static, makes object smaller

From: Colin Ian King <[email protected]>

Don't populate the array exp_mask on the stack but instead make it
static. Makes the object code smaller by 224 bytes.

Before:
text data bss dec hex filename
77832 2290 0 80122 138fa ethernet/netronome/nfp/bpf/jit.o

After:
text data bss dec hex filename
77544 2354 0 79898 1381a ethernet/netronome/nfp/bpf/jit.o

(gcc version 9.2.1, amd64)

Signed-off-by: Colin Ian King <[email protected]>
---
drivers/net/ethernet/netronome/nfp/bpf/jit.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/netronome/nfp/bpf/jit.c b/drivers/net/ethernet/netronome/nfp/bpf/jit.c
index 5afcb3c4c2ef..c80bb83c8ac9 100644
--- a/drivers/net/ethernet/netronome/nfp/bpf/jit.c
+++ b/drivers/net/ethernet/netronome/nfp/bpf/jit.c
@@ -3952,7 +3952,7 @@ static void nfp_bpf_opt_neg_add_sub(struct nfp_prog *nfp_prog)
static void nfp_bpf_opt_ld_mask(struct nfp_prog *nfp_prog)
{
struct nfp_insn_meta *meta1, *meta2;
- const s32 exp_mask[] = {
+ static const s32 exp_mask[] = {
[BPF_B] = 0x000000ffU,
[BPF_H] = 0x0000ffffU,
[BPF_W] = 0xffffffffU,
--
2.20.1


2019-10-07 16:01:19

by Jakub Kicinski

[permalink] [raw]
Subject: Re: [PATCH] nfp: bpf: make array exp_mask static, makes object smaller

On Mon, 7 Oct 2019 12:52:39 +0100, Colin King wrote:
> From: Colin Ian King <[email protected]>
>
> Don't populate the array exp_mask on the stack but instead make it
> static. Makes the object code smaller by 224 bytes.
>
> Before:
> text data bss dec hex filename
> 77832 2290 0 80122 138fa ethernet/netronome/nfp/bpf/jit.o
>
> After:
> text data bss dec hex filename
> 77544 2354 0 79898 1381a ethernet/netronome/nfp/bpf/jit.o
>
> (gcc version 9.2.1, amd64)
>
> Signed-off-by: Colin Ian King <[email protected]>

Acked-by: Jakub Kicinski <[email protected]>

2019-10-08 19:14:02

by Jakub Kicinski

[permalink] [raw]
Subject: Re: [PATCH] nfp: bpf: make array exp_mask static, makes object smaller

On Mon, 7 Oct 2019 12:52:39 +0100, Colin King wrote:
> From: Colin Ian King <[email protected]>
>
> Don't populate the array exp_mask on the stack but instead make it
> static. Makes the object code smaller by 224 bytes.
>
> Before:
> text data bss dec hex filename
> 77832 2290 0 80122 138fa ethernet/netronome/nfp/bpf/jit.o
>
> After:
> text data bss dec hex filename
> 77544 2354 0 79898 1381a ethernet/netronome/nfp/bpf/jit.o
>
> (gcc version 9.2.1, amd64)
>
> Signed-off-by: Colin Ian King <[email protected]>

Applied to net-next, thanks.