[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v1 1/6] mem: change variable to macro
From: |
Liu Ping Fan |
Subject: |
[Qemu-devel] [PATCH v1 1/6] mem: change variable to macro |
Date: |
Wed, 29 May 2013 10:11:04 +0800 |
From: Liu Ping Fan <address@hidden>
The secions like phys_section_unassigned always has fixed address
in phys_sections, make them declared as macro, so we can use them
when having more than one phys_sections, ie, more than one dispatch
context.
Signed-off-by: Liu Ping Fan <address@hidden>
---
exec.c | 22 ++++++++++++++--------
1 files changed, 14 insertions(+), 8 deletions(-)
diff --git a/exec.c b/exec.c
index 281c007..6934c2d 100644
--- a/exec.c
+++ b/exec.c
@@ -82,10 +82,10 @@ int use_icount;
static MemoryRegionSection *phys_sections;
static unsigned phys_sections_nb, phys_sections_nb_alloc;
-static uint16_t phys_section_unassigned;
-static uint16_t phys_section_notdirty;
-static uint16_t phys_section_rom;
-static uint16_t phys_section_watch;
+#define phys_section_unassigned 0
+#define phys_section_notdirty 1
+#define phys_section_rom 2
+#define phys_section_watch 3
/* Simple allocator for PhysPageEntry nodes */
static PhysPageEntry (*phys_map_nodes)[L2_SIZE];
@@ -1747,11 +1747,17 @@ static void mem_begin(MemoryListener *listener)
static void core_begin(MemoryListener *listener)
{
+ uint16_t n;
+
phys_sections_clear();
- phys_section_unassigned = dummy_section(&io_mem_unassigned);
- phys_section_notdirty = dummy_section(&io_mem_notdirty);
- phys_section_rom = dummy_section(&io_mem_rom);
- phys_section_watch = dummy_section(&io_mem_watch);
+ n = dummy_section(&io_mem_unassigned);
+ assert(phys_section_unassigned == n);
+ n = dummy_section(&io_mem_notdirty);
+ assert(phys_section_notdirty == n);
+ n = dummy_section(&io_mem_rom);
+ assert(phys_section_rom == n);
+ n = dummy_section(&io_mem_watch);
+ assert(phys_section_watch == n);
}
static void tcg_commit(MemoryListener *listener)
--
1.7.4.4