This is an archive of the discontinued LLVM Phabricator instance.

multivalue result types
ClosedPublic

Authored by sammax on Aug 11 2020, 2:17 PM.

Details

Summary

Emit all result types of a multivalue func type

Diff Detail

Event Timeline

sammax created this revision.Aug 11 2020, 2:17 PM
Herald added a project: Restricted Project. · View Herald TranscriptAug 11 2020, 2:17 PM
sammax requested review of this revision.Aug 11 2020, 2:17 PM

Do we not have any test for this @tlively? I guess we should add one if now.

Also for @tlively: where should we be doing feature checking for this kind of thing? Should we check as we write the output? Or as we read the inputs?

Nope, I guess we don't have any tests for this yet. @sammax, could you add a test in lld/test/wasm?

For feature testing, it would probably be cleanest to check all the input functions in Writer::populateTargetFeatures, since that's where all the other feature checking happens. @sammax, would you want to add that functionality as well? If not, it would be fine to leave that to a separate patch, I think.

sammax updated this revision to Diff 285030.Aug 12 2020, 3:57 AM

added test

@tlively regarding the feature testing, I don't quite understand what happens in Writer::populateTargetFeatures yet, I'll have to look into it a bit more.

@sammax Yeah there's a lot of stuff going on there. Thinking about it more, I'm not sure we should be feature checking type signatures in the linker. We certainly aren't feature checking the contents of the linked functions. This patch LGTM, so I'll go ahead and land it as-is.

tlively accepted this revision.Aug 12 2020, 10:51 AM
This revision is now accepted and ready to land.Aug 12 2020, 10:51 AM
This revision was automatically updated to reflect the committed changes.