This is an archive of the discontinued LLVM Phabricator instance.

MIR Serialization: Serialize machine instruction names.
ClosedPublic

Authored by arphaman on Jun 16 2015, 10:42 AM.

Details

Summary

This patch is based on a patch that implements initial serialization of machine basic blocks (http://reviews.llvm.org/D10465).

This patch is the initial patch for machine instruction serialization. Only the machine instruction names are serialized by this patch. The instructions are represented using a YAML sequence of string literals and are a part of machine basic block YAML mapping. An example of such MBB mapping is shown below:

name: entry
instructions:
  - mov32r0
  - retq

A machine instruction parser class 'MIParser' is introduced by this patch. This class will be used to parse the machine instructions. A supporting machine instruction lexing class will be added in the upcoming patch.

Diff Detail

Repository
rL LLVM

Event Timeline

arphaman updated this revision to Diff 27769.Jun 16 2015, 10:42 AM
arphaman retitled this revision from to MIR Serialization: Serialize machine instruction names..
arphaman updated this object.
arphaman edited the test plan for this revision. (Show Details)
arphaman added reviewers: dexonsmith, bob.wilson, bogner.
arphaman set the repository for this revision to rL LLVM.
arphaman added a subscriber: Unknown Object (MLST).
ab added a subscriber: ab.Jun 17 2015, 4:45 PM
ab added inline comments.
lib/CodeGen/MIRPrinter.cpp
115

Why lower-case? I'd much prefer the exact same as the C++/MI enums/names. And if no one else does this lowercasing already (I don't think so), this can introduce ambiguity (it will).

This revision was automatically updated to reflect the committed changes.