First of all, note that a>=6 and a>7 does not mean the same thing.
a>=6 is equivalent to a>5.
a>7 is equivalent to a>=8.
(assuming a is an integer)
On x86-64 it seems like all these comparison operations gets compiled to the same cmp instruction and then another instruction is used to extract the result.
https://godbolt.org/z/ozYqajrMK <-- This is what I'm basing this on.
Note that GCC seems to prefer using the setg instruction (g =
greater than) while Clang seems to prefer the setge instruction (ge =
greater or
equal to). Since they use different instructions it's probably because they have the same performance, otherwise they would both have preferred the same instruction.
My recommendation:
1. Use whatever is correct.
2. Use whatever is less error-prone.
3. Use whatever is more readable.