aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/dev/morling/onebrc
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/dev/morling/onebrc')
-rw-r--r--src/main/java/dev/morling/onebrc/CalculateAverage_artsiomkorzun.java3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/main/java/dev/morling/onebrc/CalculateAverage_artsiomkorzun.java b/src/main/java/dev/morling/onebrc/CalculateAverage_artsiomkorzun.java
index 4ea9d58..c3c39ab 100644
--- a/src/main/java/dev/morling/onebrc/CalculateAverage_artsiomkorzun.java
+++ b/src/main/java/dev/morling/onebrc/CalculateAverage_artsiomkorzun.java
@@ -431,7 +431,8 @@ public class CalculateAverage_artsiomkorzun {
}
private static long mask(long word, long separator) {
- return word & ((separator >>> 7) - 1) & 0x00FFFFFFFFFFFFFFL;
+ long mask = ((separator - 1) ^ separator) >>> 8;
+ return word & mask;
}
private static int length(long separator) {