Re: [Mesa-dev] [PATCH 0/9] move all RADV related shader code outside of ac/nir
Thanks, 1-8 are Reviewed-by: Bas NieuwenhuizenPatch 9 is Acked-by: Bas Nieuwenhuizen On Mon, Mar 12, 2018 at 3:52 PM, Samuel Pitoiset wrote: > > > On 03/12/2018 03:25 PM, Samuel Pitoiset wrote: >> >> >> >> On 03/12/2018 03:18 PM, Bas Nieuwenhuizen wrote: >>> >>> On Mon, Mar 12, 2018 at 2:50 PM, Samuel Pitoiset >>> wrote: On 03/12/2018 02:48 PM, Bas Nieuwenhuizen wrote: > > > On Mon, Mar 12, 2018 at 2:48 PM, Samuel Pitoiset > wrote: >> >> >> >> >> On 03/12/2018 02:24 PM, Bas Nieuwenhuizen wrote: >>> >>> >>> >>> Hi Samuel, >>> >>> Can we put the code into a separate file, instead of into >>> radv_shader.c? >> >> >> >> >> If you want yes, what filename? > > > > radv_nir_to_llvm.c ? Or is that too confusing with the ac one? Or radv_shader_nir.c? radv_shader_context.c ? >>> >>> >>> well, I expect to be getting more nir passes that are radv specific so >>> the first one is IMO not such a good fit. And I would not be able to >>> tell what is supposed to be in the second one from the name? >> >> >> I was just suggesting something else, radv_nir_to_llvm.c looks good to me. >> >> I will update. > > > Updated. > > https://cgit.freedesktop.org/~hakzsam/mesa/commit/?h=move_radv_code=ff6b43edea80865b8effd905496206df584ed0f7 > > >> >>> > >> >>> >>> Also some stuff can be moved out of ac_nir_to_llvm.h I guess? (AFAIU >>> radeonsi does not use all the shader key & info structs there?) >> >> >> >> >> Sure, there is more to do but I think it's a good start. >> >> >>> >>> - Bas >>> >>> On Mon, Mar 12, 2018 at 12:56 PM, Samuel Pitoiset >>> wrote: Hi folks, This series follows the previous ones that cleaned up the ac/nir codepath. Now, all the RADV shader code is located in radv_shader.c, this might avoid confusions when the ac/nir tag is used. The last patch is probably too big for the ML, a branch can be found here: https://cgit.freedesktop.org/~hakzsam/mesa/log/?h=move_radv_code Though, expect some rebase conflicts if you have pending work and if this series lands before. Please review, Thanks! Samuel Pitoiset (9): ac/nir: move ac_build_alloca() to ac_llvm_build.c ac/nir: move cast_ptr() to ac_llvm_build.c ac/nir: move trim_vector to ac_llvm_build.c ac/nir: move unpack_param() to ac_llvm_build.c ac/nir: change prototype of handle_shader_output_decl() ac/nir: make handle_shader_output_decl() non-static ac/nir: move radeon_llvm_reg_index_soa() to ac_nir_to_llvm.h ac/nir: make emit_barrier() non-static ac/nir: move all RADV related code to radv_shader.c src/amd/common/ac_llvm_build.c | 76 + src/amd/common/ac_llvm_build.h | 14 + src/amd/common/ac_nir_to_llvm.c | 9736 +-- src/amd/common/ac_nir_to_llvm.h | 30 +- src/amd/vulkan/radv_shader.c| 3418 ++ 5 files changed, 6646 insertions(+), 6628 deletions(-) -- 2.16.2 ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 0/9] move all RADV related shader code outside of ac/nir
On 03/12/2018 03:25 PM, Samuel Pitoiset wrote: On 03/12/2018 03:18 PM, Bas Nieuwenhuizen wrote: On Mon, Mar 12, 2018 at 2:50 PM, Samuel Pitoisetwrote: On 03/12/2018 02:48 PM, Bas Nieuwenhuizen wrote: On Mon, Mar 12, 2018 at 2:48 PM, Samuel Pitoiset wrote: On 03/12/2018 02:24 PM, Bas Nieuwenhuizen wrote: Hi Samuel, Can we put the code into a separate file, instead of into radv_shader.c? If you want yes, what filename? radv_nir_to_llvm.c ? Or is that too confusing with the ac one? Or radv_shader_nir.c? radv_shader_context.c ? well, I expect to be getting more nir passes that are radv specific so the first one is IMO not such a good fit. And I would not be able to tell what is supposed to be in the second one from the name? I was just suggesting something else, radv_nir_to_llvm.c looks good to me. I will update. Updated. https://cgit.freedesktop.org/~hakzsam/mesa/commit/?h=move_radv_code=ff6b43edea80865b8effd905496206df584ed0f7 Also some stuff can be moved out of ac_nir_to_llvm.h I guess? (AFAIU radeonsi does not use all the shader key & info structs there?) Sure, there is more to do but I think it's a good start. - Bas On Mon, Mar 12, 2018 at 12:56 PM, Samuel Pitoiset wrote: Hi folks, This series follows the previous ones that cleaned up the ac/nir codepath. Now, all the RADV shader code is located in radv_shader.c, this might avoid confusions when the ac/nir tag is used. The last patch is probably too big for the ML, a branch can be found here: https://cgit.freedesktop.org/~hakzsam/mesa/log/?h=move_radv_code Though, expect some rebase conflicts if you have pending work and if this series lands before. Please review, Thanks! Samuel Pitoiset (9): ac/nir: move ac_build_alloca() to ac_llvm_build.c ac/nir: move cast_ptr() to ac_llvm_build.c ac/nir: move trim_vector to ac_llvm_build.c ac/nir: move unpack_param() to ac_llvm_build.c ac/nir: change prototype of handle_shader_output_decl() ac/nir: make handle_shader_output_decl() non-static ac/nir: move radeon_llvm_reg_index_soa() to ac_nir_to_llvm.h ac/nir: make emit_barrier() non-static ac/nir: move all RADV related code to radv_shader.c src/amd/common/ac_llvm_build.c | 76 + src/amd/common/ac_llvm_build.h | 14 + src/amd/common/ac_nir_to_llvm.c | 9736 +-- src/amd/common/ac_nir_to_llvm.h | 30 +- src/amd/vulkan/radv_shader.c | 3418 ++ 5 files changed, 6646 insertions(+), 6628 deletions(-) -- 2.16.2 ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 0/9] move all RADV related shader code outside of ac/nir
On 03/12/2018 03:18 PM, Bas Nieuwenhuizen wrote: On Mon, Mar 12, 2018 at 2:50 PM, Samuel Pitoisetwrote: On 03/12/2018 02:48 PM, Bas Nieuwenhuizen wrote: On Mon, Mar 12, 2018 at 2:48 PM, Samuel Pitoiset wrote: On 03/12/2018 02:24 PM, Bas Nieuwenhuizen wrote: Hi Samuel, Can we put the code into a separate file, instead of into radv_shader.c? If you want yes, what filename? radv_nir_to_llvm.c ? Or is that too confusing with the ac one? Or radv_shader_nir.c? radv_shader_context.c ? well, I expect to be getting more nir passes that are radv specific so the first one is IMO not such a good fit. And I would not be able to tell what is supposed to be in the second one from the name? I was just suggesting something else, radv_nir_to_llvm.c looks good to me. I will update. Also some stuff can be moved out of ac_nir_to_llvm.h I guess? (AFAIU radeonsi does not use all the shader key & info structs there?) Sure, there is more to do but I think it's a good start. - Bas On Mon, Mar 12, 2018 at 12:56 PM, Samuel Pitoiset wrote: Hi folks, This series follows the previous ones that cleaned up the ac/nir codepath. Now, all the RADV shader code is located in radv_shader.c, this might avoid confusions when the ac/nir tag is used. The last patch is probably too big for the ML, a branch can be found here: https://cgit.freedesktop.org/~hakzsam/mesa/log/?h=move_radv_code Though, expect some rebase conflicts if you have pending work and if this series lands before. Please review, Thanks! Samuel Pitoiset (9): ac/nir: move ac_build_alloca() to ac_llvm_build.c ac/nir: move cast_ptr() to ac_llvm_build.c ac/nir: move trim_vector to ac_llvm_build.c ac/nir: move unpack_param() to ac_llvm_build.c ac/nir: change prototype of handle_shader_output_decl() ac/nir: make handle_shader_output_decl() non-static ac/nir: move radeon_llvm_reg_index_soa() to ac_nir_to_llvm.h ac/nir: make emit_barrier() non-static ac/nir: move all RADV related code to radv_shader.c src/amd/common/ac_llvm_build.c | 76 + src/amd/common/ac_llvm_build.h | 14 + src/amd/common/ac_nir_to_llvm.c | 9736 +-- src/amd/common/ac_nir_to_llvm.h | 30 +- src/amd/vulkan/radv_shader.c| 3418 ++ 5 files changed, 6646 insertions(+), 6628 deletions(-) -- 2.16.2 ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 0/9] move all RADV related shader code outside of ac/nir
On Mon, Mar 12, 2018 at 2:50 PM, Samuel Pitoisetwrote: > > > On 03/12/2018 02:48 PM, Bas Nieuwenhuizen wrote: >> >> On Mon, Mar 12, 2018 at 2:48 PM, Samuel Pitoiset >> wrote: >>> >>> >>> >>> On 03/12/2018 02:24 PM, Bas Nieuwenhuizen wrote: Hi Samuel, Can we put the code into a separate file, instead of into radv_shader.c? >>> >>> >>> >>> If you want yes, what filename? >> >> >> radv_nir_to_llvm.c ? Or is that too confusing with the ac one? > > > Or radv_shader_nir.c? radv_shader_context.c ? well, I expect to be getting more nir passes that are radv specific so the first one is IMO not such a good fit. And I would not be able to tell what is supposed to be in the second one from the name? > > >> >>> Also some stuff can be moved out of ac_nir_to_llvm.h I guess? (AFAIU radeonsi does not use all the shader key & info structs there?) >>> >>> >>> >>> Sure, there is more to do but I think it's a good start. >>> >>> - Bas On Mon, Mar 12, 2018 at 12:56 PM, Samuel Pitoiset wrote: > > > Hi folks, > > This series follows the previous ones that cleaned up the ac/nir > codepath. Now, all the RADV shader code is located in radv_shader.c, > this might avoid confusions when the ac/nir tag is used. The last patch > is probably too big for the ML, a branch can be found here: > > https://cgit.freedesktop.org/~hakzsam/mesa/log/?h=move_radv_code > > Though, expect some rebase conflicts if you have pending work and > if this series lands before. > > Please review, > Thanks! > > Samuel Pitoiset (9): > ac/nir: move ac_build_alloca() to ac_llvm_build.c > ac/nir: move cast_ptr() to ac_llvm_build.c > ac/nir: move trim_vector to ac_llvm_build.c > ac/nir: move unpack_param() to ac_llvm_build.c > ac/nir: change prototype of handle_shader_output_decl() > ac/nir: make handle_shader_output_decl() non-static > ac/nir: move radeon_llvm_reg_index_soa() to ac_nir_to_llvm.h > ac/nir: make emit_barrier() non-static > ac/nir: move all RADV related code to radv_shader.c > >src/amd/common/ac_llvm_build.c | 76 + >src/amd/common/ac_llvm_build.h | 14 + >src/amd/common/ac_nir_to_llvm.c | 9736 > +-- >src/amd/common/ac_nir_to_llvm.h | 30 +- >src/amd/vulkan/radv_shader.c| 3418 ++ >5 files changed, 6646 insertions(+), 6628 deletions(-) > > -- > 2.16.2 > > ___ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 0/9] move all RADV related shader code outside of ac/nir
On 03/12/2018 02:48 PM, Bas Nieuwenhuizen wrote: On Mon, Mar 12, 2018 at 2:48 PM, Samuel Pitoisetwrote: On 03/12/2018 02:24 PM, Bas Nieuwenhuizen wrote: Hi Samuel, Can we put the code into a separate file, instead of into radv_shader.c? If you want yes, what filename? radv_nir_to_llvm.c ? Or is that too confusing with the ac one? Or radv_shader_nir.c? radv_shader_context.c ? Also some stuff can be moved out of ac_nir_to_llvm.h I guess? (AFAIU radeonsi does not use all the shader key & info structs there?) Sure, there is more to do but I think it's a good start. - Bas On Mon, Mar 12, 2018 at 12:56 PM, Samuel Pitoiset wrote: Hi folks, This series follows the previous ones that cleaned up the ac/nir codepath. Now, all the RADV shader code is located in radv_shader.c, this might avoid confusions when the ac/nir tag is used. The last patch is probably too big for the ML, a branch can be found here: https://cgit.freedesktop.org/~hakzsam/mesa/log/?h=move_radv_code Though, expect some rebase conflicts if you have pending work and if this series lands before. Please review, Thanks! Samuel Pitoiset (9): ac/nir: move ac_build_alloca() to ac_llvm_build.c ac/nir: move cast_ptr() to ac_llvm_build.c ac/nir: move trim_vector to ac_llvm_build.c ac/nir: move unpack_param() to ac_llvm_build.c ac/nir: change prototype of handle_shader_output_decl() ac/nir: make handle_shader_output_decl() non-static ac/nir: move radeon_llvm_reg_index_soa() to ac_nir_to_llvm.h ac/nir: make emit_barrier() non-static ac/nir: move all RADV related code to radv_shader.c src/amd/common/ac_llvm_build.c | 76 + src/amd/common/ac_llvm_build.h | 14 + src/amd/common/ac_nir_to_llvm.c | 9736 +-- src/amd/common/ac_nir_to_llvm.h | 30 +- src/amd/vulkan/radv_shader.c| 3418 ++ 5 files changed, 6646 insertions(+), 6628 deletions(-) -- 2.16.2 ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 0/9] move all RADV related shader code outside of ac/nir
On Mon, Mar 12, 2018 at 2:48 PM, Samuel Pitoisetwrote: > > > On 03/12/2018 02:24 PM, Bas Nieuwenhuizen wrote: >> >> Hi Samuel, >> >> Can we put the code into a separate file, instead of into radv_shader.c? > > > If you want yes, what filename? radv_nir_to_llvm.c ? Or is that too confusing with the ac one? > >> >> Also some stuff can be moved out of ac_nir_to_llvm.h I guess? (AFAIU >> radeonsi does not use all the shader key & info structs there?) > > > Sure, there is more to do but I think it's a good start. > > >> >> - Bas >> >> On Mon, Mar 12, 2018 at 12:56 PM, Samuel Pitoiset >> wrote: >>> >>> Hi folks, >>> >>> This series follows the previous ones that cleaned up the ac/nir >>> codepath. Now, all the RADV shader code is located in radv_shader.c, >>> this might avoid confusions when the ac/nir tag is used. The last patch >>> is probably too big for the ML, a branch can be found here: >>> >>> https://cgit.freedesktop.org/~hakzsam/mesa/log/?h=move_radv_code >>> >>> Though, expect some rebase conflicts if you have pending work and >>> if this series lands before. >>> >>> Please review, >>> Thanks! >>> >>> Samuel Pitoiset (9): >>>ac/nir: move ac_build_alloca() to ac_llvm_build.c >>>ac/nir: move cast_ptr() to ac_llvm_build.c >>>ac/nir: move trim_vector to ac_llvm_build.c >>>ac/nir: move unpack_param() to ac_llvm_build.c >>>ac/nir: change prototype of handle_shader_output_decl() >>>ac/nir: make handle_shader_output_decl() non-static >>>ac/nir: move radeon_llvm_reg_index_soa() to ac_nir_to_llvm.h >>>ac/nir: make emit_barrier() non-static >>>ac/nir: move all RADV related code to radv_shader.c >>> >>> src/amd/common/ac_llvm_build.c | 76 + >>> src/amd/common/ac_llvm_build.h | 14 + >>> src/amd/common/ac_nir_to_llvm.c | 9736 >>> +-- >>> src/amd/common/ac_nir_to_llvm.h | 30 +- >>> src/amd/vulkan/radv_shader.c| 3418 ++ >>> 5 files changed, 6646 insertions(+), 6628 deletions(-) >>> >>> -- >>> 2.16.2 >>> >>> ___ >>> mesa-dev mailing list >>> mesa-dev@lists.freedesktop.org >>> https://lists.freedesktop.org/mailman/listinfo/mesa-dev ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 0/9] move all RADV related shader code outside of ac/nir
On 03/12/2018 02:24 PM, Bas Nieuwenhuizen wrote: Hi Samuel, Can we put the code into a separate file, instead of into radv_shader.c? If you want yes, what filename? Also some stuff can be moved out of ac_nir_to_llvm.h I guess? (AFAIU radeonsi does not use all the shader key & info structs there?) Sure, there is more to do but I think it's a good start. - Bas On Mon, Mar 12, 2018 at 12:56 PM, Samuel Pitoisetwrote: Hi folks, This series follows the previous ones that cleaned up the ac/nir codepath. Now, all the RADV shader code is located in radv_shader.c, this might avoid confusions when the ac/nir tag is used. The last patch is probably too big for the ML, a branch can be found here: https://cgit.freedesktop.org/~hakzsam/mesa/log/?h=move_radv_code Though, expect some rebase conflicts if you have pending work and if this series lands before. Please review, Thanks! Samuel Pitoiset (9): ac/nir: move ac_build_alloca() to ac_llvm_build.c ac/nir: move cast_ptr() to ac_llvm_build.c ac/nir: move trim_vector to ac_llvm_build.c ac/nir: move unpack_param() to ac_llvm_build.c ac/nir: change prototype of handle_shader_output_decl() ac/nir: make handle_shader_output_decl() non-static ac/nir: move radeon_llvm_reg_index_soa() to ac_nir_to_llvm.h ac/nir: make emit_barrier() non-static ac/nir: move all RADV related code to radv_shader.c src/amd/common/ac_llvm_build.c | 76 + src/amd/common/ac_llvm_build.h | 14 + src/amd/common/ac_nir_to_llvm.c | 9736 +-- src/amd/common/ac_nir_to_llvm.h | 30 +- src/amd/vulkan/radv_shader.c| 3418 ++ 5 files changed, 6646 insertions(+), 6628 deletions(-) -- 2.16.2 ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 0/9] move all RADV related shader code outside of ac/nir
Hi Samuel, Can we put the code into a separate file, instead of into radv_shader.c? Also some stuff can be moved out of ac_nir_to_llvm.h I guess? (AFAIU radeonsi does not use all the shader key & info structs there?) - Bas On Mon, Mar 12, 2018 at 12:56 PM, Samuel Pitoisetwrote: > Hi folks, > > This series follows the previous ones that cleaned up the ac/nir > codepath. Now, all the RADV shader code is located in radv_shader.c, > this might avoid confusions when the ac/nir tag is used. The last patch > is probably too big for the ML, a branch can be found here: > > https://cgit.freedesktop.org/~hakzsam/mesa/log/?h=move_radv_code > > Though, expect some rebase conflicts if you have pending work and > if this series lands before. > > Please review, > Thanks! > > Samuel Pitoiset (9): > ac/nir: move ac_build_alloca() to ac_llvm_build.c > ac/nir: move cast_ptr() to ac_llvm_build.c > ac/nir: move trim_vector to ac_llvm_build.c > ac/nir: move unpack_param() to ac_llvm_build.c > ac/nir: change prototype of handle_shader_output_decl() > ac/nir: make handle_shader_output_decl() non-static > ac/nir: move radeon_llvm_reg_index_soa() to ac_nir_to_llvm.h > ac/nir: make emit_barrier() non-static > ac/nir: move all RADV related code to radv_shader.c > > src/amd/common/ac_llvm_build.c | 76 + > src/amd/common/ac_llvm_build.h | 14 + > src/amd/common/ac_nir_to_llvm.c | 9736 > +-- > src/amd/common/ac_nir_to_llvm.h | 30 +- > src/amd/vulkan/radv_shader.c| 3418 ++ > 5 files changed, 6646 insertions(+), 6628 deletions(-) > > -- > 2.16.2 > > ___ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev