X-Git-Url: https://pd.if.org/git/?p=zos;a=blobdiff_plain;f=klib%2Fbitops.s;fp=klib%2Fbitops.s;h=2771bcb60c99f5732f06912c86b433604e58bfa5;hp=0000000000000000000000000000000000000000;hb=5c0e560e481e2e97b793f7574e849a5882781df9;hpb=e57b692bd3a86ee40fd89416a06fd696f1ff3bf9 diff --git a/klib/bitops.s b/klib/bitops.s new file mode 100644 index 0000000..2771bcb --- /dev/null +++ b/klib/bitops.s @@ -0,0 +1,10 @@ +; round up to a power of two +logtwoup: + xor eax, eax + bsr rsi, rdi ; rsi has the log 2 rounded down + bts rax, rsi + cmp rax, rdi + jz .done + shr rax, 1 +.done: + ret