<div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div>LunarG, with support from Valve, announces the GlassyMesa project, an effort to bring the LLVM compiler infrastructure to Mesa.</div>
<div><br></div><div>What is GlassyMesa?</div><div><br></div><div>GlassyMesa utilizes LunarGLASS, the LLVM compiler stack with modifications allowing it to represent and optimize 3D shaders and target GPUs. This also includes use of glslang, the Khronos GLSL reference parser. It also includes a translation pass from LLVM IR to GLSL IR, the IR used by Mesa compiler backends. A slide deck with a block diagram is available at <br>
<div><a href="http://lunarg.com/wp-content/uploads/2014/06/GlassyMesaSlides-05Jun2014.pdf" target="_blank">lunarg.com/wp-content/uploads/2014/06/GlassyMesaSlides-05Jun2014.pdf</a></div></div>
<div><br></div><div>Why create GlassyMesa?</div><div><br></div><div>LLVM brings state-of-the-art compiler optimizations to Mesa immediately. As importantly, it brings a modern Intermediate Representation (IR) which can be the basis for rapid development of new optimizations as shaders and shader languages evolve as well as enable multiple teams to develop components independently more efficiently than current IRs. Furthermore, this capability can be used as a basis for development of compiler backends using the LLVM backend infrastructure.</div>
<div><br></div><div>What is the current state of GlassyMesa?</div><div><br></div><div>GlassyMesa is in very early development. It is a proof-of-concept to demonstrate this approach can deliver shader runtime improvements and will continue to evolve in capability. Much functionality remains to be developed. No effort has been made yet to tune shader runtime or compile time performance. It is running only a handful of traces to our knowledge. Initial performance results are promising.</div>
<div><br></div><div><div>Why announce GlassyMesa now?</div><div><br></div><div>LunarG invites the feedback and cooperation of the Mesa community to this effort. It believes that an effort like this requires early and frequent input and support from the community.</div>
</div><div><br></div><div>What are the plans for GlassyMesa?</div><div><br></div><div>LunarG is planning to actively improve GlassyMesa functionality and performance over the coming months.</div><div><br></div><div>
Where can I find GlassyMesa?</div><div><br></div><div>GlassyMesa is available at: <u><span><font style="background-color:rgb(255,255,204)">github</font></span><font color="#227a78">.com</font></u><span style="color:rgb(25,25,25);font-family:Arial;font-size:12px;vertical-align:baseline;white-space:pre-wrap;background-color:transparent">:LunarG/steamos_mesa.git, at branch 2014ww23.2_i965-LunarGlass_drop1</span></div>
<div><span style="color:rgb(25,25,25);font-family:Arial;font-size:12px;vertical-align:baseline;white-space:pre-wrap;background-color:transparent"></span><br></div><div><span style="color:rgb(25,25,25);font-family:Arial;font-size:12px;vertical-align:baseline;white-space:pre-wrap;background-color:transparent">What is the licensing?</span></div>
<div><span style="color:rgb(25,25,25);font-family:Arial;font-size:12px;vertical-align:baseline;white-space:pre-wrap;background-color:transparent"></span><br></div><div><span style="color:rgb(25,25,25);font-family:Arial;font-size:12px;vertical-align:baseline;white-space:pre-wrap;background-color:transparent">LunarGLASS is released under a BSD-style license. See <a href="http://www.lunarglass.org/faq" target="_blank">http://www.lunarglass.org</a>.</span></div>
<span style="color:rgb(25,25,25);font-family:Arial;font-size:12px;vertical-align:baseline;white-space:pre-wrap;background-color:transparent"></span></div></div><div class="gmail_quote"><span style="color:rgb(25,25,25);font-family:Arial;font-size:12px;vertical-align:baseline;white-space:pre-wrap;background-color:transparent"><div dir="ltr">
<br></div></span><div dir="ltr"><span style="color:rgb(25,25,25);font-family:Arial;font-size:12px;vertical-align:baseline;white-space:pre-wrap;background-color:transparent"></span>
</div><div dir="ltr"><br></div><div dir="ltr"><br></div><div dir="ltr"><br></div>
</div><br></div>