[PATCH] D101140: [WebAssembly][CodeGen] IR support for WebAssembly local variables
Thomas Lively via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue May 4 17:18:05 PDT 2021
tlively added inline comments.
================
Comment at: llvm/include/llvm/CodeGen/MIRYamlMapping.h:351
IO.enumCase(ID, "scalable-vector", TargetStackID::ScalableVector);
+ IO.enumCase(ID, "object", TargetStackID::Object);
IO.enumCase(ID, "noalloc", TargetStackID::NoAlloc);
----------------
Is there a good test to demonstrate this change in?
================
Comment at: llvm/lib/Target/WebAssembly/Utils/WebAssemblyUtilities.cpp:34-36
+// runs between then and DAG building time, though, so instead we hoist stack
+// objects lazily when they are first used, and comprehensively after the DAG is
+// built via the PreprocessISelDAG hook, called by the
----------------
Why do this in two places instead of just once comprehensively in the hook? It would be good to explain that in the comment, too.
================
Comment at: llvm/lib/Target/WebAssembly/Utils/WebAssemblyUtilities.cpp:63-64
+ MFI.setObjectOffset(FrameIndex, Local);
+ // Allocate WebAssembly locals for each non-aggregate component of the
+ // allocation.
+ for (EVT ValueVT : ValueVTs)
----------------
Can there be aggregate components? What do we do with them?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D101140/new/
https://reviews.llvm.org/D101140
More information about the cfe-commits
mailing list