This is an archive of the discontinued LLVM Phabricator instance.

[VE] Support register and frame-index pair correctly
ClosedPublic

Authored by kaz7 on Oct 3 2020, 2:36 AM.

Details

Summary

Support register and frame-index pair correctly as operands of
generic load/store instrucitons, e.g. LD1BZXrri, STLrri, and etc.
Add regression tests also.

Diff Detail

Event Timeline

kaz7 created this revision.Oct 3 2020, 2:36 AM
kaz7 requested review of this revision.Oct 3 2020, 2:36 AM

LGTM apart from the slightly convoluted test case.

llvm/test/CodeGen/VE/loadrri.ll
56–62

These types are only used to allocate a pointer (test func_rf) that is then immediately bitcast to the type below.
Couldn't we just allocate the type below directly? We could then remove the types, the bitcast and also simplify the name to something like basic_char_string.

kaz7 planned changes to this revision.Oct 5 2020, 12:25 AM

I'll update regression test.

llvm/test/CodeGen/VE/loadrri.ll
56–62

I think those unnecessary bit casts and types are the key of this regression test. I'll try to simplify this test little bit.

kaz7 updated this revision to Diff 296102.Oct 5 2020, 12:54 AM

Update a regression test belong to suggestion.

simoll accepted this revision.Oct 5 2020, 1:53 AM

Thx

This revision is now accepted and ready to land.Oct 5 2020, 1:53 AM
This revision was landed with ongoing or failed builds.Oct 5 2020, 2:38 AM
This revision was automatically updated to reflect the committed changes.