Luo Xionghu Best Regards
-----Original Message----- From: Song, Ruiling Sent: Thursday, June 25, 2015 10:37 AM To: Luo, Xionghu; [email protected] Cc: Luo, Xionghu Subject: RE: [Beignet] [PATCH] don't merge serial blocks with barrier. > -----Original Message----- > From: Beignet [mailto:[email protected]] On Behalf > Of [email protected] > Sent: Wednesday, June 24, 2015 4:12 PM > To: [email protected] > Cc: Luo, Xionghu > Subject: [Beignet] [PATCH] don't merge serial blocks with barrier. > > From: Luo Xionghu <[email protected]> > > 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 <[email protected]> > --- > 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? >>>Considering below situation: B is the successor is A, and B has a backage to >>>A, if B has a barrier, this A and B shouldn't be merged to a self loop >>>block, so filter it out to avoid wrong match. > -- > 1.9.1 > > _______________________________________________ > Beignet mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/beignet _______________________________________________ Beignet mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/beignet
