This is an archive of the discontinued LLVM Phabricator instance.

[IRVerifier] Allow StructRet in statepoint
ClosedPublic

Authored by cherry on Oct 23 2018, 12:55 PM.

Details

Summary

StructRet attribute is not allowed in vararg calls. The statepoint
intrinsic is vararg, but the wrapped function may be not. Allow
calls of statepoint with StructRet arg, as long as the wrapped
function is not vararg.

Diff Detail

Repository
rL LLVM

Event Timeline

cherry created this revision.Oct 23 2018, 12:55 PM
anna accepted this revision.Nov 7 2018, 11:44 AM
anna added a subscriber: anna.

This looks good to me.

lib/IR/Verifier.cpp
2825 ↗(On Diff #170732)

why do you need this first condition?

This revision is now accepted and ready to land.Nov 7 2018, 11:44 AM

Thank you for the review!

lib/IR/Verifier.cpp
2825 ↗(On Diff #170732)

This is to handle indirect calls (and avoid crash).

This revision was automatically updated to reflect the committed changes.