[PATCH] D156472: [WebAssembly] Create separation between MC and CodeGen layers

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 27 11:33:04 PDT 2023


rnk created this revision.
rnk added reviewers: asb, pmatos, dschuff.
Herald added subscribers: sunfish, hiraditya, jgravelle-google, sbc100.
Herald added a project: All.
rnk requested review of this revision.
Herald added a subscriber: aheejin.
Herald added a project: LLVM.

Move WebAssemblyUtilities from Utils to the CodeGen library. It
primarily deals in MIR layer types, so it really lives in the CodeGen
library.

Move a variety of other things around to try create better separation.

See issue #64166 for more info on layering.

I wasn't sure what to do with llvm/include/CodeGen/WasmAddressSpaces.h.
It has no other users, so it seems like it should live in lib/Target,
but it was just recently moved to CodeGen. I worked around the issue in
the Bazel build by adding it to the CodeGenTypes library, but this seems
awkard. Maybe it should live in BinaryFormat or IR.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D156472

Files:
  llvm/lib/Target/WebAssembly/CMakeLists.txt
  llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp
  llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.cpp
  llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
  llvm/lib/Target/WebAssembly/Utils/CMakeLists.txt
  llvm/lib/Target/WebAssembly/Utils/WebAssemblyTypeUtilities.cpp
  llvm/lib/Target/WebAssembly/Utils/WebAssemblyTypeUtilities.h
  llvm/lib/Target/WebAssembly/Utils/WebAssemblyUtilities.cpp
  llvm/lib/Target/WebAssembly/Utils/WebAssemblyUtilities.h
  llvm/lib/Target/WebAssembly/WebAssemblyArgumentMove.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyDebugFixup.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyExceptionInfo.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyFixBrTableDefaults.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.h
  llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.h
  llvm/lib/Target/WebAssembly/WebAssemblyMCLowerPrePass.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.h
  llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyRegNumbering.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
  llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
  llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyUtilities.h
  llvm/utils/gn/secondary/llvm/lib/Target/WebAssembly/BUILD.gn
  llvm/utils/gn/secondary/llvm/lib/Target/WebAssembly/Utils/BUILD.gn
  utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D156472.544871.patch
Type: text/x-patch
Size: 27769 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230727/1e12c744/attachment.bin>


More information about the llvm-commits mailing list