This is an archive of the discontinued LLVM Phabricator instance.

[RISCV] Don't propagate VL/VTYPE across inline assembly in the Insert VSETVLI pass.
ClosedPublic

Authored by craig.topper on May 25 2021, 4:25 PM.

Details

Summary

It's conceivable someone could put a vsetvli in inline assembly
so its safer to consider them as barriers. The alternative would
be to trust that the user marks VL and VTYPE registers as clobbers
of the inline assembly if they do that, but hat seems error prone.

I'm assuming inline assembly in vector code is going to be rare.

Diff Detail

Event Timeline

craig.topper created this revision.May 25 2021, 4:25 PM
craig.topper requested review of this revision.May 25 2021, 4:25 PM
Herald added a project: Restricted Project. · View Herald TranscriptMay 25 2021, 4:25 PM
Herald added a subscriber: MaskRay. · View Herald Transcript
This revision is now accepted and ready to land.May 26 2021, 12:12 AM