@@ -787,19 +787,6 @@ static int zend_jit_trace_add_ret_phis(zend_jit_trace_rec *trace_buffer, uint32_
787
787
return ssa_vars_count ;
788
788
}
789
789
790
- static bool zend_jit_trace_is_false_loop (const zend_op_array * op_array , const zend_ssa * ssa , const zend_op * * tssa_opcodes , zend_ssa * tssa )
791
- {
792
- uint32_t b ;
793
- zend_basic_block * bb ;
794
-
795
- ZEND_ASSERT (tssa -> cfg .blocks_count == 2 );
796
- ZEND_ASSERT (tssa -> cfg .blocks [1 ].len > 0 );
797
-
798
- b = ssa -> cfg .map [tssa_opcodes [0 ] - op_array -> opcodes ];
799
- bb = ssa -> cfg .blocks + ssa -> cfg .map [tssa_opcodes [tssa -> cfg .blocks [1 ].len - 1 ] - op_array -> opcodes ];
800
- return bb -> loop_header != b ;
801
- }
802
-
803
790
static int zend_jit_trace_copy_ssa_var_info (const zend_op_array * op_array , const zend_ssa * ssa , const zend_op * * tssa_opcodes , zend_ssa * tssa , int ssa_var )
804
791
{
805
792
int var , use , def , src ;
@@ -809,8 +796,7 @@ static int zend_jit_trace_copy_ssa_var_info(const zend_op_array *op_array, const
809
796
uint32_t b = ssa -> cfg .map [tssa_opcodes [0 ] - op_array -> opcodes ];
810
797
zend_basic_block * bb = ssa -> cfg .blocks + b ;
811
798
812
- if ((bb -> flags & ZEND_BB_LOOP_HEADER )
813
- && !zend_jit_trace_is_false_loop (op_array , ssa , tssa_opcodes , tssa )) {
799
+ if (bb -> flags & ZEND_BB_LOOP_HEADER ) {
814
800
zend_ssa_phi * phi = ssa -> blocks [b ].phis ;
815
801
zend_ssa_phi * pi = NULL ;
816
802
@@ -1405,8 +1391,7 @@ static zend_ssa *zend_jit_trace_build_tssa(zend_jit_trace_rec *trace_buffer, uin
1405
1391
tssa -> cfg .blocks [0 ].successors = tssa -> cfg .blocks [0 ].successors_storage ;
1406
1392
tssa -> cfg .blocks [0 ].successors [0 ] = 1 ;
1407
1393
1408
- tssa -> cfg .blocks [1 ].flags = ZEND_BB_FOLLOW |ZEND_BB_TARGET |ZEND_BB_LOOP_HEADER |ZEND_BB_REACHABLE ;
1409
- tssa -> cfg .blocks [1 ].len = ssa_ops_count ;
1394
+ tssa -> cfg .blocks [0 ].flags = ZEND_BB_FOLLOW |ZEND_BB_TARGET |ZEND_BB_LOOP_HEADER |ZEND_BB_REACHABLE ;
1410
1395
tssa -> cfg .blocks [1 ].successors_count = 1 ;
1411
1396
tssa -> cfg .blocks [1 ].predecessors_count = 2 ;
1412
1397
tssa -> cfg .blocks [1 ].successors = tssa -> cfg .blocks [1 ].successors_storage ;
@@ -1416,7 +1401,6 @@ static zend_ssa *zend_jit_trace_build_tssa(zend_jit_trace_rec *trace_buffer, uin
1416
1401
tssa -> cfg .edges_count = 0 ;
1417
1402
1418
1403
tssa -> cfg .blocks [0 ].flags = ZEND_BB_START |ZEND_BB_EXIT |ZEND_BB_REACHABLE ;
1419
- tssa -> cfg .blocks [0 ].len = ssa_ops_count ;
1420
1404
tssa -> cfg .blocks [0 ].successors_count = 0 ;
1421
1405
tssa -> cfg .blocks [0 ].predecessors_count = 0 ;
1422
1406
}
0 commit comments