@@ -1844,12 +1844,12 @@ static int zend_jit_exception_handler_stub(zend_jit_ctx *jit)
1844
1844
handler = zend_get_opcode_handler_func(EG(exception_op));
1845
1845
1846
1846
ir_CALL(IR_VOID, ir_CONST_FUNC(handler));
1847
- ir_TAILCALL(ir_LOAD_A(jit_IP(jit)));
1847
+ ir_TAILCALL(IR_VOID, ir_LOAD_A(jit_IP(jit)));
1848
1848
} else {
1849
1849
handler = EG(exception_op)->handler;
1850
1850
1851
1851
if (GCC_GLOBAL_REGS) {
1852
- ir_TAILCALL(ir_CONST_FUNC(handler));
1852
+ ir_TAILCALL(IR_VOID, ir_CONST_FUNC(handler));
1853
1853
} else {
1854
1854
ir_ref ref, if_negative;
1855
1855
@@ -1959,7 +1959,7 @@ static int zend_jit_interrupt_handler_stub(zend_jit_ctx *jit)
1959
1959
}
1960
1960
1961
1961
if (GCC_GLOBAL_REGS) {
1962
- ir_TAILCALL(ir_LOAD_A(jit_IP(jit)));
1962
+ ir_TAILCALL(IR_VOID, ir_LOAD_A(jit_IP(jit)));
1963
1963
} else {
1964
1964
ir_RETURN(ir_CONST_I32(1));
1965
1965
}
@@ -1977,22 +1977,22 @@ static int zend_jit_leave_function_handler_stub(zend_jit_ctx *jit)
1977
1977
ir_CALL_1(IR_VOID, ir_CONST_FC_FUNC(zend_jit_leave_nested_func_helper), call_info);
1978
1978
jit_STORE_IP(jit,
1979
1979
ir_LOAD_A(jit_EX(opline)));
1980
- ir_TAILCALL(ir_LOAD_A(jit_IP(jit)));
1980
+ ir_TAILCALL(IR_VOID, ir_LOAD_A(jit_IP(jit)));
1981
1981
} else if (GCC_GLOBAL_REGS) {
1982
- ir_TAILCALL_1(ir_CONST_FC_FUNC(zend_jit_leave_nested_func_helper), call_info);
1982
+ ir_TAILCALL_1(IR_VOID, ir_CONST_FC_FUNC(zend_jit_leave_nested_func_helper), call_info);
1983
1983
} else {
1984
- ir_TAILCALL_2(ir_CONST_FC_FUNC(zend_jit_leave_nested_func_helper), call_info, jit_FP(jit));
1984
+ ir_TAILCALL_2(IR_I32, ir_CONST_FC_FUNC(zend_jit_leave_nested_func_helper), call_info, jit_FP(jit));
1985
1985
}
1986
1986
1987
1987
ir_IF_TRUE(if_top);
1988
1988
1989
1989
if (zend_jit_vm_kind == ZEND_VM_KIND_HYBRID) {
1990
1990
ir_CALL_1(IR_VOID, ir_CONST_FC_FUNC(zend_jit_leave_top_func_helper), call_info);
1991
- ir_TAILCALL(ir_LOAD_A(jit_IP(jit)));
1991
+ ir_TAILCALL(IR_VOID, ir_LOAD_A(jit_IP(jit)));
1992
1992
} else if (GCC_GLOBAL_REGS) {
1993
- ir_TAILCALL_1(ir_CONST_FC_FUNC(zend_jit_leave_top_func_helper), call_info);
1993
+ ir_TAILCALL_1(IR_VOID, ir_CONST_FC_FUNC(zend_jit_leave_top_func_helper), call_info);
1994
1994
} else {
1995
- ir_TAILCALL_2(ir_CONST_FC_FUNC(zend_jit_leave_top_func_helper), call_info, jit_FP(jit));
1995
+ ir_TAILCALL_2(IR_I32, ir_CONST_FC_FUNC(zend_jit_leave_top_func_helper), call_info, jit_FP(jit));
1996
1996
}
1997
1997
1998
1998
return 1;
@@ -2342,7 +2342,7 @@ static int zend_jit_hybrid_loop_trace_counter_stub(zend_jit_ctx *jit)
2342
2342
static int zend_jit_trace_halt_stub(zend_jit_ctx *jit)
2343
2343
{
2344
2344
if (zend_jit_vm_kind == ZEND_VM_KIND_HYBRID) {
2345
- ir_TAILCALL(ir_CONST_FC_FUNC(zend_jit_halt_op->handler));
2345
+ ir_TAILCALL(IR_VOID, ir_CONST_FC_FUNC(zend_jit_halt_op->handler));
2346
2346
} else if (GCC_GLOBAL_REGS) {
2347
2347
jit_STORE_IP(jit, IR_NULL);
2348
2348
ir_RETURN(IR_VOID);
@@ -2355,7 +2355,7 @@ static int zend_jit_trace_halt_stub(zend_jit_ctx *jit)
2355
2355
static int zend_jit_trace_escape_stub(zend_jit_ctx *jit)
2356
2356
{
2357
2357
if (GCC_GLOBAL_REGS) {
2358
- ir_TAILCALL(ir_LOAD_A(jit_IP(jit)));
2358
+ ir_TAILCALL(IR_VOID, ir_LOAD_A(jit_IP(jit)));
2359
2359
} else {
2360
2360
ir_RETURN(ir_CONST_I32(1)); // ZEND_VM_ENTER
2361
2361
}
@@ -2383,7 +2383,7 @@ static int zend_jit_trace_exit_stub(zend_jit_ctx *jit)
2383
2383
jit_STORE_FP(jit, ir_LOAD_A(ref));
2384
2384
ref = ir_LOAD_A(jit_EX(opline));
2385
2385
jit_STORE_IP(jit, ref);
2386
- ir_TAILCALL(ir_LOAD_A(jit_IP(jit)));
2386
+ ir_TAILCALL(IR_VOID, ir_LOAD_A(jit_IP(jit)));
2387
2387
} else {
2388
2388
ir_RETURN(ir_CONST_I32(1)); // ZEND_VM_ENTER
2389
2389
}
@@ -2407,7 +2407,7 @@ static int zend_jit_trace_exit_stub(zend_jit_ctx *jit)
2407
2407
2408
2408
addr = zend_jit_orig_opline_handler(jit);
2409
2409
if (GCC_GLOBAL_REGS) {
2410
- ir_TAILCALL(addr);
2410
+ ir_TAILCALL(IR_VOID, addr);
2411
2411
} else {
2412
2412
#if defined(IR_TARGET_X86)
2413
2413
addr = ir_CAST_FC_FUNC(addr);
@@ -4012,20 +4012,20 @@ static int zend_jit_tail_handler(zend_jit_ctx *jit, const zend_op *opline)
4012
4012
4013
4013
/* Use inlined HYBRID VM handler */
4014
4014
handler = opline->handler;
4015
- ir_TAILCALL(ir_CONST_FUNC(handler));
4015
+ ir_TAILCALL(IR_VOID, ir_CONST_FUNC(handler));
4016
4016
} else {
4017
4017
handler = zend_get_opcode_handler_func(opline);
4018
4018
ir_CALL(IR_VOID, ir_CONST_FUNC(handler));
4019
4019
ref = ir_LOAD_A(jit_IP(jit));
4020
- ir_TAILCALL(ref);
4020
+ ir_TAILCALL(IR_VOID, ref);
4021
4021
}
4022
4022
} else {
4023
4023
handler = opline->handler;
4024
4024
if (GCC_GLOBAL_REGS) {
4025
- ir_TAILCALL(ir_CONST_FUNC(handler));
4025
+ ir_TAILCALL(IR_VOID, ir_CONST_FUNC(handler));
4026
4026
} else {
4027
4027
ref = jit_FP(jit);
4028
- ir_TAILCALL_1(ir_CONST_FC_FUNC(handler), ref);
4028
+ ir_TAILCALL_1(IR_I32, ir_CONST_FC_FUNC(handler), ref);
4029
4029
}
4030
4030
}
4031
4031
if (jit->b >= 0) {
@@ -9845,7 +9845,7 @@ static int zend_jit_do_fcall(zend_jit_ctx *jit, const zend_op *opline, const zen
9845
9845
}
9846
9846
/* fallback to indirect JMP or RETURN */
9847
9847
if (GCC_GLOBAL_REGS) {
9848
- ir_TAILCALL(ir_LOAD_A(jit_IP(jit)));
9848
+ ir_TAILCALL(IR_VOID, ir_LOAD_A(jit_IP(jit)));
9849
9849
} else {
9850
9850
ir_RETURN(ir_CONST_I32(1));
9851
9851
}
@@ -10598,7 +10598,7 @@ static int zend_jit_leave_func(zend_jit_ctx *jit,
10598
10598
ir_IF_FALSE(if_eq);
10599
10599
10600
10600
#ifdef ZEND_VM_HYBRID_JIT_RED_ZONE_SIZE
10601
- ir_TAILCALL(ir_LOAD_A(jit_IP(jit)));
10601
+ ir_TAILCALL(IR_VOID, ir_LOAD_A(jit_IP(jit)));
10602
10602
#else
10603
10603
ir_IJMP(jit_STUB_ADDR(jit, jit_stub_trace_escape));
10604
10604
#endif
@@ -10634,7 +10634,7 @@ static int zend_jit_leave_func(zend_jit_ctx *jit,
10634
10634
}
10635
10635
10636
10636
if (GCC_GLOBAL_REGS) {
10637
- ir_TAILCALL(ir_LOAD_A(jit_IP(jit)));
10637
+ ir_TAILCALL(IR_VOID, ir_LOAD_A(jit_IP(jit)));
10638
10638
} else {
10639
10639
ir_RETURN(ir_CONST_I32(2)); // ZEND_VM_LEAVE
10640
10640
}
@@ -16244,9 +16244,9 @@ static int zend_jit_trace_return(zend_jit_ctx *jit, bool original_handler, const
16244
16244
{
16245
16245
if (GCC_GLOBAL_REGS) {
16246
16246
if (!original_handler) {
16247
- ir_TAILCALL(ir_LOAD_A(jit_IP(jit)));
16247
+ ir_TAILCALL(IR_VOID, ir_LOAD_A(jit_IP(jit)));
16248
16248
} else {
16249
- ir_TAILCALL(zend_jit_orig_opline_handler(jit));
16249
+ ir_TAILCALL(IR_VOID, zend_jit_orig_opline_handler(jit));
16250
16250
}
16251
16251
} else {
16252
16252
if (original_handler) {
0 commit comments