[Mesa-dev] [PATCH 4/6] AMDGPU: New control flow for SI v2
Tom Stellard
tom at stellard.net
Thu Dec 13 12:13:24 PST 2012
On Thu, Dec 13, 2012 at 09:10:20PM +0100, Michel Dänzer wrote:
> On Die, 2012-12-11 at 18:43 +0100, Christian König wrote:
> > This patch replaces the control flow handling with a new
> > pass which structurize the graph before transforming it to
> > machine instruction. This has a couple of different advantages
> > and currently fixes 20 piglit tests without a single regression.
> >
> > It is now a general purpose transformation that could be not
> > only be used for SI/R6xx, but also for other hardware
> > implementations that use a form of structurized control flow.
> >
> > v2: further cleanup, fixes and documentation
> >
> > Signed-off-by: Christian König <deathsimple at vodafone.de>
> > Reviewed-by: Tom Stellard <thomas.stellard at amd.com>
> > Tested-by: Michel Dänzer <michel.daenzer at amd.com>
>
> [...]
>
> > diff --git a/lib/Target/AMDGPU/AMDGPUStructurizeCFG.cpp b/lib/Target/AMDGPU/AMDGPUStructurizeCFG.cpp
> > new file mode 100644
> > index 0000000..c11c812
> > --- /dev/null
> > +++ b/lib/Target/AMDGPU/AMDGPUStructurizeCFG.cpp
> > @@ -0,0 +1,732 @@
> > [...]
> > + Function *Function;
>
> I just noticed this line fails to build using g++ instead of clang++:
>
> /home/daenzer/src/llvm-git/llvm/lib/Target/AMDGPU/AMDGPUStructurizeCFG.cpp:103:13: error: declaration of ‘llvm::Function* {anonymous}::AMDGPUStructurizeCFG::Function’ [-fpermissive]
> In file included from /home/daenzer/src/llvm-git/llvm/include/llvm/Module.h:18:0,
> from /home/daenzer/src/llvm-git/llvm/lib/Target/AMDGPU/AMDGPUStructurizeCFG.cpp:19:
> /home/daenzer/src/llvm-git/llvm/include/llvm/Function.h:70:7: error: changes meaning of ‘Function’ from ‘class llvm::Function’ [-fpermissive]
> make[3]: *** [/home/daenzer/src/llvm-git/llvm/build-i386/lib/Target/AMDGPU/Release+Debug+Asserts/AMDGPUStructurizeCFG.o] Error 1
>
> Changing the member name to e.g. 'Func' fixes this.
>
I'll fix this when I push to my llvm repo.
>
> Other than that, you can add my Tested-by: for the new patches as well.
>
>
Also for the series:
Reviewed-by: Tom Stellard <thomas.stellard at amd.com>
> --
> Earthling Michel Dänzer | http://www.amd.com
> Libre software enthusiast | Debian, X and DRI developer
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list