• Bhumika Goyal's avatar
    Staging: iio: ad7816: constify attribute_group structures · 0fa90023
    Bhumika Goyal authored
    Check for attribute_group structures that are only stored in the
    event_attrs filed of iio_info structure. As the event_attrs field
    of iio_info structures is constant, so these attribute_group
    structures can also be declared constant.
    Done using coccinelle:
    
    @r1 disable optional_qualifier @
    identifier i;
    position p;
    @@
    static struct attribute_group i@p = {...};
    
    @ok1@
    identifier r1.i;
    position p;
    struct iio_info x;
    @@
    x.event_attrs=&i@p;
    
    @bad@
    position p!={r1.p,ok1.p};
    identifier r1.i;
    @@
    i@p
    
    @depends on !bad disable optional_qualifier@
    identifier r1.i;
    @@
    static
    +const
    struct attribute_group i={...};
    
    @depends on !bad disable optional_qualifier@
    identifier r1.i;
    @@
    +const
    struct attribute_group i;
    
    File size before:
       text	   data	    bss	    dec	    hex	filename
       3295	    768	      0	   4063	    fdf	drivers/staging/iio/adc/ad7816.o
    
    File size after:
       text	   data	    bss	    dec	    hex	filename
       3359	    736	      0	   4095	    fff	drivers/staging/iio/adc/ad7816.o
    Signed-off-by: default avatarBhumika Goyal <bhumirks@gmail.com>
    Acked-by: default avatarJulia Lawall <julia.lawall@lip6.fr>
    Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
    0fa90023
ad7816.c 10.5 KB