From 3363757dfad7f7a8dd62f99108492e7feb697e1a Mon Sep 17 00:00:00 2001 From: notaz Date: Thu, 19 Feb 2026 04:05:27 +0200 Subject: [PATCH] drc: make sanitizers happier --- libpcsxcore/new_dynarec/new_dynarec.c | 6 ++++-- libpcsxcore/new_dynarec/pcsxmem.c | 17 +++++++---------- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/libpcsxcore/new_dynarec/new_dynarec.c b/libpcsxcore/new_dynarec/new_dynarec.c index b976b876..b004b687 100644 --- a/libpcsxcore/new_dynarec/new_dynarec.c +++ b/libpcsxcore/new_dynarec/new_dynarec.c @@ -4357,8 +4357,10 @@ static void speculate_register_values(struct compile_state *st, int i) case SHIFT: case LOADLR: case MOV: - smrv_strong_next&=~(1<> 1) | (flag << (sizeof(hv) * 8 - 1)); } +#define map_item(out_, h_, flag_) \ + map_item_(out_, (uintptr_t)(h_), flag_) + // size must be power of 2, at least 4k #define map_l1_mem(tab, i, addr, size, base) \ - map_item(&tab[((u32)(addr) >> 12) + i], \ - (u8 *)(base) - (u32)((addr) + ((i << 12) & ~(size - 1))), 0) + map_item_(&tab[((u32)(addr) >> 12) + i], \ + (uintptr_t)(base) - (u32)((addr) + ((i << 12) & ~(size - 1))), 0) #define IOMEM32(a) (((a) & 0xfff) / 4) #define IOMEM16(a) (0x1000/4 + (((a) & 0xfff) / 2)) -- 2.47.3