[PATCH] D101140: [WebAssembly][CodeGen] IR support for WebAssembly local variables
    Thomas Lively via Phabricator via llvm-commits 
    llvm-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 llvm-commits
mailing list