<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title>
</head>
<body>
<div name="messageBodySection">
<div dir="auto">I’ll look into that file, thank you for the clarification!</div>
</div>
<div name="messageSignatureSection"><br>
<div dir="auto">Kaarthik A.</div>
</div>
<div name="messageReplySection">On Aug 4, 2019, 2:19 AM -0400, Tim Northover <t.p.northover@gmail.com>, wrote:<br>
<blockquote type="cite" class="spark_quote" style="margin: 5px 5px; padding-left: 10px; border-left: thin solid #1abc9c;">
Hi Kaarthik,<br>
<br>
On Sat, 3 Aug 2019 at 22:57, Kaarthik Alagapan via llvm-dev<br>
<llvm-dev@lists.llvm.org> wrote:<br>
<blockquote type="cite" class="spark_quote" style="margin: 5px 5px; padding-left: 10px; border-left: thin solid #e67e22;">
Can I get some guidance on what function I should use to insert a .byte/.word in SelectionDAG so it’s printed out in assembly?<br>
</blockquote>
<br>
This kind of problem is often solved by selecting the original IR<br>
instruction to a target-specific pseudo-instruction (one with<br>
"isCodeGenOnly = 1" in TableGen) and then expanding it to the real<br>
instruction sequence later.<br>
<br>
In most cases that would be a special XYZExpandPseudoInsts.cpp pass<br>
that runs very late and looks through a function replacing any<br>
MachineInstrs with the correct sequence. But in your case .byte and<br>
.word aren't even instructions so you probably want to do it during<br>
conversion to MCInsts in XYZAsmPrinter.cpp (or possibly<br>
XYZMCInstLower.cpp, different targets handle that step slightly<br>
differently). There you can detect your special pseudo and call<br>
EmitIntValue or something to get your directives.<br>
<br>
Cheers.<br>
<br>
Tim.<br>
</blockquote>
</div>
</body>
</html>