This is an archive of the discontinued LLVM Phabricator instance.

[SVE] Remove redundant hasBF16 calls from lowering code.
ClosedPublic

Authored by paulwalker-arm on Feb 9 2022, 5:40 AM.

Details

Summary

The are several places where hasBF16 is used to protect code that
has no requirement for the +bf16 feature. The lowering code uses
stock SVE instructions for things like loads and stores and so is
safe even when +bf16 is not available.

NOTE: Currently the nxvbf16 type is not legal unless the +bf16 feature is available, but that isn't an issue because the affected code is post type legalisation.
NOTE: This patch mirrors previous work that removed the same redundant protection from isel patterns where the resulting selection emitted stock SVE instructions.

Diff Detail

Event Timeline

paulwalker-arm created this revision.Feb 9 2022, 5:40 AM
paulwalker-arm requested review of this revision.Feb 9 2022, 5:40 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 9 2022, 5:40 AM
sdesmalen accepted this revision.Feb 9 2022, 6:43 AM
sdesmalen retitled this revision from [SVE] Remove redundanat hasBF16 calls from lowering code. to [SVE] Remove redundant hasBF16 calls from lowering code..

LGTM

This revision is now accepted and ready to land.Feb 9 2022, 6:45 AM
Matt added a subscriber: Matt.Feb 9 2022, 10:53 AM
This revision was landed with ongoing or failed builds.Feb 10 2022, 6:52 AM
This revision was automatically updated to reflect the committed changes.