This patch introduces new match function which can return
a number of matched operations with multiple uses. It also
can take an argument with a limit of such operands number
for match to succeed.
The function is needed if we want to limit a total number
of multiply used operands but do not necessarily care which.
clang-format: please reformat the code