This is an archive of the discontinued LLVM Phabricator instance.

[VE] v512|256 f32|64 fneg isel and tests
ClosedPublic

Authored by simoll on Mar 14 2022, 10:09 AM.

Details

Summary

fneg instruction isel and tests. We do this also in preparation of fused negatate-multiple-add fp operations.

Diff Detail

Event Timeline

simoll created this revision.Mar 14 2022, 10:09 AM
Herald added a project: Restricted Project. · View Herald TranscriptMar 14 2022, 10:09 AM
Herald added a subscriber: hiraditya. · View Herald Transcript
simoll requested review of this revision.Mar 14 2022, 10:09 AM
Herald added a project: Restricted Project. · View Herald TranscriptMar 14 2022, 10:09 AM
simoll updated this revision to Diff 415172.Mar 14 2022, 11:29 AM
simoll retitled this revision from [VE] v256f32|64 fneg isel and tests to [VE] v512|256 f32|64 fneg isel and tests.

Add missing tests

kaz7 added a comment.Mar 15 2022, 3:59 AM

Looks fine except these:

llvm/lib/Target/VE/VVPISelLowering.cpp
85

Please follow above clang-format suggestion.

86

I'm not sure why it's safe to remove assert(LegalVecVT.isSimple()); here

simoll updated this revision to Diff 415402.Mar 15 2022, 6:04 AM
simoll marked an inline comment as done.

Formatting

simoll added inline comments.Mar 15 2022, 7:40 AM
llvm/lib/Target/VE/VVPISelLowering.cpp
86

The assertion is still there. It's now in line 82.

kaz7 accepted this revision.Mar 15 2022, 8:20 PM

Thank you for answering my question. LGTM now.

This revision is now accepted and ready to land.Mar 15 2022, 8:20 PM
This revision was landed with ongoing or failed builds.Mar 16 2022, 3:33 AM
This revision was automatically updated to reflect the committed changes.