[PATCH] D11369: WebAssembly: basic bitcode → assembly CodeGen test

JF Bastien jfb at chromium.org
Mon Jul 20 13:46:40 PDT 2015


jfb created this revision.
jfb added a reviewer: sunfish.
jfb added a subscriber: llvm-commits.
Herald added subscribers: jfb, aemerson.

Add a basic CodeGen bitcode test which (for now) only prints out the function name and nothing else. The current code merely implements the basic needed for the test run to not crash / assert. Getting to that point required:

 - Basic InstPrinter.
 - Basic AsmPrinter.
 - DiagnosticInfoUnsupported (not strictly required, but nice to have, duplicated from AMDGPU/BPF's ISelLowering).
 - Some SP and register setup in WebAssemblyTargetLowering.
 - Basic LowerFormalArguments.
 - GenInstrInfo.
 - Placeholder LowerFormalArguments.
 - Placeholder CanLowerReturn and LowerReturn.
 - Basic DAGToDAGISel::Select, which requiresGenDAGISel.inc as well as GET_INSTRINFO_ENUM with GenInstrInfo.inc.
 - Remove WebAssemblyFrameLowering::determineCalleeSaves and rely on default.
 - Implement WebAssemblyFrameLowering::hasFP, same as AArch64's implementation.

Follow-up patches will implement a real AsmPrinter, which will require adding MI opcodes specific to WebAssembly.

http://reviews.llvm.org/D11369

Files:
  lib/Target/WebAssembly/CMakeLists.txt
  lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.cpp
  lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.h
  lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
  lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
  lib/Target/WebAssembly/Makefile
  lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
  lib/Target/WebAssembly/WebAssemblyFrameLowering.cpp
  lib/Target/WebAssembly/WebAssemblyFrameLowering.h
  lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
  lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
  lib/Target/WebAssembly/WebAssemblyISelLowering.h
  lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
  lib/Target/WebAssembly/WebAssemblyInstrInfo.h
  lib/Target/WebAssembly/WebAssemblySubtarget.h
  test/CodeGen/WebAssembly/integer.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D11369.30189.patch
Type: text/x-patch
Size: 20705 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150720/333fe5b1/attachment.bin>


More information about the llvm-commits mailing list