<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 Jan 20, 2016, at 11:40 AM, Keno Fischer <<a href="mailto:kfischer@college.harvard.edu" class="">kfischer@college.harvard.edu</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">DWARF may describe locations, but LLVM IR describes values and just happens to reuse the DWARF opcodes for it's expressions.</div></div></blockquote><div><br class=""></div>I was just trying to explain why the operation doesn’t exist. A possible solution might be typed DWARF operations which are coming in DWARF 5: <a href="http://dwarfstd.org/ShowIssue.php?issue=140425.1" class="">http://dwarfstd.org/ShowIssue.php?issue=140425.1</a> We could have the verifier recognize a trailing DW_OP_reinterpret, but implementing the type arguments in IR would take quite some work.</div><div>A simpler, similar alternative is to add a DW_OP_and operation at the end and have the verifier recognize that.</div><div><br class=""></div><div>-- adrian</div><div><br class=""><blockquote type="cite" class=""><div class=""><div class="gmail_extra"><div class="gmail_quote">On Wed, Jan 20, 2016 at 8:37 PM, Adrian Prantl <span dir="ltr" class=""><<a href="mailto:aprantl@apple.com" target="_blank" class="">aprantl@apple.com</a>></span> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br class="">
> On Jan 16, 2016, at 9:01 PM, Keno Fischer <<a href="mailto:kfischer@college.harvard.edu" class="">kfischer@college.harvard.edu</a>> wrote:<br class="">
><br class="">
> loladiro added a comment.<br class="">
><br class="">
> Yeah, I was fearing something like that, although I had hoped that since this won't actually show  up in the generated assembly (or at least it shouldn't), it might be ok. In any case, I don't think this is representable in debug info currently without having an actual trunc instruction. We could modify the DIExpression to be able to express truncation, but that's somewhat tricky, since DWARF does not have such an operation. @aprantl, thoughts?<br class="">
<br class="">
</span>Is the problem the Verifier? Because DWARF expressions are supposed to describe the location of a value rather than the value a truncation operation doesn’t necessarily make sense.<br class="">
<span class="HOEnZb"><font color="#888888" class=""><br class="">
-- adrian</font></span></blockquote></div><br class=""></div>
</div></blockquote></div><br class=""></body></html>