On Wed, Apr 14, 2010 at 4:38 PM, Matijn Woudt <tijn...@gmail.com> wrote: > On Wed, Apr 14, 2010 at 4:27 PM, Stefan Dösinger <stefandoesin...@gmx.at> > wrote: >> >> Am 14.04.2010 um 15:44 schrieb Henri Verbeet: >> >>> On 14 April 2010 15:07, Stefan Dösinger <stefandoesin...@gmx.at> wrote: >>>>> 3) Implement the compiler in d3dcompiler_xx. >>>> I wrote a basic HLSL compiler as university project in 2008, this is where >>>> part of the assembler code came from. Do you have the sources, do you need >>>> them? >>>> >>> Quite frankly, I also believe that's where some of the issues in the >>> early versions of those assembler patches came from. I don't know if >>> that compiler has seen any work since 2008, but I'd be careful with >>> taking it as too much of an example. >> Yep, I recommend using Mattheo's code if possible. He has rebased my old >> code and fixed a bunch of issues. Beyond that, my compiler is fairly >> minimalistic. I think it supports most features except arrays(needs loop >> unrolling support). However, the optimizer is fairly simplistic. For better >> optimizations you may want to investigate SSA transformations and related >> stuff. I guess perfect optimization isn't a requirement for a first version >> though. > > First thing would probably be cleaning up and getting something minimal past > AJ. > >> >> Just in case my git tree is here: http://84.112.174.163/~stefan/wine/ . It's >> not online all the time, and I am not guaranted a fixed IP(although it >> hasn't changed in years), so check it out as long as you can if you need it. >> > > Am I supposed to find your compiler code there? It seems like a git > tree of ages ago (where d3dx9_36 only contains math and font code). > > >
It might also make sense to explore whether compilers like LLVM (used a lot these days including for OpenCL implementations by Apple, Nvidia; and don't forget Gallium3D) and Open64 (used in Cuda) and others. Roderick