This is an archive of the discontinued LLVM Phabricator instance.

[WebAssembly] Change call_indirect stack semantics and printing order
AbandonedPublic

Authored by jgravelle-google on Oct 17 2016, 4:06 PM.

Details

Reviewers
dschuff
sunfish
Summary

For 0xc we need to change the order in which we consider the
arguments to call_indirect as being popped during register stackification.

Event Timeline

jgravelle-google retitled this revision from to [WebAssembly] Change call_indirect stack semantics and printing order.
jgravelle-google updated this object.
jgravelle-google added reviewers: dschuff, sunfish.
jgravelle-google added a subscriber: llvm-commits.

This is the second option. We should go with either this or https://reviews.llvm.org/D25708 or something else entirely.

A third way that more directly expresses what I'd like is to be able to say in TableGen, "this instruction takes as input variable arguments, followed by a single fixed I32 argument", but that's a much more fundamental change that would probably only have a use case here.

dschuff edited edge metadata.Oct 18 2016, 1:46 PM

This ended up being worse than I expected. I think we should go the direction in D25708 also.