* [PATCH] linearize.h: sanitize header @ 2009-08-06 9:02 Kamil Dudka 2009-08-06 9:23 ` Hannes Eder 0 siblings, 1 reply; 9+ messages in thread From: Kamil Dudka @ 2009-08-06 9:02 UTC (permalink / raw) To: sparse [-- Attachment #1: Type: text/plain, Size: 153 bytes --] Hello, please consider applying the attached one-line patch. Feel free to choose better identifiers if these are not accurate enough. Thanks! Kamil [-- Attachment #2: 0001-linearize.h-sanitize-header.patch --] [-- Type: text/x-patch, Size: 1139 bytes --] From 4ad2c5943c1d0b16a19feefe721ebc53a4875a35 Mon Sep 17 00:00:00 2001 From: Kamil Dudka <kdudka@redhat.com> Date: Thu, 6 Aug 2009 10:54:56 +0200 Subject: [PATCH] linearize.h: sanitize header It's unfortunate to use 'true' and 'false' as identifiers in a system header. It clashes with corresponding macros from <stdbool.h> when included before <sparse/linearize.h>. Signed-off-by: Kamil Dudka <kdudka@redhat.com> --- linearize.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/linearize.h b/linearize.h index 2205082..50b3601 100644 --- a/linearize.h +++ b/linearize.h @@ -328,7 +328,7 @@ struct entrypoint { struct instruction *entry; }; -extern void insert_select(struct basic_block *bb, struct instruction *br, struct instruction *phi, pseudo_t true, pseudo_t false); +extern void insert_select(struct basic_block *bb, struct instruction *br, struct instruction *phi, pseudo_t if_true, pseudo_t if_false); extern void insert_branch(struct basic_block *bb, struct instruction *br, struct basic_block *target); pseudo_t alloc_phi(struct basic_block *source, pseudo_t pseudo, int size); -- 1.6.2.5 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH] linearize.h: sanitize header 2009-08-06 9:02 [PATCH] linearize.h: sanitize header Kamil Dudka @ 2009-08-06 9:23 ` Hannes Eder 2009-08-06 9:30 ` Kamil Dudka 0 siblings, 1 reply; 9+ messages in thread From: Hannes Eder @ 2009-08-06 9:23 UTC (permalink / raw) To: Kamil Dudka; +Cc: sparse On Thu, Aug 6, 2009 at 11:02, Kamil Dudka<kdudka@redhat.com> wrote: > It's unfortunate to use 'true' and 'false' as identifiers in a system > header. It clashes with corresponding macros from <stdbool.h> when > included before <sparse/linearize.h>. > > Signed-off-by: Kamil Dudka <kdudka@redhat.com> > --- > linearize.h | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/linearize.h b/linearize.h > index 2205082..50b3601 100644 > --- a/linearize.h > +++ b/linearize.h > @@ -328,7 +328,7 @@ struct entrypoint { > struct instruction *entry; > }; > > -extern void insert_select(struct basic_block *bb, struct instruction *br, struct instruction *phi, pseudo_t true, pseudo_t false); > +extern void insert_select(struct basic_block *bb, struct instruction *br, struct instruction *phi, pseudo_t if_true, pseudo_t if_false); I guess it is wise to change this in linearize.c as well. Mind sending a patch? > extern void insert_branch(struct basic_block *bb, struct instruction *br, struct basic_block *target); > > pseudo_t alloc_phi(struct basic_block *source, pseudo_t pseudo, int size); Cheers, -Hannes ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] linearize.h: sanitize header 2009-08-06 9:23 ` Hannes Eder @ 2009-08-06 9:30 ` Kamil Dudka 2009-08-06 9:39 ` Hannes Eder 0 siblings, 1 reply; 9+ messages in thread From: Kamil Dudka @ 2009-08-06 9:30 UTC (permalink / raw) To: Hannes Eder; +Cc: sparse On Thu August 6 2009 11:23:26 Hannes Eder wrote: > On Thu, Aug 6, 2009 at 11:02, Kamil Dudka<kdudka@redhat.com> wrote: > > It's unfortunate to use 'true' and 'false' as identifiers in a system > > header. It clashes with corresponding macros from <stdbool.h> when > > included before <sparse/linearize.h>. > > > > Signed-off-by: Kamil Dudka <kdudka@redhat.com> > > --- > > linearize.h | 2 +- > > 1 files changed, 1 insertions(+), 1 deletions(-) > > > > diff --git a/linearize.h b/linearize.h > > index 2205082..50b3601 100644 > > --- a/linearize.h > > +++ b/linearize.h > > @@ -328,7 +328,7 @@ struct entrypoint { > > struct instruction *entry; > > }; > > > > -extern void insert_select(struct basic_block *bb, struct instruction > > *br, struct instruction *phi, pseudo_t true, pseudo_t false); +extern > > void insert_select(struct basic_block *bb, struct instruction *br, struct > > instruction *phi, pseudo_t if_true, pseudo_t if_false); > > I guess it is wise to change this in linearize.c as well. Mind sending a > patch? The question is if we need/want to :-) It's change of the working code for no real benefit. I am talking only about system-wide headers which can be included anywhere. Kamil ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] linearize.h: sanitize header 2009-08-06 9:30 ` Kamil Dudka @ 2009-08-06 9:39 ` Hannes Eder 2009-08-06 9:51 ` Kamil Dudka 0 siblings, 1 reply; 9+ messages in thread From: Hannes Eder @ 2009-08-06 9:39 UTC (permalink / raw) To: Kamil Dudka; +Cc: sparse On Thu, Aug 6, 2009 at 11:30, Kamil Dudka<kdudka@redhat.com> wrote: > On Thu August 6 2009 11:23:26 Hannes Eder wrote: >> On Thu, Aug 6, 2009 at 11:02, Kamil Dudka<kdudka@redhat.com> wrote: >> > It's unfortunate to use 'true' and 'false' as identifiers in a system >> > header. It clashes with corresponding macros from <stdbool.h> when >> > included before <sparse/linearize.h>. >> > >> > Signed-off-by: Kamil Dudka <kdudka@redhat.com> >> > --- >> > linearize.h | 2 +- >> > 1 files changed, 1 insertions(+), 1 deletions(-) >> > >> > diff --git a/linearize.h b/linearize.h >> > index 2205082..50b3601 100644 >> > --- a/linearize.h >> > +++ b/linearize.h >> > @@ -328,7 +328,7 @@ struct entrypoint { >> > struct instruction *entry; >> > }; >> > >> > -extern void insert_select(struct basic_block *bb, struct instruction >> > *br, struct instruction *phi, pseudo_t true, pseudo_t false); +extern >> > void insert_select(struct basic_block *bb, struct instruction *br, struct >> > instruction *phi, pseudo_t if_true, pseudo_t if_false); >> >> I guess it is wise to change this in linearize.c as well. Mind sending a >> patch? > > The question is if we need/want to :-) It's change of the working code for no > real benefit. I am talking only about system-wide headers which can be > included anywhere. Well I see at least one benefit, a small one though. Syntax highlighting is somewhat confused with "true" and "false", at least emacs is. They appear like the constants, where in fact they are variables. The likelyhood to break the code by renaming this two variables is kinda low, no? And IHMO it was not so wise in the first place to pick these names. ;) My 2 cents -Hannes -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] linearize.h: sanitize header 2009-08-06 9:39 ` Hannes Eder @ 2009-08-06 9:51 ` Kamil Dudka 2009-08-06 11:09 ` Hannes Eder 0 siblings, 1 reply; 9+ messages in thread From: Kamil Dudka @ 2009-08-06 9:51 UTC (permalink / raw) To: Hannes Eder; +Cc: sparse On Thu August 6 2009 11:39:11 Hannes Eder wrote: > >> I guess it is wise to change this in linearize.c as well. Mind sending > >> a patch? > > > > The question is if we need/want to :-) It's change of the working code > > for no real benefit. I am talking only about system-wide headers which > > can be included anywhere. > > Well I see at least one benefit, a small one though. Syntax > highlighting is somewhat confused with "true" and "false", at least > emacs is. They appear like the constants, where in fact they are > variables. I can confirm it's the same case with the vim's syntax highlighter. > The likelyhood to break the code by renaming this two variables is > kinda low, no? And IHMO it was not so wise in the first place to pick > these names. ;) I would contend that only two variables are affected. They are if we consider only headers. However the situation is much worse when we concern about .c files. The patch would be non-trivial. Please try the following command: $ grep --color '[^_]false[^_]' *.c Kamil ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] linearize.h: sanitize header 2009-08-06 9:51 ` Kamil Dudka @ 2009-08-06 11:09 ` Hannes Eder 2009-08-06 17:10 ` Christopher Li 0 siblings, 1 reply; 9+ messages in thread From: Hannes Eder @ 2009-08-06 11:09 UTC (permalink / raw) To: Kamil Dudka; +Cc: sparse On Thu, Aug 6, 2009 at 11:51, Kamil Dudka<kdudka@redhat.com> wrote: > On Thu August 6 2009 11:39:11 Hannes Eder wrote: >> >> I guess it is wise to change this in linearize.c as well. Mind sending >> >> a patch? >> > >> > The question is if we need/want to :-) It's change of the working code >> > for no real benefit. I am talking only about system-wide headers which >> > can be included anywhere. >> >> Well I see at least one benefit, a small one though. Syntax >> highlighting is somewhat confused with "true" and "false", at least >> emacs is. They appear like the constants, where in fact they are >> variables. > > I can confirm it's the same case with the vim's syntax highlighter. > >> The likelyhood to break the code by renaming this two variables is >> kinda low, no? And IHMO it was not so wise in the first place to pick >> these names. ;) > > I would contend that only two variables are affected. They are if we consider > only headers. However the situation is much worse when we concern about .c > files. The patch would be non-trivial. Please try the following command: > > $ grep --color '[^_]false[^_]' *.c $ grep --color '\bfalse\b\|\btrue\b' *.c | wc -l 91 some of them are just in comments, does not look to scary to me. If others agree that its a good idea to rename them, I can do it if you don't want to. -Hannes -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] linearize.h: sanitize header 2009-08-06 11:09 ` Hannes Eder @ 2009-08-06 17:10 ` Christopher Li 2009-08-06 17:27 ` Kamil Dudka 0 siblings, 1 reply; 9+ messages in thread From: Christopher Li @ 2009-08-06 17:10 UTC (permalink / raw) To: Hannes Eder; +Cc: Kamil Dudka, sparse On Thu, Aug 6, 2009 at 4:09 AM, Hannes Eder<hannes@hanneseder.net> wrote: >> $ grep --color '[^_]false[^_]' *.c > > $ grep --color '\bfalse\b\|\btrue\b' *.c | wc -l > 91 > > some of them are just in comments, does not look to scary to me. If > others agree that its a good idea to rename them, I can do it if you > don't want to. I would just apply the change to the header file and related variables. The linearize.h is consider an API header file for other sparse application to use. So we'd better not assume too much on the sparse caller side. I agree with Kamil that rename variable in linearize.c offer no real benefits. I consider it more of a personal preference thing. And it is internal to linearize.c. At this point renaming variable will mess up with annotations. It is not good enough reason to do it just to make the editor happy. Chris -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] linearize.h: sanitize header 2009-08-06 17:10 ` Christopher Li @ 2009-08-06 17:27 ` Kamil Dudka 2009-08-06 17:49 ` Hannes Eder 0 siblings, 1 reply; 9+ messages in thread From: Kamil Dudka @ 2009-08-06 17:27 UTC (permalink / raw) To: Christopher Li; +Cc: Hannes Eder, sparse [-- Attachment #1: Type: text/plain, Size: 903 bytes --] On Thursday 06 of August 2009 19:10:30 Christopher Li wrote: > I would just apply the change to the header file and related variables. > The linearize.h is consider an API header file for other sparse application > to use. So we'd better not assume too much on the sparse caller side. > > I agree with Kamil that rename variable in linearize.c offer no real > benefits. I consider it more of a personal preference thing. And it is > internal to linearize.c. At this point renaming variable will mess up with > annotations. It is not good enough reason to do it just to make > the editor happy. Well, let's make a tradeoff - we can only change the identifiers in linearize.h and the corresponding identifiers in linearize.c. I admit it could be confusing when we have different identifiers in the prototype and different identifiers in the function body. New version of the patch is attached. Kamil [-- Attachment #2: 0001-linearize.h-sanitize-header.patch --] [-- Type: text/x-diff, Size: 2161 bytes --] From 4d4c71eb876351d53e0f8edf0f121950ec2a9a84 Mon Sep 17 00:00:00 2001 From: Kamil Dudka <kdudka@redhat.com> Date: Thu, 6 Aug 2009 19:20:51 +0200 Subject: [PATCH] linearize.h: sanitize header It's unfortunate to use 'true' and 'false' as identifiers in a system header. It clashes with corresponding macros from <stdbool.h> when included before <sparse/linearize.h>. Signed-off-by: Kamil Dudka <kdudka@redhat.com> --- linearize.c | 6 +++--- linearize.h | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/linearize.c b/linearize.c index 1a19214..238ee5d 100644 --- a/linearize.c +++ b/linearize.c @@ -666,7 +666,7 @@ void insert_branch(struct basic_block *bb, struct instruction *jmp, struct basic } -void insert_select(struct basic_block *bb, struct instruction *br, struct instruction *phi_node, pseudo_t true, pseudo_t false) +void insert_select(struct basic_block *bb, struct instruction *br, struct instruction *phi_node, pseudo_t if_true, pseudo_t if_false) { pseudo_t target; struct instruction *select; @@ -685,8 +685,8 @@ void insert_select(struct basic_block *bb, struct instruction *br, struct instru select->target = target; target->def = select; - use_pseudo(select, true, &select->src2); - use_pseudo(select, false, &select->src3); + use_pseudo(select, if_true, &select->src2); + use_pseudo(select, if_false, &select->src3); add_instruction(&bb->insns, select); add_instruction(&bb->insns, br); diff --git a/linearize.h b/linearize.h index 2205082..50b3601 100644 --- a/linearize.h +++ b/linearize.h @@ -328,7 +328,7 @@ struct entrypoint { struct instruction *entry; }; -extern void insert_select(struct basic_block *bb, struct instruction *br, struct instruction *phi, pseudo_t true, pseudo_t false); +extern void insert_select(struct basic_block *bb, struct instruction *br, struct instruction *phi, pseudo_t if_true, pseudo_t if_false); extern void insert_branch(struct basic_block *bb, struct instruction *br, struct basic_block *target); pseudo_t alloc_phi(struct basic_block *source, pseudo_t pseudo, int size); -- 1.6.3.3 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH] linearize.h: sanitize header 2009-08-06 17:27 ` Kamil Dudka @ 2009-08-06 17:49 ` Hannes Eder 0 siblings, 0 replies; 9+ messages in thread From: Hannes Eder @ 2009-08-06 17:49 UTC (permalink / raw) To: Kamil Dudka; +Cc: Christopher Li, sparse On Thu, Aug 6, 2009 at 19:27, Kamil Dudka<kdudka@redhat.com> wrote: > On Thursday 06 of August 2009 19:10:30 Christopher Li wrote: >> I would just apply the change to the header file and related variables. >> The linearize.h is consider an API header file for other sparse application >> to use. So we'd better not assume too much on the sparse caller side. >> >> I agree with Kamil that rename variable in linearize.c offer no real >> benefits. I consider it more of a personal preference thing. And it is >> internal to linearize.c. At this point renaming variable will mess up with >> annotations. It is not good enough reason to do it just to make >> the editor happy. > > Well, let's make a tradeoff - we can only change the identifiers > in linearize.h and the corresponding identifiers in linearize.c. I admit it > could be confusing when we have different identifiers in the prototype and > different identifiers in the function body. New version of the patch is > attached. LGTM Acked-by: Hannes Eder <hannes@hanneseder.net> Best, -Hannes ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2009-08-06 17:49 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2009-08-06 9:02 [PATCH] linearize.h: sanitize header Kamil Dudka 2009-08-06 9:23 ` Hannes Eder 2009-08-06 9:30 ` Kamil Dudka 2009-08-06 9:39 ` Hannes Eder 2009-08-06 9:51 ` Kamil Dudka 2009-08-06 11:09 ` Hannes Eder 2009-08-06 17:10 ` Christopher Li 2009-08-06 17:27 ` Kamil Dudka 2009-08-06 17:49 ` Hannes Eder
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).