<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=""><br class=""><div><blockquote type="cite" class=""><div class="">On May 15, 2015, at 4:00 PM, Reid Kleckner <<a href="mailto:rnk@google.com" class="">rnk@google.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><span style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;" class="">Can you provide some high-level statistics on the amount of code involved in the various pieces? It's a crude approximation of how complex the pieces (backend, assembler, disassembler) are.</span></div></blockquote><div><br class=""></div><div>There is no assembler, inline assembly support or disassembler support and no current plan to implement those. The backend is all there is, and I think it’s pretty similar in size to other targets at this time. The parts I’ve spent the most time on and were the most problematic were for the required pretty printing of various components, so most of the complexity of the backend is really for printing purposes.</div><div><br class=""></div><blockquote type="cite" class=""><div class=""><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><br class=""></div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">If HSAIL is similar to AMDIL and NVPTX, how does it compare to SPIR-V? Is it more of a backend, with lots of lowering, or more of a portable program representation?</div></div></blockquote></div><br class=""><div class="">It’s a replacement for AMDIL. It is a virtual ISA, with physical registers and mostly goes through the normal target code generation paths. It is not similar in design to SPIR-V, although its purpose is pretty similar.</div><div class=""><br class=""></div><div class="">-Matt</div></body></html>