@@ -91,7 +91,7 @@ static bool needs_pi(const zend_op_array *op_array, const zend_dfg *dfg, const z
9191/* }}} */
9292
9393static zend_ssa_phi * add_pi (
94- zend_arena * * arena , const zend_op_array * op_array , zend_dfg * dfg , zend_ssa * ssa ,
94+ zend_arena * * arena , const zend_op_array * op_array , const zend_dfg * dfg , const zend_ssa * ssa ,
9595 int from , int to , int var ) /* {{{ */
9696{
9797 zend_ssa_phi * phi ;
@@ -241,8 +241,8 @@ static int find_adjusted_tmp_var(const zend_op_array *op_array, uint32_t build_f
241241 */
242242static void place_essa_pis (
243243 zend_arena * * arena , const zend_script * script , const zend_op_array * op_array ,
244- uint32_t build_flags , zend_ssa * ssa , zend_dfg * dfg ) /* {{{ */ {
245- zend_basic_block * blocks = ssa -> cfg .blocks ;
244+ uint32_t build_flags , const zend_ssa * ssa , const zend_dfg * dfg ) /* {{{ */ {
245+ const zend_basic_block * blocks = ssa -> cfg .blocks ;
246246 int j , blocks_count = ssa -> cfg .blocks_count ;
247247 for (j = 0 ; j < blocks_count ; j ++ ) {
248248 zend_ssa_phi * pi ;
@@ -819,12 +819,12 @@ ZEND_API int zend_ssa_rename_op(const zend_op_array *op_array, const zend_op *op
819819
820820static void zend_ssa_rename_in_block (const zend_op_array * op_array , uint32_t build_flags , zend_ssa * ssa , int * var , int n ) /* {{{ */
821821{
822- zend_basic_block * blocks = ssa -> cfg .blocks ;
823- zend_ssa_block * ssa_blocks = ssa -> blocks ;
822+ const zend_basic_block * blocks = ssa -> cfg .blocks ;
823+ const zend_ssa_block * ssa_blocks = ssa -> blocks ;
824824 zend_ssa_op * ssa_ops = ssa -> ops ;
825825 int ssa_vars_count = ssa -> vars_count ;
826826 int i , j ;
827- zend_op * opline , * end ;
827+ const zend_op * opline , * end ;
828828
829829 if (ssa_blocks [n ].phis ) {
830830 zend_ssa_phi * phi = ssa_blocks [n ].phis ;
@@ -849,7 +849,7 @@ static void zend_ssa_rename_in_block(const zend_op_array *op_array, uint32_t bui
849849 }
850850 }
851851
852- zend_ssa_op * fe_fetch_ssa_op = blocks [n ].len != 0
852+ const zend_ssa_op * fe_fetch_ssa_op = blocks [n ].len != 0
853853 && ((end - 1 )-> opcode == ZEND_FE_FETCH_R || (end - 1 )-> opcode == ZEND_FE_FETCH_RW )
854854 && (end - 1 )-> op2_type == IS_CV
855855 ? & ssa_ops [blocks [n ].start + blocks [n ].len - 1 ] : NULL ;
@@ -995,7 +995,7 @@ backtrack:;
995995
996996ZEND_API zend_result zend_build_ssa (zend_arena * * arena , const zend_script * script , const zend_op_array * op_array , uint32_t build_flags , zend_ssa * ssa ) /* {{{ */
997997{
998- zend_basic_block * blocks = ssa -> cfg .blocks ;
998+ const zend_basic_block * blocks = ssa -> cfg .blocks ;
999999 zend_ssa_block * ssa_blocks ;
10001000 int blocks_count = ssa -> cfg .blocks_count ;
10011001 uint32_t set_size ;
@@ -1259,7 +1259,7 @@ ZEND_API void zend_ssa_compute_use_def_chains(zend_arena **arena, const zend_op_
12591259}
12601260/* }}} */
12611261
1262- void zend_ssa_unlink_use_chain (zend_ssa * ssa , int op , int var ) /* {{{ */
1262+ void zend_ssa_unlink_use_chain (const zend_ssa * ssa , int op , int var ) /* {{{ */
12631263{
12641264 if (ssa -> vars [var ].use_chain == op ) {
12651265 ssa -> vars [var ].use_chain = zend_ssa_next_use (ssa -> ops , var , op );
@@ -1298,7 +1298,7 @@ void zend_ssa_unlink_use_chain(zend_ssa *ssa, int op, int var) /* {{{ */
12981298}
12991299/* }}} */
13001300
1301- void zend_ssa_replace_use_chain (zend_ssa * ssa , int op , int new_op , int var ) /* {{{ */
1301+ void zend_ssa_replace_use_chain (const zend_ssa * ssa , int op , int new_op , int var ) /* {{{ */
13021302{
13031303 if (ssa -> vars [var ].use_chain == op ) {
13041304 ssa -> vars [var ].use_chain = new_op ;
@@ -1338,7 +1338,7 @@ void zend_ssa_replace_use_chain(zend_ssa *ssa, int op, int new_op, int var) /* {
13381338}
13391339/* }}} */
13401340
1341- void zend_ssa_remove_instr (zend_ssa * ssa , zend_op * opline , zend_ssa_op * ssa_op ) /* {{{ */
1341+ void zend_ssa_remove_instr (const zend_ssa * ssa , zend_op * opline , zend_ssa_op * ssa_op ) /* {{{ */
13421342{
13431343 if (ssa_op -> result_use >= 0 ) {
13441344 zend_ssa_unlink_use_chain (ssa , ssa_op - ssa -> ops , ssa_op -> result_use );
@@ -1369,7 +1369,7 @@ void zend_ssa_remove_instr(zend_ssa *ssa, zend_op *opline, zend_ssa_op *ssa_op)
13691369}
13701370/* }}} */
13711371
1372- static inline zend_ssa_phi * * zend_ssa_next_use_phi_ptr (zend_ssa * ssa , int var , zend_ssa_phi * p ) /* {{{ */
1372+ static inline zend_ssa_phi * * zend_ssa_next_use_phi_ptr (const zend_ssa * ssa , int var , zend_ssa_phi * p ) /* {{{ */
13731373{
13741374 if (p -> pi >= 0 ) {
13751375 return & p -> use_chains [0 ];
@@ -1388,7 +1388,7 @@ static inline zend_ssa_phi **zend_ssa_next_use_phi_ptr(zend_ssa *ssa, int var, z
13881388
13891389/* May be called even if source is not used in the phi (useful when removing uses in a phi
13901390 * with multiple identical operands) */
1391- static inline void zend_ssa_remove_use_of_phi_source (zend_ssa * ssa , zend_ssa_phi * phi , int source , zend_ssa_phi * next_use_phi ) /* {{{ */
1391+ static inline void zend_ssa_remove_use_of_phi_source (const zend_ssa * ssa , const zend_ssa_phi * phi , int source , zend_ssa_phi * next_use_phi ) /* {{{ */
13921392{
13931393 zend_ssa_phi * * cur = & ssa -> vars [source ].phi_use_chain ;
13941394 while (* cur && * cur != phi ) {
@@ -1400,7 +1400,7 @@ static inline void zend_ssa_remove_use_of_phi_source(zend_ssa *ssa, zend_ssa_phi
14001400}
14011401/* }}} */
14021402
1403- static void zend_ssa_remove_uses_of_phi_sources (zend_ssa * ssa , zend_ssa_phi * phi ) /* {{{ */
1403+ static void zend_ssa_remove_uses_of_phi_sources (const zend_ssa * ssa , zend_ssa_phi * phi ) /* {{{ */
14041404{
14051405 int source ;
14061406 FOREACH_PHI_SOURCE (phi , source ) {
@@ -1409,7 +1409,7 @@ static void zend_ssa_remove_uses_of_phi_sources(zend_ssa *ssa, zend_ssa_phi *phi
14091409}
14101410/* }}} */
14111411
1412- static void zend_ssa_remove_phi_from_block (zend_ssa * ssa , zend_ssa_phi * phi ) /* {{{ */
1412+ static void zend_ssa_remove_phi_from_block (const zend_ssa * ssa , const zend_ssa_phi * phi ) /* {{{ */
14131413{
14141414 zend_ssa_block * block = & ssa -> blocks [phi -> block ];
14151415 zend_ssa_phi * * cur = & block -> phis ;
@@ -1438,7 +1438,7 @@ void zend_ssa_remove_defs_of_instr(zend_ssa *ssa, zend_ssa_op *ssa_op) /* {{{ */
14381438}
14391439/* }}} */
14401440
1441- static inline void zend_ssa_remove_phi_source (zend_ssa * ssa , zend_ssa_phi * phi , int pred_offset , int predecessors_count ) /* {{{ */
1441+ static inline void zend_ssa_remove_phi_source (const zend_ssa * ssa , const zend_ssa_phi * phi , int pred_offset , int predecessors_count ) /* {{{ */
14421442{
14431443 int j , var_num = phi -> sources [pred_offset ];
14441444 zend_ssa_phi * next_phi = phi -> use_chains [pred_offset ];
@@ -1467,7 +1467,7 @@ static inline void zend_ssa_remove_phi_source(zend_ssa *ssa, zend_ssa_phi *phi,
14671467}
14681468/* }}} */
14691469
1470- void zend_ssa_remove_phi (zend_ssa * ssa , zend_ssa_phi * phi ) /* {{{ */
1470+ void zend_ssa_remove_phi (const zend_ssa * ssa , zend_ssa_phi * phi ) /* {{{ */
14711471{
14721472 ZEND_ASSERT (phi -> ssa_var >= 0 );
14731473 ZEND_ASSERT (ssa -> vars [phi -> ssa_var ].use_chain < 0
@@ -1479,7 +1479,7 @@ void zend_ssa_remove_phi(zend_ssa *ssa, zend_ssa_phi *phi) /* {{{ */
14791479}
14801480/* }}} */
14811481
1482- void zend_ssa_remove_uses_of_var (zend_ssa * ssa , int var_num ) /* {{{ */
1482+ void zend_ssa_remove_uses_of_var (const zend_ssa * ssa , int var_num ) /* {{{ */
14831483{
14841484 zend_ssa_var * var = & ssa -> vars [var_num ];
14851485 zend_ssa_phi * phi ;
@@ -1515,7 +1515,7 @@ void zend_ssa_remove_uses_of_var(zend_ssa *ssa, int var_num) /* {{{ */
15151515void zend_ssa_remove_predecessor (zend_ssa * ssa , int from , int to ) /* {{{ */
15161516{
15171517 zend_basic_block * next_block = & ssa -> cfg .blocks [to ];
1518- zend_ssa_block * next_ssa_block = & ssa -> blocks [to ];
1518+ const zend_ssa_block * next_ssa_block = & ssa -> blocks [to ];
15191519 zend_ssa_phi * phi ;
15201520 int j ;
15211521
@@ -1558,10 +1558,10 @@ void zend_ssa_remove_predecessor(zend_ssa *ssa, int from, int to) /* {{{ */
15581558}
15591559/* }}} */
15601560
1561- void zend_ssa_remove_block (zend_op_array * op_array , zend_ssa * ssa , int i ) /* {{{ */
1561+ void zend_ssa_remove_block (const zend_op_array * op_array , zend_ssa * ssa , int i ) /* {{{ */
15621562{
15631563 zend_basic_block * block = & ssa -> cfg .blocks [i ];
1564- zend_ssa_block * ssa_block = & ssa -> blocks [i ];
1564+ const zend_ssa_block * ssa_block = & ssa -> blocks [i ];
15651565 zend_ssa_phi * phi ;
15661566 int j ;
15671567
0 commit comments