Re: [PATCH] fbdev: matrox: make array wtst_xlat static const, makes object smaller

From: Ville Syrjälä
Date: Fri Sep 06 2019 - 14:17:21 EST


On Fri, Sep 06, 2019 at 07:11:14PM +0100, Colin King wrote:
> From: Colin Ian King <colin.king@xxxxxxxxxxxxx>
>
> Don't populate the array wtst_xlat on the stack but instead make it
> static const. Makes the object code smaller by 89 bytes.
>
> Before:
> text data bss dec hex filename
> 14347 840 0 15187 3b53 fbdev/matrox/matroxfb_misc.o
>
> After:
> text data bss dec hex filename
> 14162 936 0 15098 3afa fbdev/matrox/matroxfb_misc.o
>
> (gcc version 9.2.1, amd64)
>
> Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
> ---
> drivers/video/fbdev/matrox/matroxfb_misc.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/video/fbdev/matrox/matroxfb_misc.c b/drivers/video/fbdev/matrox/matroxfb_misc.c
> index c7aaca12805e..feb0977c82eb 100644
> --- a/drivers/video/fbdev/matrox/matroxfb_misc.c
> +++ b/drivers/video/fbdev/matrox/matroxfb_misc.c
> @@ -673,7 +673,10 @@ static int parse_pins5(struct matrox_fb_info *minfo,
> if (bd->pins[115] & 4) {
> minfo->values.reg.mctlwtst_core = minfo->values.reg.mctlwtst;
> } else {
> - u_int32_t wtst_xlat[] = { 0, 1, 5, 6, 7, 5, 2, 3 };
> + static const u_int32_t wtst_xlat[] = {
> + 0, 1, 5, 6, 7, 5, 2, 3

All of those would easily fit in u8 as well.

> + };
> +
> minfo->values.reg.mctlwtst_core = (minfo->values.reg.mctlwtst & ~7) |
> wtst_xlat[minfo->values.reg.mctlwtst & 7];
> }
> --
> 2.20.1
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@xxxxxxxxxxxxxxxxxxxxx
> https://lists.freedesktop.org/mailman/listinfo/dri-devel

--
Ville Syrjälä
Intel