2018-10-17 00:12:07

by Leonardo Brás

[permalink] [raw]
Subject: [PATCH 3/4] kbuild: Removes unnecessary shadowed local variable and optimize testing.

Removes an unnecessary shadowed local variable (start).
Optimize test of isdigit:
- If isalpha returns true, isdigit will return false, so no need to test.

Signed-off-by: Leonardo Brás <[email protected]>
---
scripts/asn1_compiler.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/scripts/asn1_compiler.c b/scripts/asn1_compiler.c
index c146020fc783..08bb6e5fd6ad 100644
--- a/scripts/asn1_compiler.c
+++ b/scripts/asn1_compiler.c
@@ -413,7 +413,7 @@ static void tokenise(char *buffer, char *end)

/* Handle string tokens */
if (isalpha(*p)) {
- const char **dir, *start = p;
+ const char **dir;

/* Can be a directive, type name or element
* name. Find the end of the name.
@@ -454,10 +454,9 @@ static void tokenise(char *buffer, char *end)

tokens[tix++].token_type = TOKEN_TYPE_NAME;
continue;
- }
+ } else if (isdigit(*p)) {
+ /* Handle numbers */

- /* Handle numbers */
- if (isdigit(*p)) {
/* Find the end of the number */
q = p + 1;
while (q < nl && (isdigit(*q)))
--
2.19.1



2018-10-17 03:07:51

by Helen Koike

[permalink] [raw]
Subject: Re: [Lkcamp] [PATCH 3/4] kbuild: Removes unnecessary shadowed local variable and optimize testing.

Hi Leonardo,

On 10/16/18 9:09 PM, Leonardo Brás wrote:
> Removes an unnecessary shadowed local variable (start).
> Optimize test of isdigit:
> - If isalpha returns true, isdigit will return false, so no need to test.

This patch does two different things, it should be in two separated patches.

>
> Signed-off-by: Leonardo Brás <[email protected]>
> ---
> scripts/asn1_compiler.c | 7 +++----
> 1 file changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/scripts/asn1_compiler.c b/scripts/asn1_compiler.c
> index c146020fc783..08bb6e5fd6ad 100644
> --- a/scripts/asn1_compiler.c
> +++ b/scripts/asn1_compiler.c
> @@ -413,7 +413,7 @@ static void tokenise(char *buffer, char *end)
>
> /* Handle string tokens */
> if (isalpha(*p)) {
> - const char **dir, *start = p;
> + const char **dir;
>
> /* Can be a directive, type name or element
> * name. Find the end of the name.
> @@ -454,10 +454,9 @@ static void tokenise(char *buffer, char *end)
>
> tokens[tix++].token_type = TOKEN_TYPE_NAME;
> continue;
> - }
> + } else if (isdigit(*p)) {
> + /* Handle numbers */

Actually you can't do that, p is being altered in the first if statement.

>
> - /* Handle numbers */
> - if (isdigit(*p)) {
> /* Find the end of the number */
> q = p + 1;
> while (q < nl && (isdigit(*q)))
>

Regards
Helen

2018-10-18 02:06:17

by Leonardo Brás

[permalink] [raw]
Subject: Re: [Lkcamp] [PATCH 3/4] kbuild: Removes unnecessary shadowed local variable and optimize testing.

Hello Helen,

On Wed, Oct 17, 2018 at 12:06 AM Helen Koike <[email protected]> wrote:
>
> Hi Leonardo,
>
> On 10/16/18 9:09 PM, Leonardo Brás wrote:
> > Removes an unnecessary shadowed local variable (start).
> > Optimize test of isdigit:
> > - If isalpha returns true, isdigit will return false, so no need to test.
>
> This patch does two different things, it should be in two separated patches.
Sure, no problem.

>
> >
> > Signed-off-by: Leonardo Brás <[email protected]>
> > ---
> > scripts/asn1_compiler.c | 7 +++----
> > 1 file changed, 3 insertions(+), 4 deletions(-)
> >
> > diff --git a/scripts/asn1_compiler.c b/scripts/asn1_compiler.c
> > index c146020fc783..08bb6e5fd6ad 100644
> > --- a/scripts/asn1_compiler.c
> > +++ b/scripts/asn1_compiler.c
> > @@ -413,7 +413,7 @@ static void tokenise(char *buffer, char *end)
> >
> > /* Handle string tokens */
> > if (isalpha(*p)) {
> > - const char **dir, *start = p;
> > + const char **dir;
> >
> > /* Can be a directive, type name or element
> > * name. Find the end of the name.
> > @@ -454,10 +454,9 @@ static void tokenise(char *buffer, char *end)
> >
> > tokens[tix++].token_type = TOKEN_TYPE_NAME;
> > continue;
> > - }
> > + } else if (isdigit(*p)) {
> > + /* Handle numbers */
>
> Actually you can't do that, p is being altered in the first if statement.

Yeah, you are right. I will remove this logic for v2.

>
> >
> > - /* Handle numbers */
> > - if (isdigit(*p)) {
> > /* Find the end of the number */
> > q = p + 1;
> > while (q < nl && (isdigit(*q)))
> >
>
> Regards
> Helen

Thanks!

Leonardo Brás

2018-10-19 02:45:41

by Masahiro Yamada

[permalink] [raw]
Subject: Re: [Lkcamp] [PATCH 3/4] kbuild: Removes unnecessary shadowed local variable and optimize testing.

On Thu, Oct 18, 2018 at 11:04 AM Leonardo Bras <[email protected]> wrote:
>
> Hello Helen,
>
> On Wed, Oct 17, 2018 at 12:06 AM Helen Koike <[email protected]> wrote:
> >
> > Hi Leonardo,
> >
> > On 10/16/18 9:09 PM, Leonardo Brás wrote:
> > > Removes an unnecessary shadowed local variable (start).
> > > Optimize test of isdigit:
> > > - If isalpha returns true, isdigit will return false, so no need to test.
> >
> > This patch does two different things, it should be in two separated patches.
> Sure, no problem.
>
> >
> > >
> > > Signed-off-by: Leonardo Brás <[email protected]>
> > > ---
> > > scripts/asn1_compiler.c | 7 +++----
> > > 1 file changed, 3 insertions(+), 4 deletions(-)
> > >
> > > diff --git a/scripts/asn1_compiler.c b/scripts/asn1_compiler.c
> > > index c146020fc783..08bb6e5fd6ad 100644
> > > --- a/scripts/asn1_compiler.c
> > > +++ b/scripts/asn1_compiler.c
> > > @@ -413,7 +413,7 @@ static void tokenise(char *buffer, char *end)
> > >
> > > /* Handle string tokens */
> > > if (isalpha(*p)) {
> > > - const char **dir, *start = p;
> > > + const char **dir;
> > >
> > > /* Can be a directive, type name or element
> > > * name. Find the end of the name.
> > > @@ -454,10 +454,9 @@ static void tokenise(char *buffer, char *end)
> > >
> > > tokens[tix++].token_type = TOKEN_TYPE_NAME;
> > > continue;
> > > - }
> > > + } else if (isdigit(*p)) {
> > > + /* Handle numbers */
> >
> > Actually you can't do that, p is being altered in the first if statement.
>
> Yeah, you are right. I will remove this logic for v2.


I drop v1 from my tree.

Please send v2.


> >
> > >
> > > - /* Handle numbers */
> > > - if (isdigit(*p)) {
> > > /* Find the end of the number */
> > > q = p + 1;
> > > while (q < nl && (isdigit(*q)))
> > >
> >
> > Regards
> > Helen
>
> Thanks!
>
> Leonardo Brás



--
Best Regards
Masahiro Yamada