let little_endian_merge_bits ~conflate_bottom ~total_length ~value
~offset acc =
if equal acc bottom || equal value bottom
then begin
if conflate_bottom
then
bottom
else
join
(topify_misaligned_read_origin acc)
(topify_misaligned_read_origin value)
end
else
let result =
bitwise_or
~topify_arith_origin:topify_misaligned_read_origin
~size:total_length
(shift_left
~topify_arith_origin:topify_misaligned_read_origin
~with_alarms:warn_none_mode
~size:total_length
value
(inject_ival (Ival.inject_singleton offset)))
acc
in
result