MCPcopy Create free account
hub / github.com/e2wugui/zeze / umulHigh

Method umulHigh

ZezeJava/ZezeJava/src/main/java/Zeze/Util/JsonWriter.java:736–750  ·  view source on GitHub ↗
(long a, long b)

Source from the content-addressed store, hash-verified

734 }
735
736 public static long umulHigh(long a, long b) { // for JDK8-
737 long a1 = a >> 32;
738 long a2 = a & 0xffff_ffffL;
739 long b1 = b >> 32;
740 long b2 = b & 0xffff_ffffL;
741 long c2 = a2 * b2;
742 long t = a1 * b2 + (c2 >>> 32);
743 long c1 = t & 0xffff_ffffL;
744 long c0 = t >> 32;
745 c1 += a2 * b1;
746 long mh = a1 * b1 + c0 + (c1 >> 32);
747 mh += (b & (a >> 63));
748 mh += (a & (b >> 63));
749 return mh;
750 }
751
752 public static long umulHigh9(long a, long b) { // for JDK9+
753 long r = Math.multiplyHigh(a, b);

Callers 2

testCMethod · 0.95
grisu2Method · 0.95

Calls

no outgoing calls

Tested by 1

testCMethod · 0.76