<div dir="ltr"><div><div>Hello,<br><br></div>Is it possible to prevent optimizations across a given machine instruction, i.e., some sort of "optimization barrier", when doing architecture-specific optimizations during code generation? For example, I'd like to be able to insert some form of instrumentation prevent an optimization pass from lifting a common sub-expression across a given machine instruction.<br><br></div>I'm interested in capturing and maintaining an equivalent set of live values across compilations for different architectures, similarly to what is expressed in "A Unified Model of Pointwise Equivalence of Procedural Computations" (<a href="http://dl.acm.org/citation.cfm?id=197402">http://dl.acm.org/citation.cfm?id=197402</a>). Architecture-specific optimizations very often create architecture-specific live values, which makes it hard to map live values between different architectures.<br clear="all"><div><div><div><br></div><div>Thanks for any help!<br></div><div><br>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div><span>Rob Lyerly</span><br></div><div>Graduate Research Assistant, Systems Software Research Group<br><br></div><div><img src="https://www.branding.unirel.vt.edu/content/branding_unirel_vt_edu/en/trademarks/index/jcr:content/content/vtmulticolumn/vt-items_2/adaptiveimage.img.3008.low.jpg/1461259021506.jpg" width="69" height="69"> <span><span><span><span><img src="http://www.oocities.org/rainforestwind/divider_black_vertical.jpg" width="8" height="65"></span></span></span></span> <img src="https://docs.google.com/uc?id=0B8E5oZB3WuGKTDNXVkt6UlFja1k&export=download" width="477" height="60"></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div>
</div></div></div></div>