HomePhabricator

[AArch64] Implement __jcvt intrinsic from Armv8.3-A

Authored by ktkachov on Jul 16 2019, 2:27 AM.

Description

[AArch64] Implement __jcvt intrinsic from Armv8.3-A

The jcvt intrinsic defined in ACLE [1] is available when ARM_FEATURE_JCVT is defined.

This change introduces the AArch64 intrinsic, wires it up to the instruction and a new clang builtin function.
The __ARM_FEATURE_JCVT macro is now defined when an Armv8.3-A or higher target is used.
I've implemented the target detection logic in Clang so that this feature is enabled for architectures from armv8.3-a onwards (so -march=armv8.4-a also enables this, for example).

make check-all didn't show any new failures.

[1] https://developer.arm.com/docs/101028/latest/data-processing-intrinsics

Differential Revision: https://reviews.llvm.org/D64495

llvm-svn: 366197

Details

Committed
ktkachovJul 16 2019, 2:27 AM
Differential Revision
D64495: [AArch64] Implement __jcvt intrinsic from Armv8.3-A
Parents
rGc5a2d7470e10: [lldb] Rename Options.inc to CommandOptions.inc [NFC]
Branches
Unknown
Tags
Unknown