This is an archive of the discontinued LLVM Phabricator instance.

[SVE] Selection failure with scalable insertelements
ClosedPublic

Authored by DylanFleming-arm on Jun 14 2021, 10:49 AM.

Diff Detail

Event Timeline

DylanFleming-arm requested review of this revision.Jun 14 2021, 10:49 AM
Herald added a project: Restricted Project. · View Herald TranscriptJun 14 2021, 10:49 AM

Does this actually have the correct semantics at runtime? It looks like the "index" instruction is using the wrong width.

Matt added a subscriber: Matt.Jun 14 2021, 12:34 PM

Changed predicate instructions to use the correct bitwidths

This revision is now accepted and ready to land.Jun 15 2021, 11:39 AM
This comment was removed by CarolineConcatto.

@DylanFleming-arm
Do you mind expanding your tests to add this ones test_insert_into_undef_<type>
but replacing:

%b = insertelement <vscale x 4 x float> undef, float %a, i32 0

by

%b = insertelement <vscale x 4 x float> undef, float %a, i64 idx

Changed tests to include all nxv data types, not just 2f16, 4f16, and 2f32.

This revision was landed with ongoing or failed builds.Jun 16 2021, 7:55 AM
This revision was automatically updated to reflect the committed changes.