This is an archive of the discontinued LLVM Phabricator instance.

[AARCH64] Enable fp16 data type for the Builtin in aarch64 only
ClosedPublic

Authored by az on Dec 18 2017, 9:27 AM.

Details

Reviewers
SjoerdMeijer
Summary

The aarch64 ARMv8.2-A FP16 vector intrinsic patch (https://reviews.llvm.org/D32511) is reverted because it broke some tests for arm. Work is being done to add fp16 types for arm backend (https://reviews.llvm.org/D38315). While waiting for that work to be finished, the code in this patch guards builtin native fp16 data type so that it can only be used by aarch64.

Diff Detail

Event Timeline

az created this revision.Dec 18 2017, 9:27 AM
SjoerdMeijer accepted this revision.Dec 21 2017, 2:36 AM

Looks reasonable to me.

Just checking, do we need those changes in CodeGen/arm_neon_intrinsics.c? I mean, trunk is already using i16 in these tests.

This revision is now accepted and ready to land.Dec 21 2017, 2:36 AM
az added a comment.Dec 21 2017, 8:20 AM

Looks reasonable to me.

Just checking, do we need those changes in CodeGen/arm_neon_intrinsics.c? I mean, trunk is already using i16 in these tests.

It depends on how I check in the old reverted code (the one in https://reviews.llvm.org/D32511) with this one. If I put back the reverted code as is first and then check in this one separately, then we need the changes in arm_neon_intrinsics.c. If we combine this one with the old one into one checkin, then it is not needed. I will probably go with the former so that when support for fp16 in arm32 in complete, we can revert the whole code here but I am open to suggestions.