diff options
author | Qiu Chaofan <qiucofan@cn.ibm.com> | 2020-12-08 14:08:52 +0800 |
---|---|---|
committer | Qiu Chaofan <qiucofan@cn.ibm.com> | 2020-12-08 14:08:52 +0800 |
commit | 5e85a2ba1645c3edbf26bba096631fbd318ada47 (patch) | |
tree | bf53bf31961c8cc1ae1ddefeeef37e885a562e24 /llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp | |
parent | f4f81031152b7554185a259abc98932add6b484b (diff) | |
download | llvm-5e85a2ba1645c3edbf26bba096631fbd318ada47.zip llvm-5e85a2ba1645c3edbf26bba096631fbd318ada47.tar.gz llvm-5e85a2ba1645c3edbf26bba096631fbd318ada47.tar.bz2 |
[PowerPC] Implement intrinsic for DARN instruction
Instruction darn was introduced in ISA 3.0. It means 'Deliver A Random
Number'. The immediate number L means:
- L=0, the number is 32-bit (higher 32-bits are all-zero)
- L=1, the number is 'conditioned' (processed by hardware to reduce bias)
- L=2, the number is not conditioned, directly from noise source
GCC implements them in three separate intrinsics: __builtin_darn,
__builtin_darn_32 and __builtin_darn_raw. This patch implements the
same intrinsics. And this change also addresses Bugzilla PR39800.
Reviewed By: steven.zhang
Differential Revision: https://reviews.llvm.org/D92465
Diffstat (limited to 'llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp')
0 files changed, 0 insertions, 0 deletions