[PATCH] IR: Make metadata typeless in assembly

Duncan P. N. Exon Smith dexonsmith at apple.com
Wed Dec 10 18:16:31 PST 2014


Now that `Metadata` is typeless, reflect that in the assembly.

There's really only one reasonably thing to do here: strip the
`metadata` type (except in arguments to `call` instructions, where it
still has meaning), and add the symmetric `value` keyword for all
metadata operands that bridge to `Value`.

I'm confident in the code changes (although obviously I'll relish any
criticism offered), but I'd love a review of `docs/LangRef.rst`.  I
wasn't really sure how much exposition was appropriate, so I kept it
pretty simple.

Also, I wrote an upgrade script that handle all of the tests in llvm
after applying the main patch.  It even handles much of cfe (doing
mostly the right thing with `CHECK` lines).  I'll be attaching it the PR
after I make my commit, but feel free to spot-check its enormous result,
which I've attached as llvm-tests.patch.  (I'll squash that in with the
code changes when I commit.)

Note: in case it's confusing, some of the testcase changes in the code
patch are killing newlines so the upgrade script can do it's magic.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: metadata-value-split-assembly.patch
Type: application/octet-stream
Size: 35805 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141210/56c926a2/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: metadata-drop-types.sh
Type: application/octet-stream
Size: 6561 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141210/56c926a2/attachment-0001.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: llvm-tests.patch
Type: application/octet-stream
Size: 2550847 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141210/56c926a2/attachment-0002.obj>


More information about the llvm-commits mailing list