[Beignet] [PATCH] don't merge serial blocks with barrier.
Song, Ruiling
ruiling.song at intel.com
Wed Jun 24 19:37:29 PDT 2015
> -----Original Message-----
> From: Beignet [mailto:beignet-bounces at lists.freedesktop.org] On Behalf Of
> xionghu.luo at intel.com
> Sent: Wednesday, June 24, 2015 4:12 PM
> To: beignet at lists.freedesktop.org
> Cc: Luo, Xionghu
> Subject: [Beignet] [PATCH] don't merge serial blocks with barrier.
>
> From: Luo Xionghu <xionghu.luo at intel.com>
>
> this could fix the piglit and opencv fail on IVB_x86 platform.
> 1) opencv_test_core/OCL_Arithm/CountNonZero
> 2) opencv_test_core/OCL_Arithm/MeanStdDev
> 3) piglit case program/execute/atomic_cmpxchg-local.
>
> Signed-off-by: Luo Xionghu <xionghu.luo at intel.com>
> ---
> backend/src/ir/structurizer.cpp | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/backend/src/ir/structurizer.cpp b/backend/src/ir/structurizer.cpp
> index cb8e11b..10faeb6 100644
> --- a/backend/src/ir/structurizer.cpp
> +++ b/backend/src/ir/structurizer.cpp
> @@ -738,7 +738,7 @@ namespace ir {
> return 0;
>
> Block *childBlk = *block->succ_begin();
> - if (childBlk->pred_size() != 1 )
> + if (childBlk->pred_size() != 1 || childBlk->hasBarrier() )
> return 0;
>
> BlockList serialBBs;//childBBs
Why barrier have conflict with serial blocks?
> --
> 1.9.1
>
> _______________________________________________
> Beignet mailing list
> Beignet at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/beignet
More information about the Beignet
mailing list