Add two new record types to the blockinfo block:

BLOCKNAME and SETRECORDNAME.  This allows a bitcode
file to be self describing with pretty names for 
records and blocks in addition to numbers.  This
enhances llvm-bcanalyzer to use this to print prettily.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70165 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2009-04-26 22:21:57 +00:00
parent 7919b966a8
commit f9a3ec86c1
4 changed files with 79 additions and 14 deletions
+11
View File
@@ -563,6 +563,8 @@ blocks. The currently specified records are:
<pre>
[SETBID (#1), blockid]
[DEFINE_ABBREV, ...]
[BLOCKNAME, ...name...]
[SETRECORDNAME, RecordID, ...name...]
</pre>
</div>
@@ -582,6 +584,15 @@ in <tt>BLOCKINFO</tt> blocks receive abbreviation IDs as described
in <tt><a href="#DEFINE_ABBREV">DEFINE_ABBREV</a></tt>.
</p>
<p>The <tt>BLOCKNAME</tt> can optionally occur in this block. The elements of
the record are the bytes for the string name of the block. llvm-bcanalyzer uses
this to dump out bitcode files symbolically.</p>
<p>The <tt>SETRECORDNAME</tt> record can optionally occur in this block. The
first entry is a record ID number and the rest of the elements of the record are
the bytes for the string name of the record. llvm-bcanalyzer uses
this to dump out bitcode files symbolically.</p>
<p>
Note that although the data in <tt>BLOCKINFO</tt> blocks is described as
"metadata," the abbreviations they contain are essential for parsing records