[PATCH v6] git: use logical-not operator to toggle between 0 and 1
From: AreaZR via GitGitGadget <hidden>
Date: 2024-12-18 16:57:20
Subsystem:
the rest · Maintainer:
Linus Torvalds
From: Seija Kijin <redacted>
If it is known that an int is either 1 or 0,
using a logical-not to switch instead of a
modulus makes more sense and is more efficient.
Signed-off-by: Seija Kijin <redacted>
---
git: use logical-not operator to toggle between 0 and 1
If it is known that an int is either 1 or 0, doing an exclusive or to
switch instead of a modulus makes more sense and is more efficient.
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1620%2FAreaZR%2Fbuffer-v6
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1620/AreaZR/buffer-v6
Pull-Request: https://github.com/git/git/pull/1620
Range-diff vs v5:
1: 5bb2cf10062 ! 1: 0fe9e776177 git: use ^=1 to toggle between 0 and 1
@@ Metadata
Author: Seija Kijin [off-list ref]
## Commit message ##
- git: use ^=1 to toggle between 0 and 1
+ git: use logical-not operator to toggle between 0 and 1
If it is known that an int is either 1 or 0,
- doing an exclusive or to switch instead of a
+ using a logical-not to switch instead of a
modulus makes more sense and is more efficient.
Signed-off-by: Seija Kijin [off-list ref]
@@ diff.c: static void mark_color_as_moved(struct diff_options *o,
if (contiguous && pmb_nr && moved_symbol == l->s)
- flipped_block = (flipped_block + 1) % 2;
-+ flipped_block ^= 1;
++ flipped_block = !flipped_block;
else
flipped_block = 0;
diff.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/diff.c b/diff.c
index 266ddf18e73..48335971a4c 100644
--- a/diff.c
+++ b/diff.c@@ -1231,7 +1231,7 @@ static void mark_color_as_moved(struct diff_options *o, &pmb_nr); if (contiguous && pmb_nr && moved_symbol == l->s) - flipped_block = (flipped_block + 1) % 2; + flipped_block = !flipped_block; else flipped_block = 0;
base-commit: d882f382b3d939d90cfa58d17b17802338f05d66 -- gitgitgadget