diff --git a/fusee/fusee-primary/src/utils.h b/fusee/fusee-primary/src/utils.h index 246c3ac..9249897 100644 --- a/fusee/fusee-primary/src/utils.h +++ b/fusee/fusee-primary/src/utils.h @@ -80,7 +80,7 @@ return !__builtin_add_overflow_p(addr, size, (uintptr_t)0) && /* the range doesn't overflow */ check_32bit_address_loadable(addr) && check_32bit_address_loadable(addr + size) && /* bounds are valid */ - !(addr >= 0x40010000u && addr + size >= 0x40040000u) /* the range doesn't cross MMIO */ + !(addr >= 0x40010000u && addr < 0x40040000u && addr + size >= 0x40040000u) /* the range doesn't cross MMIO */ ; } diff --git a/fusee/fusee-secondary/src/utils.h b/fusee/fusee-secondary/src/utils.h index 413a4bd..7dbeaad 100644 --- a/fusee/fusee-secondary/src/utils.h +++ b/fusee/fusee-secondary/src/utils.h @@ -80,7 +80,7 @@ return !__builtin_add_overflow_p(addr, size, (uintptr_t)0) && /* the range doesn't overflow */ check_32bit_address_loadable(addr) && check_32bit_address_loadable(addr + size) && /* bounds are valid */ - !(addr >= 0x40010000u && addr + size >= 0x40040000u) /* the range doesn't cross MMIO */ + !(addr >= 0x40010000u && addr < 0x40040000u && addr + size >= 0x40040000u) /* the range doesn't cross MMIO */ ; }