Displaying 2 results from an estimated 2 matches for "_mulx_u64".
2018 Dec 30
3
[cfe-dev] Portable multiplication 64 x 64 -> 128 for int128 reimplementation
_mulx_u64 only exists when the target is x86_64. That's still not very
portable. I'm not opposed to removing the bmi2 check, but gcc also has the
same check so it doesn't improve portability much.
~Craig
On Sat, Dec 29, 2018 at 4:44 PM Arthur O'Dwyer via llvm-dev <
llvm-dev at lists.llv...
2018 Dec 29
2
Portable multiplication 64 x 64 -> 128 for int128 reimplementation
Hi,
For some maybe dumb reasons I try to write a portable version of int128.
What is very valuable for this implementation is access to MUL instruction
on x86 which provides full 64 x 64 -> 128 bit multiplication. An equally
useful on ARM would be UMULH instruction.
Well, the way you can access this on clang / GCC is to use __int128 type or
use inline assembly. MSVC provides an intrinsic for