On 7 June 2017 at 08:46, Marc-André Lureau <marcandre.lur...@redhat.com> wrote: > The coccinelle/round.cocci script doesn't catch hard coded values. > > I used the following script over qemu code base: > > ( > - ((e1) + 3) / (4) > + DIV_ROUND_UP(e1,4) > | > - ((e1) + (3)) / (4) > + DIV_ROUND_UP(e1,4)
Why do we need both of these? Is it just "coccinelle is weird" ? :-) > | > - ((e1) + 7) / (8) > + DIV_ROUND_UP(e1,8) > | > - ((e1) + (7)) / (8) > + DIV_ROUND_UP(e1,8) > | > - ((e1) + 15) / (16) > + DIV_ROUND_UP(e1,16) > | > - ((e1) + (15)) / (16) > + DIV_ROUND_UP(e1,16) > | > - ((e1) + 31) / (32) > + DIV_ROUND_UP(e1,32) > | > - ((e1) + (31)) / (32) > + DIV_ROUND_UP(e1,32) > ) > - next_op = op_pointer + ((oplen + 7) / 8); > + next_op = op_pointer + (DIV_ROUND_UP(oplen, 8)); I think there's a coccinelle trick for making it drop now-unnecessary brackets in substitutions like this, but I forget what it is. Maybe it's as simple as having substitutions for > - (((e1) + 7) / (8)) > + DIV_ROUND_UP(e1,8) as well? thanks -- PMM