about summary refs log tree commit diff stats
path: root/lib/quickjs/libbf.c
diff options
context:
space:
mode:
authorbptato <nincsnevem662@gmail.com>2023-12-05 16:25:33 +0100
committerbptato <nincsnevem662@gmail.com>2023-12-05 16:25:33 +0100
commit2ca9220c1badad6b54240d907472b0fedc590eff (patch)
tree1e2f67514fc77d8f290bb4ce713454ad1bc8ed17 /lib/quickjs/libbf.c
parente014d84ccbfedf4c844b46bb9443392e0d9817d7 (diff)
downloadchawan-2ca9220c1badad6b54240d907472b0fedc590eff.tar.gz
Revert "fix undefined behavior: shift 32 bits for uint32_t in bf_set_ui"
This reverts commit 821693c4374d9895f462fa29644905c61dbb241d.

(Importing fix from upstream instead.)
Diffstat (limited to 'lib/quickjs/libbf.c')
-rw-r--r--lib/quickjs/libbf.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/lib/quickjs/libbf.c b/lib/quickjs/libbf.c
index 63e7daeb..fe1628e7 100644
--- a/lib/quickjs/libbf.c
+++ b/lib/quickjs/libbf.c
@@ -235,13 +235,8 @@ int bf_set_ui(bf_t *r, uint64_t a)
         a0 = a;
         a1 = a >> 32;
         shift = clz(a1);
-        // shift < 32 because a > 0xffffffff
         r->tab[0] = a0 << shift;
-        if (shift == 0) {
-            r->tab[1] = a1;
-        } else {
-            r->tab[1] = (a1 << shift) | (a0 >> (LIMB_BITS - shift));
-        }
+        r->tab[1] = (a1 << shift) | (a0 >> (LIMB_BITS - shift));
         r->expn = 2 * LIMB_BITS - shift;
     }
 #endif