This is an archive of the discontinued LLVM Phabricator instance.

[WebAssembly] Add missing utility methods for exnref type
ClosedPublic

Authored by aheejin on Jul 14 2019, 4:33 AM.

Details

Summary

This adds missing utility methods and copy instruction handling for
exnref type and also adds tests.

tee instruction tests are missing because isTee is currently only
used in ExplicitLocals pass and testing that pass in mir requires
serialization of stackified registers in mir files, which is a bit
nontrivial because MachineFunctionInfo only has info of vreg numbers
(which are large integers) but not the mir's register numbers. But this
change is quite trivial anyway.

Diff Detail

Event Timeline

aheejin created this revision.Jul 14 2019, 4:33 AM
tlively accepted this revision.Jul 15 2019, 2:53 PM
tlively added inline comments.
llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
389

Maybe we really should think about adding a TableGen capability for this sort of thing. It is very inconvenient to have to find and update these utility methods every time we add new types.

This revision is now accepted and ready to land.Jul 15 2019, 2:53 PM
lebedev.ri retitled this revision from Add missing utility methods for exnref type to [WASM] Add missing utility methods for exnref type.Jul 15 2019, 2:54 PM
aheejin retitled this revision from [WASM] Add missing utility methods for exnref type to [WebAssembly] Add missing utility methods for exnref type.Jul 15 2019, 2:57 PM
aheejin marked an inline comment as done.Jul 15 2019, 3:57 PM
aheejin added inline comments.
llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
389

I agree :(

This revision was automatically updated to reflect the committed changes.