<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">+Jim, Owen<div class=""><br class=""></div><div class="">Don’t we already have a mechanism for register name aliases, or am I mistaken?</div><div class=""><br class=""></div><div class="">Thanks,</div><div class="">/jakob</div><div class=""><span class="Apple-tab-span" style="white-space:pre">      </span><br class=""><div><blockquote type="cite" class=""><div class="">On Jun 16, 2015, at 8:08 AM, Dylan McKay <<a href="mailto:dylanmckay34@gmail.com" class="">dylanmckay34@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><div class="markdown-here-wrapper" style=""><p style="margin:1.2em 0px!important" class="">This commit adds a new flag <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)" class="">ShouldEmitMatchRegisterAltName</code> to<br class=""><code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)" class="">include/Target/Target.td</code>, and generates an alternative register name matching function named <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)" class="">MatchRegisterAlias</code> to the generated AsmMatcher if it is enabled.</p><p style="margin:1.2em 0px!important" class="">Backends can use this to parse alternative register names based on values stored<br class="">in TableGen files. The <a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_avr-2Dllvm_llvm&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=mQ4LZ2PUj9hpadE3cDHZnIdEwhEBrbAstXeMaFoB9tg&m=-nmZyNeY9VdCJy56Uxyf0eFzr0UgcwD5xc3NxT9AnVM&s=v5akBogp8HK8rat9_cNcUQAJ9dRPa1AfpeRoNAUfcls&e=" class="">AVR-LLVM</a> project is using this function to parse special pointer registers, identified by <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)" class="">X</code>, <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)" class="">Y</code>, and <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)" class="">Z</code>, which are alternative names to the GPR pairs <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)" class="">r27:r26</code>, <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)" class="">r29:r28</code>, and <code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)" class="">r31:r30</code>.</p><p style="margin:1.2em 0px!important" class="">Files changed:</p>
<ul style="margin:1.2em 0px;padding-left:2em" class="">
<li style="margin:0.5em 0px" class=""><code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)" class="">include/Target/Target.td</code></li>
<li style="margin:0.5em 0px" class=""><code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-radius:3px;display:inline;background-color:rgb(248,248,248)" class="">utils/TableGen/AsmMatcherEmitter.cpp</code></li>
</ul>
<div title="MDH:PGRpdj48YnI+PC9kaXY+PGRpdj48ZGl2PlRoaXMgY29tbWl0IGFkZHMgYSBuZXcgZmxhZyBgU2hv
dWxkRW1pdE1hdGNoUmVnaXN0ZXJBbHROYW1lYCB0bzwvZGl2PjxkaXY+YGluY2x1ZGUvVGFyZ2V0
L1RhcmdldC50ZGAsIGFuZCBnZW5lcmF0ZXMgYW4gYWx0ZXJuYXRpdmUgcmVnaXN0ZXIgbmFtZSBt
YXRjaGluZyBmdW5jdGlvbiBuYW1lZCBgTWF0Y2hSZWdpc3RlckFsaWFzYCB0byB0aGUgZ2VuZXJh
dGVkIEFzbU1hdGNoZXIgaWYgaXQgaXMgZW5hYmxlZC48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2
PkJhY2tlbmRzIGNhbiB1c2UgdGhpcyB0byBwYXJzZSBhbHRlcm5hdGl2ZSByZWdpc3RlciBuYW1l
cyBiYXNlZCBvbiB2YWx1ZXMgc3RvcmVkPC9kaXY+PGRpdj5pbiBUYWJsZUdlbiBmaWxlcy4gVGhl
IFtBVlItTExWTV0oaHR0cHM6Ly9naXRodWIuY29tL2F2ci1sbHZtL2xsdm0pIHByb2plY3QgaXMg
dXNpbmcgdGhpcyBmdW5jdGlvbiB0byBwYXJzZSBzcGVjaWFsIHBvaW50ZXIgcmVnaXN0ZXJzLCBp
ZGVudGlmaWVkIGJ5IGBYYCwgYFlgLCBhbmQgYFpgLCB3aGljaCBhcmUgYWx0ZXJuYXRpdmUgbmFt
ZXMgdG8gdGhlIEdQUiBwYWlycyBgcjI3OnIyNmAsIGByMjk6cjI4YCwgYW5kIGByMzE6cjMwYC48
L2Rpdj48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PkZpbGVzIGNoYW5nZWQ6PC9kaXY+PGRpdj4q
IGBpbmNsdWRlL1RhcmdldC9UYXJnZXQudGRgPC9kaXY+PGRpdj4qIGB1dGlscy9UYWJsZUdlbi9B
c21NYXRjaGVyRW1pdHRlci5jcHBgPC9kaXY+" style="height:0;width:0;max-height:0;max-width:0;overflow:hidden;font-size:0em;padding:0;margin:0" class="">​</div></div></div>
<span id="cid:F51CC589-B044-4F3C-848E-9C27EB095DED@PK5001Z"><0001-TableGen-Add-MatchRegisterAltName-to-AsmMatcher.patch></span></div></blockquote></div><br class=""></div></body></html>