Displaying 3 results from an estimated 3 matches for "l99".
Did you mean:
99
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
2018 Dec 30
3
[cfe-dev] Portable multiplication 64 x 64 -> 128 for int128 reimplementation
...4:44 PM Arthur O'Dwyer via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> Hi Pawel,
>
> There is the _mulx_u64 intrinsic, but it currently requires the hardware
> flag "-mbmi2".
>
> https://github.com/Quuxplusone/WideIntProofOfConcept/blob/master/wider.h#L89-L99
>
> On Clang 3.8.1 and earlier, the _addcarry_u64 and _subborrow_u64
> intrinsics required the hardware flag `-madx`, even though they didn't use
> the hardware ADX/ADOX instructions. Modern GCC and Clang permit the use of
> these intrinsics (to generate ADC) even in the absence...
2019 Nov 26
6
[RFC] Displaying source variable locations in llvm-objdump
Hi llvm-dev,
I've uploaded a prototype patch at https://reviews.llvm.org/D70720 which
adds a new feature to llvm-objdump: displaying the location (in
registers/memory/etc) of source-level variables alongside the disassembly
display. I've put a demo of the output at https://reviews.llvm.org/M2.
I have two use-cases in mind for this:
* Users reading the disassembly of compiled code. It