[PATCH] Machine Level IR Serialization: print and parse LLVM IR.

Alex Lorenz arphaman at gmail.com
Fri May 8 12:47:31 PDT 2015


Hi dexonsmith, bob.wilson, bogner,

This patch is the initial patch for the machine level IR serialization. It creates a new library in CodeGen called Serialization.
This patch introduces the 'mir' file extension that is used by the machine level IR files.

This new library adds a new machine function pass that is responsible for printing out the machine level IR in the new
format.
It also adds the functions and a class that allows llc to parse machine level IR. I've adopted a two stage parsing
approach - at first the optional LLVM IR is parsed so that the corresponding LLVM module can be created. Then
the machine level IR will be parsed at a later stage after llc creates the TargetMachine with the target information
from the already parsed module.

REPOSITORY
  rL LLVM

http://reviews.llvm.org/D9616

Files:
  include/llvm/CodeGen/Passes.h
  include/llvm/CodeGen/Serialization/Parser.h
  include/llvm/InitializePasses.h
  include/llvm/Support/YAMLTraits.h
  lib/CodeGen/CMakeLists.txt
  lib/CodeGen/LLVMBuild.txt
  lib/CodeGen/LLVMTargetMachine.cpp
  lib/CodeGen/Makefile
  lib/CodeGen/Serialization/CMakeLists.txt
  lib/CodeGen/Serialization/LLVMBuild.txt
  lib/CodeGen/Serialization/MIRParser.cpp
  lib/CodeGen/Serialization/MIRParser.h
  lib/CodeGen/Serialization/MIRPrintingPass.cpp
  lib/CodeGen/Serialization/Makefile
  lib/CodeGen/Serialization/Parser.cpp
  lib/CodeGen/Serialization/YAML.cpp
  lib/CodeGen/Serialization/YAML.h
  lib/Support/YAMLTraits.cpp
  test/CodeGen/Generic/stop-after.ll
  test/CodeGen/Serialization/lit.local.cfg
  test/CodeGen/Serialization/llvmIR.mir
  test/CodeGen/Serialization/llvmIRError.mir
  test/CodeGen/Serialization/llvmIRMissing.mir
  tools/llc/llc.cpp

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D9616.25360.patch
Type: text/x-patch
Size: 28602 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150508/eaf63467/attachment.bin>


More information about the llvm-commits mailing list