@@ -13,13 +13,9 @@ Date: May 2017
13
13
14
14
#include < taint-slicer/irept_instrument.h>
15
15
16
- irept make_shallow_copy (const irept irep )
16
+ static bool are_equal (const irept l, const irept r )
17
17
{
18
- irept result (irep.id ());
19
- result.get_sub ()=irep.get_sub ();
20
- result.get_named_sub ()=irep.get_named_sub ();
21
- result.get_comments ()=irep.get_comments ();
22
- return result;
18
+ return &l.read ()==&r.read ();
23
19
}
24
20
25
21
irept instrument (const irept irep, const instrumenter_fnt &instrumenter)
@@ -30,7 +26,7 @@ irept instrument(const irept irep, const instrumenter_fnt &instrumenter)
30
26
for (const irept sub : irep.get_sub ())
31
27
{
32
28
new_sub.push_back (instrument (sub, instrumenter));
33
- if (new_sub.back ()!= sub)
29
+ if (! are_equal ( new_sub.back (), sub) )
34
30
modified=true ;
35
31
}
36
32
@@ -44,7 +40,7 @@ irept instrument(const irept irep, const instrumenter_fnt &instrumenter)
44
40
instrument (name_sub.second , instrumenter)
45
41
});
46
42
assert (it_bool.second );
47
- if (it_bool.first ->second != name_sub.second )
43
+ if (! are_equal ( it_bool.first ->second , name_sub.second ) )
48
44
modified=true ;
49
45
}
50
46
@@ -58,7 +54,7 @@ irept instrument(const irept irep, const instrumenter_fnt &instrumenter)
58
54
instrument (name_sub.second , instrumenter)
59
55
});
60
56
assert (it_bool.second );
61
- if (it_bool.first ->second != name_sub.second )
57
+ if (! are_equal ( it_bool.first ->second , name_sub.second ) )
62
58
modified=true ;
63
59
}
64
60
@@ -85,7 +81,7 @@ irept instrument_using_pivot(
85
81
pit!=pivot.get_sub ().cend () && iit!=irep.get_sub ().cend (); ++pit, ++iit)
86
82
{
87
83
new_sub.push_back (instrument_using_pivot (*pit, *iit, instrumenter));
88
- if (new_sub.back ()!= *iit)
84
+ if (! are_equal ( new_sub.back (), *iit) )
89
85
modified=true ;
90
86
}
91
87
@@ -103,7 +99,7 @@ irept instrument_using_pivot(
103
99
instrument_using_pivot (pit->second , iit->second , instrumenter)
104
100
});
105
101
assert (it_bool.second );
106
- if (it_bool.first ->second != iit->second )
102
+ if (! are_equal ( it_bool.first ->second , iit->second ) )
107
103
modified=true ;
108
104
}
109
105
@@ -121,7 +117,7 @@ irept instrument_using_pivot(
121
117
instrument_using_pivot (pit->second , iit->second , instrumenter)
122
118
});
123
119
assert (it_bool.second );
124
- if (it_bool.first ->second != iit->second )
120
+ if (! are_equal ( it_bool.first ->second , iit->second ) )
125
121
modified=true ;
126
122
}
127
123
0 commit comments