Patchworkβ linearize.h: sanitize header

login
register
about
Submitter Kamil Dudka
Date 2009-08-06 17:27:46
Message ID <200908061927.47201.kdudka@redhat.com>
Download mbox | patch
Permalink /patch/39653/
State New
Headers show

Comments

Kamil Dudka - 2009-08-06 17:27:46
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
Hannes Eder - 2009-08-06 17:49:23
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
--
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

Patch

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