aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@twiddle.net>2016-06-29 15:48:03 -0700
committerRichard Henderson <rth@twiddle.net>2016-10-26 08:29:00 -0700
commit258dfaaad05a5fbe32a142b794e1df3e16501d0e (patch)
tree8a7fddb5f3d0b0f71ade22e9c2ada6ee038dc757
parent84bca3927b36fb1d9a2ca85cbbdf9023d2b84678 (diff)
exec: Avoid direct references to Int128 parts
Reviewed-by: Emilio G. Cota <cota@braap.org> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Richard Henderson <rth@twiddle.net>
-rw-r--r--exec.c4
-rw-r--r--include/qemu/int128.h10
2 files changed, 12 insertions, 2 deletions
diff --git a/exec.c b/exec.c
index 587b489eef..4c84389b56 100644
--- a/exec.c
+++ b/exec.c
@@ -352,9 +352,9 @@ static inline bool section_covers_addr(const MemoryRegionSection *section,
/* Memory topology clips a memory region to [0, 2^64); size.hi > 0 means
* the section must cover the entire address space.
*/
- return section->size.hi ||
+ return int128_gethi(section->size) ||
range_covers_byte(section->offset_within_address_space,
- section->size.lo, addr);
+ int128_getlo(section->size), addr);
}
static MemoryRegionSection *phys_page_find(PhysPageEntry lp, hwaddr addr,
diff --git a/include/qemu/int128.h b/include/qemu/int128.h
index c5988813df..52aaf99811 100644
--- a/include/qemu/int128.h
+++ b/include/qemu/int128.h
@@ -20,6 +20,16 @@ static inline uint64_t int128_get64(Int128 a)
return a.lo;
}
+static inline uint64_t int128_getlo(Int128 a)
+{
+ return a.lo;
+}
+
+static inline int64_t int128_gethi(Int128 a)
+{
+ return a.hi;
+}
+
static inline Int128 int128_zero(void)
{
return int128_make64(0);