projects
/
libfirm
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
dfe6755
)
correct fix for benode comparison
author
Matthias Braun
<matze@braunis.de>
Wed, 30 Apr 2008 12:16:02 +0000
(12:16 +0000)
committer
Matthias Braun
<matze@braunis.de>
Wed, 30 Apr 2008 12:16:02 +0000
(12:16 +0000)
[r19469]
ir/be/benode.c
patch
|
blob
|
history
diff --git
a/ir/be/benode.c
b/ir/be/benode.c
index
bdd3349
..
7c55b6a
100644
(file)
--- a/
ir/be/benode.c
+++ b/
ir/be/benode.c
@@
-152,6
+152,15
@@
static const ir_op_ops be_node_op_ops;
#define K irop_flag_keep
#define M irop_flag_uses_memory
#define K irop_flag_keep
#define M irop_flag_uses_memory
+static int be_reqs_equal(const be_req_t *req1, const be_req_t *req2)
+{
+ if(!reg_reqs_equal(&req1->req, &req2->req))
+ return 0;
+ if(req1->flags != req2->flags)
+ return 0;
+
+ return 1;
+}
/**
* Compare two be node attributes.
/**
* Compare two be node attributes.
@@
-167,8
+176,8
@@
static int _node_cmp_attr(const be_node_attr_t *a, const be_node_attr_t *b) {
len = ARR_LEN(a->reg_data);
for (i = 0; i < len; ++i) {
if (a->reg_data[i].reg != b->reg_data[i].reg ||
len = ARR_LEN(a->reg_data);
for (i = 0; i < len; ++i) {
if (a->reg_data[i].reg != b->reg_data[i].reg ||
- !
reg
_reqs_equal(&a->reg_data[i].in_req, &b->reg_data[i].in_req) ||
- !
reg
_reqs_equal(&a->reg_data[i].req, &b->reg_data[i].req))
+ !
be
_reqs_equal(&a->reg_data[i].in_req, &b->reg_data[i].in_req) ||
+ !
be
_reqs_equal(&a->reg_data[i].req, &b->reg_data[i].req))
return 1;
}
return 1;
}