<div dir="ltr"><div class="markdown-here-wrapper" style><p style="margin:1.2em 0px!important">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)">ShouldEmitMatchRegisterAltName</code> to<br><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)">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)">MatchRegisterAlias</code> to the generated AsmMatcher if it is enabled.</p>
<p style="margin:1.2em 0px!important">Backends can use this to parse alternative register names based on values stored<br>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=QbJwHCHAk2aiFpMka9ouatepAjHkjarFaoieRXngHZM&s=QjrsyBPSYyINI16TBcb3agbJXe4-6LdKdwfNQ3byOi8&e=">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)">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)">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)">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)">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)">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)">r31:r30</code>.</p>
<p style="margin:1.2em 0px!important">Files changed:</p>
<ul style="margin:1.2em 0px;padding-left:2em">
<li style="margin:0.5em 0px"><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)">include/Target/Target.td</code></li>
<li style="margin:0.5em 0px"><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)">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">​</div></div></div>