Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1636036

[PATCH 9/9] mfd: max8925-i2c: Drop unnecessary static

From Julia Lawall <Julia.Lawall@lip6.fr>
Newsgroups linux.kernel
Subject [PATCH 9/9] mfd: max8925-i2c: Drop unnecessary static
Date 2017-05-04 22:40 +0200
Message-ID <tDvHB-8tt-47@gated-at.bofh.it> (permalink)
References <tDvHz-8tt-5@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Drop static on a local variable, when the variable is initialized before
any use, on every possible execution path through the function.  The static
has no benefit, and dropping it reduces the code size.

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>

The change in code size is indicates by the following output from the size
command.

before:
   text    data     bss     dec     hex filename
   2579     240      16    2835     b13 drivers/mfd/max8925-i2c.o

after:
   text    data     bss     dec     hex filename
   2531     240       8    2779     adb drivers/mfd/max8925-i2c.o

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>

---
 drivers/mfd/max8925-i2c.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mfd/max8925-i2c.c b/drivers/mfd/max8925-i2c.c
index 5c80aea..1006323 100644
--- a/drivers/mfd/max8925-i2c.c
+++ b/drivers/mfd/max8925-i2c.c
@@ -151,7 +151,7 @@ static int max8925_probe(struct i2c_client *client,
 				   const struct i2c_device_id *id)
 {
 	struct max8925_platform_data *pdata = dev_get_platdata(&client->dev);
-	static struct max8925_chip *chip;
+	struct max8925_chip *chip;
 	struct device_node *node = client->dev.of_node;
 
 	if (node && !pdata) {

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 0/9] Drop unnecessary static Julia Lawall <Julia.Lawall@lip6.fr> - 2017-05-04 22:40 +0200
  [PATCH 2/9] mtd: physmap_of: Drop unnecessary static Julia Lawall <Julia.Lawall@lip6.fr> - 2017-05-04 22:40 +0200
  [PATCH 5/9] mfd: Drop unnecessary static Julia Lawall <Julia.Lawall@lip6.fr> - 2017-05-04 22:40 +0200
  [PATCH 9/9] mfd: max8925-i2c: Drop unnecessary static Julia Lawall <Julia.Lawall@lip6.fr> - 2017-05-04 22:40 +0200
  [PATCH 1/9] mtd: cfi_cmdset_0020: Drop unnecessary static Julia Lawall <Julia.Lawall@lip6.fr> - 2017-05-04 22:40 +0200
    Re: [PATCH 1/9] mtd: cfi_cmdset_0020: Drop unnecessary static Brian Norris <computersforpeace@gmail.com> - 2017-05-11 21:00 +0200
  [PATCH 3/9] drbd: Drop unnecessary static Julia Lawall <Julia.Lawall@lip6.fr> - 2017-05-04 22:40 +0200
    Re: [PATCH 3/9] drbd: Drop unnecessary static Roland Kammerer <roland.kammerer@linbit.com> - 2017-05-05 09:20 +0200

csiph-web