[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