<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p><br>
</p>
<br>
<div class="moz-cite-prefix">On 9/13/2016 4:04 PM, Daniel Berlin
wrote:<br>
</div>
<blockquote
cite="mid:CAF4BwTV6YEUx6zTPBunUGCsk+fMOS+F6+JX8dGjJp2A0GjMxSA@mail.gmail.com"
type="cite">
<div dir="ltr">
<div>Interesting.</div>
<div>Sebastian has two problems:<br>
<br>
</div>
<div>1. No MemorySSA form handles *hoisting* stores (not gcc,
not open64's mu/chi/etc).</div>
<div>It requires building the reverse problem to make these
links exist.<br>
</div>
<div><br>
</div>
<div>Instead, most things *sink* stores, which MemorySSA makes
easy.</div>
<div>See SSUPRE, etc.</div>
<div><br>
</div>
<div>2. If you are going to write your own walkers, etc, we
don't make it easy enough.</div>
<div><br>
</div>
<div>My initial view is: Rather than do this as a completely
separate piece by piece query interface, the intention was for
folks to write custom walkers, and use those.</div>
<div>For example, the code in this patch could be written as a
MemorySSA walker that implemented "getClobberingMemoryAccess"
for stores.</div>
<div>It has a different definition of what it means to be a
clobbering memory access than the default walker.</div>
<div>That's okay.</div>
<div><br>
</div>
<div>*Inside of walkers*, we should make
instructionClobbersQuery available.<br>
</div>
<div><br>
</div>
<div>Thoughts?</div>
<div><br>
</div>
</div>
</blockquote>
I'm not sure I see the distinction, other than as a code
organization one (which is a fine reason), if the idea is you want
all of the custom walkers in one place so you can more easily make
changes to the MemorySSA interface/invariants.<br>
<blockquote
cite="mid:CAF4BwTV6YEUx6zTPBunUGCsk+fMOS+F6+JX8dGjJp2A0GjMxSA@mail.gmail.com"
type="cite">
<div dir="ltr">
<div><br>
</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Tue, Sep 13, 2016 at 12:10 PM, Geoff
Berry <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:gberry@codeaurora.org" target="_blank">gberry@codeaurora.org</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">gberry
added a subscriber: gberry.<br>
gberry added a comment.<br>
<br>
I ran into the lack of an interface for this query in
MemorySSA as well in the EarlyCSE changes I was working on.
I think what you want is to be able to call
instructionClobbersQuery() since that knows about special
intrinsics and meta-data as well.<br>
<br>
<br>
<a moz-do-not-send="true"
href="https://reviews.llvm.org/D24517" rel="noreferrer"
target="_blank">https://reviews.llvm.org/<wbr>D24517</a><br>
<br>
<br>
<br>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
Geoff Berry
Employee of Qualcomm Datacenter Technologies, Inc.
Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc. Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project.</pre>
</body>
</html>