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

From: Bartlomiej Zolnierkiewicz
Date: Fri Jan 03 2020 - 07:22:53 EST



On 9/6/19 8:17 PM, Ville SyrjÃlà wrote:
> 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>

Thanks, patch queued for v5.6 (also sorry for the delay).

>> ---
>> 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.

Good idea, I've converted the table to u8 while applying the patch.

Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics

>> + };
>> +
>> 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