From c16ad918ba3cc2d1ccc55c42fbf3c29e97d51f61 Mon Sep 17 00:00:00 2001 From: Daniil Gentili Date: Tue, 28 Nov 2023 20:14:58 +0100 Subject: [PATCH] Change default method of disabling JIT https://wiki.php.net/rfc/jit_config_defaults Closes GH-12678 --- UPGRADING | 10 ++++++++++ benchmark/benchmark.php | 3 ++- ext/opcache/jit/zend_jit.h | 2 +- ext/opcache/tests/bug81272.phpt | 1 - ext/opcache/tests/jit/add_001.phpt | 1 - ext/opcache/tests/jit/add_002.phpt | 1 - ext/opcache/tests/jit/add_003.phpt | 1 - ext/opcache/tests/jit/add_004.phpt | 1 - ext/opcache/tests/jit/add_005.phpt | 1 - ext/opcache/tests/jit/add_006.phpt | 1 - ext/opcache/tests/jit/add_007.phpt | 1 - ext/opcache/tests/jit/add_008.phpt | 1 - ext/opcache/tests/jit/add_009.phpt | 1 - ext/opcache/tests/jit/add_010.phpt | 1 - ext/opcache/tests/jit/add_011.phpt | 1 - ext/opcache/tests/jit/add_012.phpt | 1 - ext/opcache/tests/jit/add_013.phpt | 1 - ext/opcache/tests/jit/add_014.phpt | 1 - ext/opcache/tests/jit/and_001.phpt | 1 - ext/opcache/tests/jit/and_002.phpt | 1 - ext/opcache/tests/jit/array_elem_002.phpt | 1 - ext/opcache/tests/jit/assign_001.phpt | 1 - ext/opcache/tests/jit/assign_002.phpt | 1 - ext/opcache/tests/jit/assign_003.phpt | 1 - ext/opcache/tests/jit/assign_004.phpt | 1 - ext/opcache/tests/jit/assign_005.phpt | 1 - ext/opcache/tests/jit/assign_006.phpt | 1 - ext/opcache/tests/jit/assign_007.phpt | 1 - ext/opcache/tests/jit/assign_008.phpt | 1 - ext/opcache/tests/jit/assign_009.phpt | 1 - ext/opcache/tests/jit/assign_010.phpt | 1 - ext/opcache/tests/jit/assign_011.phpt | 1 - ext/opcache/tests/jit/assign_012.phpt | 1 - ext/opcache/tests/jit/assign_013.phpt | 1 - ext/opcache/tests/jit/assign_014.phpt | 1 - ext/opcache/tests/jit/assign_015.phpt | 1 - ext/opcache/tests/jit/assign_016.phpt | 1 - ext/opcache/tests/jit/assign_017.phpt | 1 - ext/opcache/tests/jit/assign_018.phpt | 1 - ext/opcache/tests/jit/assign_019.phpt | 1 - ext/opcache/tests/jit/assign_020.phpt | 1 - ext/opcache/tests/jit/assign_021.phpt | 1 - ext/opcache/tests/jit/assign_022.phpt | 1 - ext/opcache/tests/jit/assign_023.phpt | 1 - ext/opcache/tests/jit/assign_024.phpt | 1 - ext/opcache/tests/jit/assign_025.phpt | 1 - ext/opcache/tests/jit/assign_026.phpt | 1 - ext/opcache/tests/jit/assign_027.phpt | 1 - ext/opcache/tests/jit/assign_028.phpt | 1 - ext/opcache/tests/jit/assign_029.phpt | 1 - ext/opcache/tests/jit/assign_030.phpt | 1 - ext/opcache/tests/jit/assign_031.phpt | 1 - ext/opcache/tests/jit/assign_032.phpt | 1 - ext/opcache/tests/jit/assign_033.phpt | 1 - ext/opcache/tests/jit/assign_034.phpt | 1 - ext/opcache/tests/jit/assign_035.phpt | 1 - ext/opcache/tests/jit/assign_036.phpt | 1 - ext/opcache/tests/jit/assign_037.phpt | 1 - ext/opcache/tests/jit/assign_038.phpt | 1 - ext/opcache/tests/jit/assign_039.phpt | 1 - ext/opcache/tests/jit/assign_040.phpt | 1 - ext/opcache/tests/jit/assign_041.phpt | 1 - ext/opcache/tests/jit/assign_042.phpt | 1 - ext/opcache/tests/jit/assign_043.phpt | 1 - ext/opcache/tests/jit/assign_044.phpt | 1 - ext/opcache/tests/jit/assign_045.phpt | 1 - ext/opcache/tests/jit/assign_046.phpt | 1 - ext/opcache/tests/jit/assign_047.phpt | 1 - ext/opcache/tests/jit/assign_048.phpt | 1 - ext/opcache/tests/jit/assign_049.phpt | 1 - ext/opcache/tests/jit/assign_050.phpt | 1 - ext/opcache/tests/jit/assign_051.phpt | 1 - ext/opcache/tests/jit/assign_052.phpt | 1 - ext/opcache/tests/jit/assign_053.phpt | 1 - ext/opcache/tests/jit/assign_054.phpt | 1 - ext/opcache/tests/jit/assign_055.phpt | 1 - ext/opcache/tests/jit/assign_056.phpt | 1 - ext/opcache/tests/jit/assign_dim_002.phpt | 1 - ext/opcache/tests/jit/assign_dim_003.phpt | 1 - ext/opcache/tests/jit/assign_dim_004.phpt | 1 - ext/opcache/tests/jit/assign_dim_005.phpt | 1 - ext/opcache/tests/jit/assign_dim_006.phpt | 1 - ext/opcache/tests/jit/assign_dim_007.phpt | 1 - ext/opcache/tests/jit/assign_dim_008.phpt | 1 - ext/opcache/tests/jit/assign_dim_009.phpt | 1 - ext/opcache/tests/jit/assign_dim_010.phpt | 1 - ext/opcache/tests/jit/assign_dim_011.phpt | 1 - ext/opcache/tests/jit/assign_dim_012.phpt | 1 - ext/opcache/tests/jit/assign_dim_013.phpt | 1 - ext/opcache/tests/jit/assign_dim_014.phpt | 1 - ext/opcache/tests/jit/assign_dim_015.phpt | 1 - ext/opcache/tests/jit/assign_dim_016.phpt | 1 - ext/opcache/tests/jit/assign_dim_017.phpt | 1 - ext/opcache/tests/jit/assign_dim_op_001.phpt | 1 - ext/opcache/tests/jit/assign_dim_op_002.phpt | 1 - ext/opcache/tests/jit/assign_dim_op_003.phpt | 1 - ext/opcache/tests/jit/assign_dim_op_004.phpt | 1 - ext/opcache/tests/jit/assign_dim_op_005.phpt | 1 - ext/opcache/tests/jit/assign_dim_op_006.phpt | 1 - ext/opcache/tests/jit/assign_dim_op_007.phpt | 1 - ext/opcache/tests/jit/assign_dim_undef_exception.phpt | 1 - ext/opcache/tests/jit/assign_obj_001.phpt | 1 - ext/opcache/tests/jit/assign_obj_002.phpt | 1 - ext/opcache/tests/jit/assign_obj_003.phpt | 1 - ext/opcache/tests/jit/assign_obj_004.phpt | 1 - ext/opcache/tests/jit/assign_obj_on_null.phpt | 1 - ext/opcache/tests/jit/assign_obj_op_001.phpt | 1 - ext/opcache/tests/jit/assign_obj_op_002.phpt | 1 - ext/opcache/tests/jit/assign_obj_op_003.phpt | 1 - ext/opcache/tests/jit/assign_obj_ref_001.phpt | 1 - ext/opcache/tests/jit/assign_op_001.phpt | 1 - ext/opcache/tests/jit/assign_op_002.phpt | 1 - ext/opcache/tests/jit/assign_op_003.phpt | 1 - ext/opcache/tests/jit/assign_op_004.phpt | 1 - ext/opcache/tests/jit/assign_op_005.phpt | 1 - ext/opcache/tests/jit/assign_op_006.phpt | 1 - ext/opcache/tests/jit/assign_op_007.phpt | 1 - ext/opcache/tests/jit/assign_op_008.phpt | 1 - ext/opcache/tests/jit/assign_op_009.phpt | 1 - ext/opcache/tests/jit/assign_static_prop_001.phpt | 1 - ext/opcache/tests/jit/assign_static_prop_op_001.phpt | 1 - ext/opcache/tests/jit/bind_global_001.phpt | 1 - ext/opcache/tests/jit/bind_static.phpt | 1 - ext/opcache/tests/jit/bind_static_002.phpt | 1 - ext/opcache/tests/jit/bool_not_001.phpt | 1 - ext/opcache/tests/jit/bool_not_002.phpt | 1 - ext/opcache/tests/jit/bug77857.phpt | 1 - ext/opcache/tests/jit/bug79888.phpt | 1 - ext/opcache/tests/jit/bug80426.phpt | 1 - ext/opcache/tests/jit/bug80447.phpt | 1 - ext/opcache/tests/jit/bug80634.phpt | 1 - ext/opcache/tests/jit/bug80745.phpt | 1 - ext/opcache/tests/jit/bug80782.phpt | 1 - ext/opcache/tests/jit/bug80786.phpt | 1 - ext/opcache/tests/jit/bug80802.phpt | 1 - ext/opcache/tests/jit/bug80839.phpt | 1 - ext/opcache/tests/jit/bug80861.phpt | 1 - ext/opcache/tests/jit/bug80959.phpt | 1 - ext/opcache/tests/jit/bug81051.phpt | 1 - ext/opcache/tests/jit/bug81225.phpt | 1 - ext/opcache/tests/jit/bug81225_2.phpt | 1 - ext/opcache/tests/jit/bug81226.phpt | 1 - ext/opcache/tests/jit/bug81249.phpt | 1 - ext/opcache/tests/jit/bug81255.phpt | 1 - ext/opcache/tests/jit/bug81256.phpt | 1 - ext/opcache/tests/jit/bug81409.phpt | 1 - ext/opcache/tests/jit/bug81512.phpt | 1 - ext/opcache/tests/jit/bw_not_001.phpt | 1 - ext/opcache/tests/jit/bw_not_002.phpt | 1 - ext/opcache/tests/jit/call_chain_exit.phpt | 1 - ext/opcache/tests/jit/cast_001.phpt | 1 - ext/opcache/tests/jit/cast_002.phpt | 1 - ext/opcache/tests/jit/closure_001.phpt | 1 - ext/opcache/tests/jit/cmp_001.phpt | 1 - ext/opcache/tests/jit/cmp_002.phpt | 1 - ext/opcache/tests/jit/cmp_003.phpt | 1 - ext/opcache/tests/jit/cmp_004.phpt | 1 - ext/opcache/tests/jit/cmp_005.phpt | 1 - ext/opcache/tests/jit/cmp_006.phpt | 1 - ext/opcache/tests/jit/cmp_007.phpt | 1 - ext/opcache/tests/jit/cmp_008.phpt | 1 - ext/opcache/tests/jit/cmp_009.phpt | 1 - ext/opcache/tests/jit/concat_001.phpt | 1 - ext/opcache/tests/jit/const_001.phpt | 1 - ext/opcache/tests/jit/copy_tmp_001.phpt | 1 - ext/opcache/tests/jit/copy_tmp_002.phpt | 1 - ext/opcache/tests/jit/count_001.phpt | 1 - ext/opcache/tests/jit/defined_001.phpt | 1 - ext/opcache/tests/jit/fe_reset_001.phpt | 1 - ext/opcache/tests/jit/fe_reset_undef.phpt | 1 - ext/opcache/tests/jit/fetch_dim_func_arg_002.phpt | 1 - ext/opcache/tests/jit/fetch_dim_func_args_001.phpt | 1 - ext/opcache/tests/jit/fetch_dim_is_001.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_001.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_002.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_003.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_004.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_005.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_006.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_007.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_008.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_009.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_010.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_011.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_012.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_013.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_014.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_015.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_016.phpt | 1 - ext/opcache/tests/jit/fetch_dim_r_017.phpt | 1 - ext/opcache/tests/jit/fetch_dim_rw_001.phpt | 1 - ext/opcache/tests/jit/fetch_dim_rw_002.phpt | 1 - ext/opcache/tests/jit/fetch_dim_rw_004.phpt | 1 - ext/opcache/tests/jit/fetch_dim_w_001.phpt | 1 - ext/opcache/tests/jit/fetch_dim_w_002.phpt | 1 - ext/opcache/tests/jit/fetch_dim_w_003.phpt | 1 - ext/opcache/tests/jit/fetch_dim_w_004.phpt | 1 - ext/opcache/tests/jit/fetch_list_r_001.phpt | 1 - ext/opcache/tests/jit/fetch_obj_001.phpt | 1 - ext/opcache/tests/jit/fetch_obj_002.phpt | 1 - ext/opcache/tests/jit/fetch_obj_003.phpt | 1 - ext/opcache/tests/jit/fetch_obj_004.phpt | 1 - ext/opcache/tests/jit/fetch_obj_005.phpt | 1 - ext/opcache/tests/jit/fetch_obj_006.phpt | 1 - ext/opcache/tests/jit/fetch_obj_007.phpt | 1 - ext/opcache/tests/jit/fetch_obj_008.phpt | 1 - ext/opcache/tests/jit/fetch_obj_009.phpt | 1 - ext/opcache/tests/jit/fetch_obj_010.phpt | 1 - ext/opcache/tests/jit/fetch_obj_is_typed_prop.phpt | 1 - ext/opcache/tests/jit/fetch_r_001.phpt | 1 - ext/opcache/tests/jit/fetch_static_prop_001.phpt | 1 - ext/opcache/tests/jit/gh10271.phpt | 1 - ext/opcache/tests/jit/gh10635.phpt | 1 - ext/opcache/tests/jit/gh12380.phpt | 1 - ext/opcache/tests/jit/gh8030-001.phpt | 1 - ext/opcache/tests/jit/gh8030-002.phpt | 1 - ext/opcache/tests/jit/gh8461-001.phpt | 1 - ext/opcache/tests/jit/gh8461-002.phpt | 1 - ext/opcache/tests/jit/gh8461-003.phpt | 1 - ext/opcache/tests/jit/gh8461-004.phpt | 1 - ext/opcache/tests/jit/gh8461-005.phpt | 1 - ext/opcache/tests/jit/gh8461-006.phpt | 1 - ext/opcache/tests/jit/gh8461-007.phpt | 1 - ext/opcache/tests/jit/gh8461-008.phpt | 1 - ext/opcache/tests/jit/gh8591-001.phpt | 1 - ext/opcache/tests/jit/gh8591-002.phpt | 1 - ext/opcache/tests/jit/gh8591-003.phpt | 1 - ext/opcache/tests/jit/gh8591-004.phpt | 1 - ext/opcache/tests/jit/gh8591-005.phpt | 1 - ext/opcache/tests/jit/gh8591-006.phpt | 1 - ext/opcache/tests/jit/gh8847.phpt | 1 - ext/opcache/tests/jit/gh8863.phpt | 1 - ext/opcache/tests/jit/hot_func_001.phpt | 1 - ext/opcache/tests/jit/hot_func_002.phpt | 1 - ext/opcache/tests/jit/icall_001.phpt | 1 - ext/opcache/tests/jit/identical_001.phpt | 1 - ext/opcache/tests/jit/identical_002.phpt | 1 - ext/opcache/tests/jit/identical_003.phpt | 1 - ext/opcache/tests/jit/identical_004.phpt | 1 - ext/opcache/tests/jit/ignored_opcodes.phpt | 1 - ext/opcache/tests/jit/inc_001.phpt | 1 - ext/opcache/tests/jit/inc_002.phpt | 1 - ext/opcache/tests/jit/inc_003.phpt | 1 - ext/opcache/tests/jit/inc_004.phpt | 1 - ext/opcache/tests/jit/inc_005.phpt | 1 - ext/opcache/tests/jit/inc_006.phpt | 1 - ext/opcache/tests/jit/inc_007.phpt | 1 - ext/opcache/tests/jit/inc_008.phpt | 1 - ext/opcache/tests/jit/inc_009.phpt | 1 - ext/opcache/tests/jit/inc_010.phpt | 1 - ext/opcache/tests/jit/inc_011.phpt | 1 - ext/opcache/tests/jit/inc_012.phpt | 1 - ext/opcache/tests/jit/inc_013.phpt | 1 - ext/opcache/tests/jit/inc_014.phpt | 1 - ext/opcache/tests/jit/inc_015.phpt | 1 - ext/opcache/tests/jit/inc_016.phpt | 1 - ext/opcache/tests/jit/inc_017.phpt | 1 - ext/opcache/tests/jit/inc_018.phpt | 1 - ext/opcache/tests/jit/inc_019.phpt | 1 - ext/opcache/tests/jit/inc_020.phpt | 1 - ext/opcache/tests/jit/inc_021.phpt | 1 - ext/opcache/tests/jit/inc_022.phpt | 1 - ext/opcache/tests/jit/inc_023.phpt | 1 - ext/opcache/tests/jit/inc_024.phpt | 1 - ext/opcache/tests/jit/inc_obj_001.phpt | 1 - ext/opcache/tests/jit/inc_obj_002.phpt | 1 - ext/opcache/tests/jit/inc_obj_003.phpt | 1 - ext/opcache/tests/jit/inc_obj_004.phpt | 1 - ext/opcache/tests/jit/inc_obj_005.phpt | 1 - ext/opcache/tests/jit/inc_obj_006.phpt | 1 - ext/opcache/tests/jit/init_fcall_001.phpt | 1 - ext/opcache/tests/jit/init_fcall_002.phpt | 1 - ext/opcache/tests/jit/init_fcall_003.phpt | 1 - ext/opcache/tests/jit/isset_001.phpt | 1 - ext/opcache/tests/jit/isset_002.phpt | 1 - ext/opcache/tests/jit/jmpz_001.phpt | 1 - ext/opcache/tests/jit/jmpz_002.phpt | 1 - ext/opcache/tests/jit/jmpz_ex_001.phpt | 1 - ext/opcache/tests/jit/loop_001.phpt | 1 - ext/opcache/tests/jit/loop_002.phpt | 1 - ext/opcache/tests/jit/loop_003.phpt | 1 - ext/opcache/tests/jit/match_001.phpt | 1 - ext/opcache/tests/jit/match_002.phpt | 1 - ext/opcache/tests/jit/match_003.phpt | 1 - ext/opcache/tests/jit/method_call_001.phpt | 1 - ext/opcache/tests/jit/mod_001.phpt | 1 - ext/opcache/tests/jit/mod_002.phpt | 1 - ext/opcache/tests/jit/mod_003.phpt | 1 - ext/opcache/tests/jit/mod_004.phpt | 1 - ext/opcache/tests/jit/mod_005.phpt | 1 - ext/opcache/tests/jit/mod_006.phpt | 1 - ext/opcache/tests/jit/mod_007.phpt | 1 - ext/opcache/tests/jit/mod_008.phpt | 1 - ext/opcache/tests/jit/mul_001.phpt | 1 - ext/opcache/tests/jit/mul_002.phpt | 1 - ext/opcache/tests/jit/mul_003.phpt | 1 - ext/opcache/tests/jit/mul_004.phpt | 1 - ext/opcache/tests/jit/mul_005.phpt | 1 - ext/opcache/tests/jit/mul_006.phpt | 1 - ext/opcache/tests/jit/mul_007.phpt | 1 - ext/opcache/tests/jit/mul_008.phpt | 1 - ext/opcache/tests/jit/mul_009.phpt | 1 - ext/opcache/tests/jit/nan_001.phpt | 1 - ext/opcache/tests/jit/nan_002.phpt | 1 - ext/opcache/tests/jit/not_001.phpt | 1 - ext/opcache/tests/jit/not_002.phpt | 1 - ext/opcache/tests/jit/not_003.phpt | 1 - ext/opcache/tests/jit/noval_001.phpt | 1 - ext/opcache/tests/jit/oss-fuzz-64727.phpt | 1 - ext/opcache/tests/jit/qm_assign_001.phpt | 1 - ext/opcache/tests/jit/qm_assign_002.phpt | 1 - ext/opcache/tests/jit/qm_assign_003.phpt | 1 - ext/opcache/tests/jit/qm_assign_undef_exception.phpt | 1 - ext/opcache/tests/jit/readonly_001.phpt | 1 - ext/opcache/tests/jit/readonly_002.phpt | 1 - ext/opcache/tests/jit/readonly_003.phpt | 1 - ext/opcache/tests/jit/readonly_004.phpt | 1 - ext/opcache/tests/jit/readonly_005.phpt | 1 - ext/opcache/tests/jit/readonly_006.phpt | 1 - ext/opcache/tests/jit/readonly_007.phpt | 1 - ext/opcache/tests/jit/readonly_008.phpt | 1 - ext/opcache/tests/jit/recursive_wrong_args.phpt | 1 - ext/opcache/tests/jit/recv_001.phpt | 1 - ext/opcache/tests/jit/recv_002.phpt | 1 - ext/opcache/tests/jit/recv_003.phpt | 1 - ext/opcache/tests/jit/recv_004.phpt | 1 - ext/opcache/tests/jit/recv_005.phpt | 1 - ext/opcache/tests/jit/reg_alloc_001.phpt | 1 - ext/opcache/tests/jit/reg_alloc_002.phpt | 1 - ext/opcache/tests/jit/reg_alloc_003.phpt | 1 - ext/opcache/tests/jit/reg_alloc_003_32bits.phpt | 1 - ext/opcache/tests/jit/reg_alloc_004.phpt | 1 - ext/opcache/tests/jit/reg_alloc_005.phpt | 1 - ext/opcache/tests/jit/reg_alloc_006.phpt | 1 - ext/opcache/tests/jit/reg_alloc_007.phpt | 1 - ext/opcache/tests/jit/reg_alloc_008.phpt | 1 - ext/opcache/tests/jit/reg_alloc_009.phpt | 1 - ext/opcache/tests/jit/reg_alloc_010.phpt | 1 - ext/opcache/tests/jit/reg_alloc_011.phpt | 1 - ext/opcache/tests/jit/reg_alloc_012.phpt | 1 - ext/opcache/tests/jit/reg_alloc_013.phpt | 1 - ext/opcache/tests/jit/reg_alloc_014.phpt | 1 - ext/opcache/tests/jit/reg_alloc_015.phpt | 1 - ext/opcache/tests/jit/reg_alloc_016.phpt | 1 - ext/opcache/tests/jit/reg_alloc_017.phpt | 1 - ext/opcache/tests/jit/reg_alloc_018.phpt | 1 - ext/opcache/tests/jit/reg_alloc_019.phpt | 1 - ext/opcache/tests/jit/reg_alloc_020.phpt | 1 - ext/opcache/tests/jit/reg_alloc_021.phpt | 1 - ext/opcache/tests/jit/reg_alloc_022.phpt | 1 - ext/opcache/tests/jit/reg_alloc_023.phpt | 1 - ext/opcache/tests/jit/ret_001.phpt | 1 - ext/opcache/tests/jit/ret_002.phpt | 1 - ext/opcache/tests/jit/ret_003.phpt | 1 - ext/opcache/tests/jit/ret_004.phpt | 1 - ext/opcache/tests/jit/rope_001.phpt | 1 - ext/opcache/tests/jit/rope_002.phpt | 1 - ext/opcache/tests/jit/send_ref_001.phpt | 1 - ext/opcache/tests/jit/send_val_001.phpt | 1 - ext/opcache/tests/jit/send_val_002.phpt | 1 - ext/opcache/tests/jit/send_var_ex_001.phpt | 1 - ext/opcache/tests/jit/send_var_ex_002.phpt | 1 - ext/opcache/tests/jit/shift_left_001.phpt | 1 - ext/opcache/tests/jit/shift_left_002.phpt | 1 - ext/opcache/tests/jit/shift_right_001.phpt | 1 - ext/opcache/tests/jit/shift_right_002.phpt | 1 - ext/opcache/tests/jit/shift_right_003.phpt | 1 - ext/opcache/tests/jit/shift_right_004.phpt | 1 - ext/opcache/tests/jit/sub_001.phpt | 1 - ext/opcache/tests/jit/switch_001.phpt | 1 - ext/opcache/tests/jit/switch_jumptable.phpt | 1 - ext/opcache/tests/jit/trampoline_001.phpt | 1 - ext/opcache/tests/jit/trampoline_002.phpt | 1 - ext/opcache/tests/jit/type_check_001.phpt | 1 - ext/opcache/tests/jit/ucall_001.phpt | 1 - ext/opcache/tests/jit/ucall_002.phpt | 1 - ext/opcache/tests/jit/ucall_003.phpt | 1 - ext/opcache/tests/jit/ucall_004.phpt | 1 - ext/opcache/tests/jit/undef_to_typed_ref.phpt | 1 - ext/opcache/tests/jit/unreachable_block.phpt | 1 - ext/opcache/tests/jit/verify_return_undef.phpt | 1 - ext/opcache/tests/jit/xor_001.phpt | 1 - ext/opcache/tests/jit/xor_002.phpt | 1 - ext/opcache/tests/jit/xor_003.phpt | 1 - ext/opcache/zend_accelerator_module.c | 2 +- ext/phar/tests/024-opcache-win32.phpt | 2 +- 386 files changed, 15 insertions(+), 385 deletions(-) diff --git a/UPGRADING b/UPGRADING index a9e6df8919b..e1225b906a7 100644 --- a/UPGRADING +++ b/UPGRADING @@ -54,6 +54,16 @@ PHP 8.4 UPGRADE NOTES is converted to Unicode. This is significant because around 40 SJIS-Mac characters convert to a sequence of multiple Unicode codepoints. +- Opcache: + . The JIT config defaults changed from opcache.jit=tracing and + opcache.jit_buffer_size=0 to opcache.jit=disable and + opcache.jit_buffer_size=64M, respectively. This does not affect the default + behavior, the JIT is still disabled by default. However, it is now disabled + through the opcache.jit setting, rather than opcache.jit_buffer_size. This + may affect users who previously enabled JIT through opcache.jit_buffer_size + exclusively, without also specifying a JIT mode using opcache.jit. To enable + JIT, set the opcache.jit config value accordingly. + - PDO_DBLIB: . setAttribute, DBLIB_ATTR_STRINGIFY_UNIQUEIDENTIFIER and DBLIB_ATTR_DATETIME_CONVERT have been changed to set value as a bool. diff --git a/benchmark/benchmark.php b/benchmark/benchmark.php index a0c01ca7662..ec39e9f3310 100644 --- a/benchmark/benchmark.php +++ b/benchmark/benchmark.php @@ -118,7 +118,8 @@ function runValgrindPhpCgiCommand( '-T' . ($warmup ? $warmup . ',' : '') . $repeat, '-d max_execution_time=0', '-d opcache.enable=1', - '-d opcache.jit_buffer_size=' . ($jit ? '128M' : '0'), + '-d opcache.jit=' . ($jit ? 'tracing' : 'disable'), + '-d opcache.jit_buffer_size=128M', '-d opcache.validate_timestamps=0', ...$args, ]); diff --git a/ext/opcache/jit/zend_jit.h b/ext/opcache/jit/zend_jit.h index 06e91bb63c9..074bf67cf25 100644 --- a/ext/opcache/jit/zend_jit.h +++ b/ext/opcache/jit/zend_jit.h @@ -47,7 +47,7 @@ #define ZEND_JIT_REG_ALLOC_GLOBAL (1<<1) /* global linear scan register allocation */ #define ZEND_JIT_CPU_AVX (1<<2) /* use AVX instructions, if available */ -#define ZEND_JIT_DEFAULT_BUFFER_SIZE "0" +#define ZEND_JIT_DEFAULT_BUFFER_SIZE "64M" #define ZEND_JIT_COUNTER_INIT 32531 diff --git a/ext/opcache/tests/bug81272.phpt b/ext/opcache/tests/bug81272.phpt index 7e310029757..7878f46d2ce 100644 --- a/ext/opcache/tests/bug81272.phpt +++ b/ext/opcache/tests/bug81272.phpt @@ -5,7 +5,6 @@ opcache --INI-- opcache.enable=1 opcache.enable_cli=1 -opcache.jit_buffer_size=64M opcache.jit=function --FILE-- --FILE-- diff --git a/ext/opcache/tests/jit/add_011.phpt b/ext/opcache/tests/jit/add_011.phpt index 0a8d15fbb91..28c598c5540 100644 --- a/ext/opcache/tests/jit/add_011.phpt +++ b/ext/opcache/tests/jit/add_011.phpt @@ -4,7 +4,6 @@ JIT ADD: 011 overflow handling opcache.enable=1 opcache.enable_cli=1 opcache.file_update_protection=0 -opcache.jit_buffer_size=64M --SKIPIF-- --FILE-- diff --git a/ext/opcache/tests/jit/add_012.phpt b/ext/opcache/tests/jit/add_012.phpt index e891a5e1d36..707b795f5e0 100644 --- a/ext/opcache/tests/jit/add_012.phpt +++ b/ext/opcache/tests/jit/add_012.phpt @@ -4,7 +4,6 @@ JIT ADD: 012 register allocation for 64-bit constant opcache.enable=1 opcache.enable_cli=1 opcache.file_update_protection=0 -opcache.jit_buffer_size=64M --SKIPIF-- --FILE-- diff --git a/ext/opcache/tests/jit/add_013.phpt b/ext/opcache/tests/jit/add_013.phpt index 7ec0a794c14..9bac9ad5103 100644 --- a/ext/opcache/tests/jit/add_013.phpt +++ b/ext/opcache/tests/jit/add_013.phpt @@ -4,7 +4,6 @@ JIT ADD: 013 register allocation (incorrect hinting) opcache.enable=1 opcache.enable_cli=1 opcache.file_update_protection=0 -opcache.jit_buffer_size=64M --FILE-- 0]; diff --git a/ext/opcache/tests/jit/assign_op_006.phpt b/ext/opcache/tests/jit/assign_op_006.phpt index 9f870b4505b..5feeafacd9e 100644 --- a/ext/opcache/tests/jit/assign_op_006.phpt +++ b/ext/opcache/tests/jit/assign_op_006.phpt @@ -4,7 +4,6 @@ JIT ASSIGN_OP: 006 concationation with itself opcache.enable=1 opcache.enable_cli=1 opcache.file_update_protection=0 -opcache.jit_buffer_size=64M --FILE-- diff --git a/ext/opcache/tests/jit/bug81225_2.phpt b/ext/opcache/tests/jit/bug81225_2.phpt index b3411e53b9c..d1a852f3eef 100644 --- a/ext/opcache/tests/jit/bug81225_2.phpt +++ b/ext/opcache/tests/jit/bug81225_2.phpt @@ -5,7 +5,6 @@ opcache --INI-- opcache.enable=1 opcache.enable_cli=1 -opcache.jit_buffer_size=64M opcache.jit=function --SKIPIF-- diff --git a/ext/opcache/tests/jit/bug81226.phpt b/ext/opcache/tests/jit/bug81226.phpt index dfa9f318759..3a018129cd9 100644 --- a/ext/opcache/tests/jit/bug81226.phpt +++ b/ext/opcache/tests/jit/bug81226.phpt @@ -5,7 +5,6 @@ opcache --INI-- opcache.enable=1 opcache.enable_cli=1 -opcache.jit_buffer_size=64M opcache.jit=tracing --SKIPIF-- diff --git a/ext/opcache/tests/jit/bug81249.phpt b/ext/opcache/tests/jit/bug81249.phpt index 5a188d5806a..8f42d68cce3 100644 --- a/ext/opcache/tests/jit/bug81249.phpt +++ b/ext/opcache/tests/jit/bug81249.phpt @@ -5,7 +5,6 @@ opcache --INI-- opcache.enable=1 opcache.enable_cli=1 -opcache.jit_buffer_size=64M opcache.jit=tracing --SKIPIF-- diff --git a/ext/opcache/tests/jit/bug81255.phpt b/ext/opcache/tests/jit/bug81255.phpt index 3fa12183d0a..a11652ed900 100644 --- a/ext/opcache/tests/jit/bug81255.phpt +++ b/ext/opcache/tests/jit/bug81255.phpt @@ -5,7 +5,6 @@ opcache --INI-- opcache.enable=1 opcache.enable_cli=1 -opcache.jit_buffer_size=64M opcache.jit=function --FILE-- 4)[-1]; diff --git a/ext/opcache/tests/jit/fetch_dim_r_016.phpt b/ext/opcache/tests/jit/fetch_dim_r_016.phpt index eb3e6eab36a..2db8a32a958 100644 --- a/ext/opcache/tests/jit/fetch_dim_r_016.phpt +++ b/ext/opcache/tests/jit/fetch_dim_r_016.phpt @@ -4,7 +4,6 @@ JIT FETCH_DIM_R: 016 opcache.enable=1 opcache.enable_cli=1 opcache.file_update_protection=0 -opcache.jit_buffer_size=1M --FILE-- diff --git a/ext/opcache/tests/jit/inc_obj_001.phpt b/ext/opcache/tests/jit/inc_obj_001.phpt index 9378721e5fe..7e5562d02a8 100644 --- a/ext/opcache/tests/jit/inc_obj_001.phpt +++ b/ext/opcache/tests/jit/inc_obj_001.phpt @@ -4,7 +4,6 @@ PRE_INC_OBJ: 001 opcache.enable=1 opcache.enable_cli=1 opcache.file_update_protection=0 -opcache.jit_buffer_size=64M opcache.protect_memory=1 --FILE-- diff --git a/ext/opcache/tests/jit/mul_009.phpt b/ext/opcache/tests/jit/mul_009.phpt index 840473fe736..a6016bd535e 100644 --- a/ext/opcache/tests/jit/mul_009.phpt +++ b/ext/opcache/tests/jit/mul_009.phpt @@ -4,7 +4,6 @@ JIT MUL: 009 memory leak opcache.enable=1 opcache.enable_cli=1 opcache.file_update_protection=0 -opcache.jit_buffer_size=64M opcache.protect_memory=1 --FILE--