@@ -1475,7 +1475,9 @@ load_helper(CPUArchState *env, target_ulong addr, TCGMemOpIdx oi,
1475
1475
continue ;
1476
1476
if (!HOOK_BOUND_CHECK (hook , paddr ))
1477
1477
continue ;
1478
- if ((handled = ((uc_cb_eventmem_t )hook -> callback )(uc , UC_MEM_FETCH_UNMAPPED , paddr , size , 0 , hook -> user_data )))
1478
+ JIT_CALLBACK_GUARD_VAR (handled ,
1479
+ ((uc_cb_eventmem_t )hook -> callback )(uc , UC_MEM_FETCH_UNMAPPED , paddr , size , 0 , hook -> user_data ));
1480
+ if (handled )
1479
1481
break ;
1480
1482
1481
1483
// the last callback may already asked to stop emulation
@@ -1490,7 +1492,9 @@ load_helper(CPUArchState *env, target_ulong addr, TCGMemOpIdx oi,
1490
1492
continue ;
1491
1493
if (!HOOK_BOUND_CHECK (hook , paddr ))
1492
1494
continue ;
1493
- if ((handled = ((uc_cb_eventmem_t )hook -> callback )(uc , UC_MEM_READ_UNMAPPED , paddr , size , 0 , hook -> user_data )))
1495
+ JIT_CALLBACK_GUARD_VAR (handled ,
1496
+ ((uc_cb_eventmem_t )hook -> callback )(uc , UC_MEM_READ_UNMAPPED , paddr , size , 0 , hook -> user_data ));
1497
+ if (handled )
1494
1498
break ;
1495
1499
1496
1500
// the last callback may already asked to stop emulation
@@ -1551,7 +1555,7 @@ load_helper(CPUArchState *env, target_ulong addr, TCGMemOpIdx oi,
1551
1555
continue ;
1552
1556
if (!HOOK_BOUND_CHECK (hook , paddr ))
1553
1557
continue ;
1554
- (( uc_cb_hookmem_t )hook -> callback )(env -> uc , UC_MEM_READ , paddr , size , 0 , hook -> user_data );
1558
+ JIT_CALLBACK_GUARD ((( uc_cb_hookmem_t )hook -> callback )(env -> uc , UC_MEM_READ , paddr , size , 0 , hook -> user_data ) );
1555
1559
1556
1560
// the last callback may already asked to stop emulation
1557
1561
if (uc -> stop_request )
@@ -1566,7 +1570,9 @@ load_helper(CPUArchState *env, target_ulong addr, TCGMemOpIdx oi,
1566
1570
continue ;
1567
1571
if (!HOOK_BOUND_CHECK (hook , paddr ))
1568
1572
continue ;
1569
- if ((handled = ((uc_cb_eventmem_t )hook -> callback )(uc , UC_MEM_READ_PROT , paddr , size , 0 , hook -> user_data )))
1573
+ JIT_CALLBACK_GUARD_VAR (handled ,
1574
+ ((uc_cb_eventmem_t )hook -> callback )(uc , UC_MEM_READ_PROT , paddr , size , 0 , hook -> user_data ));
1575
+ if (handled )
1570
1576
break ;
1571
1577
1572
1578
// the last callback may already asked to stop emulation
@@ -1610,7 +1616,9 @@ load_helper(CPUArchState *env, target_ulong addr, TCGMemOpIdx oi,
1610
1616
continue ;
1611
1617
if (!HOOK_BOUND_CHECK (hook , paddr ))
1612
1618
continue ;
1613
- if ((handled = ((uc_cb_eventmem_t )hook -> callback )(uc , UC_MEM_FETCH_PROT , paddr , size , 0 , hook -> user_data )))
1619
+ JIT_CALLBACK_GUARD_VAR (handled ,
1620
+ ((uc_cb_eventmem_t )hook -> callback )(uc , UC_MEM_FETCH_PROT , paddr , size , 0 , hook -> user_data ));
1621
+ if (handled )
1614
1622
break ;
1615
1623
1616
1624
// the last callback may already asked to stop emulation
@@ -1718,8 +1726,7 @@ load_helper(CPUArchState *env, target_ulong addr, TCGMemOpIdx oi,
1718
1726
continue ;
1719
1727
if (!HOOK_BOUND_CHECK (hook , paddr ))
1720
1728
continue ;
1721
- ((uc_cb_hookmem_t )hook -> callback )(env -> uc , UC_MEM_READ_AFTER , paddr , size , res , hook -> user_data );
1722
-
1729
+ JIT_CALLBACK_GUARD (((uc_cb_hookmem_t )hook -> callback )(env -> uc , UC_MEM_READ_AFTER , paddr , size , res , hook -> user_data ));
1723
1730
// the last callback may already asked to stop emulation
1724
1731
if (uc -> stop_request )
1725
1732
break ;
@@ -2062,8 +2069,7 @@ store_helper(CPUArchState *env, target_ulong addr, uint64_t val,
2062
2069
continue ;
2063
2070
if (!HOOK_BOUND_CHECK (hook , paddr ))
2064
2071
continue ;
2065
- ((uc_cb_hookmem_t )hook -> callback )(uc , UC_MEM_WRITE , paddr , size , val , hook -> user_data );
2066
-
2072
+ JIT_CALLBACK_GUARD (((uc_cb_hookmem_t )hook -> callback )(uc , UC_MEM_WRITE , paddr , size , val , hook -> user_data ));
2067
2073
// the last callback may already asked to stop emulation
2068
2074
if (uc -> stop_request )
2069
2075
break ;
@@ -2078,7 +2084,9 @@ store_helper(CPUArchState *env, target_ulong addr, uint64_t val,
2078
2084
continue ;
2079
2085
if (!HOOK_BOUND_CHECK (hook , paddr ))
2080
2086
continue ;
2081
- if ((handled = ((uc_cb_eventmem_t )hook -> callback )(uc , UC_MEM_WRITE_UNMAPPED , paddr , size , val , hook -> user_data )))
2087
+ JIT_CALLBACK_GUARD_VAR (handled ,
2088
+ ((uc_cb_eventmem_t )hook -> callback )(uc , UC_MEM_WRITE_UNMAPPED , paddr , size , val , hook -> user_data ));
2089
+ if (handled )
2082
2090
break ;
2083
2091
2084
2092
// the last callback may already asked to stop emulation
@@ -2125,7 +2133,9 @@ store_helper(CPUArchState *env, target_ulong addr, uint64_t val,
2125
2133
continue ;
2126
2134
if (!HOOK_BOUND_CHECK (hook , paddr ))
2127
2135
continue ;
2128
- if ((handled = ((uc_cb_eventmem_t )hook -> callback )(uc , UC_MEM_WRITE_PROT , paddr , size , val , hook -> user_data )))
2136
+ JIT_CALLBACK_GUARD_VAR (handled ,
2137
+ ((uc_cb_eventmem_t )hook -> callback )(uc , UC_MEM_WRITE_PROT , paddr , size , val , hook -> user_data ));
2138
+ if (handled )
2129
2139
break ;
2130
2140
2131
2141
// the last callback may already asked to stop emulation
0 commit comments