regulator: palmas: Drop unnecessary static
authorJulia Lawall <Julia.Lawall@lip6.fr>
Thu, 4 May 2017 20:10:51 +0000 (22:10 +0200)
committerMark Brown <broonie@kernel.org>
Sun, 14 May 2017 10:20:22 +0000 (19:20 +0900)
commit96e4f5232c8cdb64cb18721ea0871c849346cbf5
tree89084b611401239a1419fab0ed3c76e0b0b7d898
parent2ea659a9ef488125eb46da6eb571de5eae5c43f6
regulator: palmas: Drop unnecessary static

Drop static on a local variable, when the variable is initialized before
any use, on every possible execution path through the function.

The semantic patch that fixes this problem is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@bad exists@
position p;
identifier x;
type T;
@@

static T x@p;
...
x = <+...x...+>

@@
identifier x;
expression e;
type T;
position p != bad.p;
@@

-static
 T x@p;
 ... when != x
     when strict
?x = e;
// </smpl>

There is no reduction in code size in this case, but the change does reduce
the size of the bss segment, containing uninitialized static data.

before:
   text    data     bss     dec     hex filename
  12882    3480       8   16370    3ff2 drivers/regulator/palmas-regulator.o

after:
   text    data     bss     dec     hex filename
  12882    3480       0   16362    3fea drivers/regulator/palmas-regulator.o

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/regulator/palmas-regulator.c