[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 5/6] consolidate user cpu_{in, out}[bwl] into ioport
From: |
Isaku Yamahata |
Subject: |
[Qemu-devel] [PATCH 5/6] consolidate user cpu_{in, out}[bwl] into ioport-user.c |
Date: |
Fri, 10 Jul 2009 18:13:24 +0900 |
consolidate user cpu_{in, out}[bwl] into ioport-user.c
Signed-off-by: Isaku Yamahata <address@hidden>
---
Makefile.target | 7 +++--
bsd-user/main.c | 33 -----------------------------
darwin-user/main.c | 33 -----------------------------
ioport-user.c | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++
linux-user/main.c | 33 -----------------------------
tests/Makefile | 4 +-
tests/qruncom.c | 33 -----------------------------
7 files changed, 65 insertions(+), 137 deletions(-)
create mode 100644 ioport-user.c
diff --git a/Makefile.target b/Makefile.target
index 7f7c167..1a71f3a 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -321,7 +321,8 @@ CFLAGS+=-p
endif
obj-y = main.o syscall.o strace.o mmap.o signal.o path.o thunk.o \
- elfload.o linuxload.o uaccess.o envlist.o gdbstub.o gdbstub-xml.o
+ elfload.o linuxload.o uaccess.o envlist.o gdbstub.o gdbstub-xml.o \
+ ioport-user.o
LIBS+= $(PTHREADLIBS)
LIBS+= $(CLOCKLIBS)
obj-$(TARGET_HAS_BFLT) += flatload.o
@@ -372,7 +373,7 @@ LDFLAGS+=-Wl,-segaddr,__STD_PROG_ZONE,0x1000 -image_base
0x0e000000
LIBS+=-lmx
obj-y = main.o commpage.o machload.o mmap.o signal.o syscall.o thunk.o \
- gdbstub.o gdbstub-xml.o
+ gdbstub.o gdbstub-xml.o ioport-user.o
# Note: this is a workaround. The real fix is to avoid compiling
# cpu_signal_handler() in cpu-exec.c.
@@ -471,7 +472,7 @@ endif
endif
obj-y = main.o bsdload.o elfload.o mmap.o path.o signal.o strace.o syscall.o \
- gdbstub.o gdbstub-xml.o
+ gdbstub.o gdbstub-xml.o ioport-user.o
obj-y += uaccess.o
# Note: this is a workaround. The real fix is to avoid compiling
diff --git a/bsd-user/main.c b/bsd-user/main.c
index 827c9c3..e4a6255 100644
--- a/bsd-user/main.c
+++ b/bsd-user/main.c
@@ -55,39 +55,6 @@ void gemu_log(const char *fmt, ...)
va_end(ap);
}
-void cpu_outb(CPUState *env, int addr, int val)
-{
- fprintf(stderr, "outb: port=0x%04x, data=%02x\n", addr, val);
-}
-
-void cpu_outw(CPUState *env, int addr, int val)
-{
- fprintf(stderr, "outw: port=0x%04x, data=%04x\n", addr, val);
-}
-
-void cpu_outl(CPUState *env, int addr, int val)
-{
- fprintf(stderr, "outl: port=0x%04x, data=%08x\n", addr, val);
-}
-
-int cpu_inb(CPUState *env, int addr)
-{
- fprintf(stderr, "inb: port=0x%04x\n", addr);
- return 0;
-}
-
-int cpu_inw(CPUState *env, int addr)
-{
- fprintf(stderr, "inw: port=0x%04x\n", addr);
- return 0;
-}
-
-int cpu_inl(CPUState *env, int addr)
-{
- fprintf(stderr, "inl: port=0x%04x\n", addr);
- return 0;
-}
-
#if defined(TARGET_I386)
int cpu_get_pic_interrupt(CPUState *env)
{
diff --git a/darwin-user/main.c b/darwin-user/main.c
index 5e3c48d..27c7284 100644
--- a/darwin-user/main.c
+++ b/darwin-user/main.c
@@ -72,39 +72,6 @@ void gemu_log(const char *fmt, ...)
va_end(ap);
}
-void cpu_outb(CPUState *env, int addr, int val)
-{
- fprintf(stderr, "outb: port=0x%04x, data=%02x\n", addr, val);
-}
-
-void cpu_outw(CPUState *env, int addr, int val)
-{
- fprintf(stderr, "outw: port=0x%04x, data=%04x\n", addr, val);
-}
-
-void cpu_outl(CPUState *env, int addr, int val)
-{
- fprintf(stderr, "outl: port=0x%04x, data=%08x\n", addr, val);
-}
-
-int cpu_inb(CPUState *env, int addr)
-{
- fprintf(stderr, "inb: port=0x%04x\n", addr);
- return 0;
-}
-
-int cpu_inw(CPUState *env, int addr)
-{
- fprintf(stderr, "inw: port=0x%04x\n", addr);
- return 0;
-}
-
-int cpu_inl(CPUState *env, int addr)
-{
- fprintf(stderr, "inl: port=0x%04x\n", addr);
- return 0;
-}
-
int cpu_get_pic_interrupt(CPUState *env)
{
return -1;
diff --git a/ioport-user.c b/ioport-user.c
new file mode 100644
index 0000000..fe8567f
--- /dev/null
+++ b/ioport-user.c
@@ -0,0 +1,59 @@
+/*
+ * qemu user ioport functions
+ *
+ * Copyright (c) 2003-2008 Fabrice Bellard
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+
+#include <stdio.h>
+
+#include "qemu.h"
+#include "qemu-common.h"
+#include "ioport.h"
+
+void cpu_outb(CPUState *env, int addr, int val)
+{
+ fprintf(stderr, "outb: port=0x%04x, data=%02x\n", addr, val);
+}
+
+void cpu_outw(CPUState *env, int addr, int val)
+{
+ fprintf(stderr, "outw: port=0x%04x, data=%04x\n", addr, val);
+}
+
+void cpu_outl(CPUState *env, int addr, int val)
+{
+ fprintf(stderr, "outl: port=0x%04x, data=%08x\n", addr, val);
+}
+
+int cpu_inb(CPUState *env, int addr)
+{
+ fprintf(stderr, "inb: port=0x%04x\n", addr);
+ return 0;
+}
+
+int cpu_inw(CPUState *env, int addr)
+{
+ fprintf(stderr, "inw: port=0x%04x\n", addr);
+ return 0;
+}
+
+int cpu_inl(CPUState *env, int addr)
+{
+ fprintf(stderr, "inl: port=0x%04x\n", addr);
+ return 0;
+}
diff --git a/linux-user/main.c b/linux-user/main.c
index 7eabd0c..ef448a4 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
@@ -85,39 +85,6 @@ void gemu_log(const char *fmt, ...)
va_end(ap);
}
-void cpu_outb(CPUState *env, int addr, int val)
-{
- fprintf(stderr, "outb: port=0x%04x, data=%02x\n", addr, val);
-}
-
-void cpu_outw(CPUState *env, int addr, int val)
-{
- fprintf(stderr, "outw: port=0x%04x, data=%04x\n", addr, val);
-}
-
-void cpu_outl(CPUState *env, int addr, int val)
-{
- fprintf(stderr, "outl: port=0x%04x, data=%08x\n", addr, val);
-}
-
-int cpu_inb(CPUState *env, int addr)
-{
- fprintf(stderr, "inb: port=0x%04x\n", addr);
- return 0;
-}
-
-int cpu_inw(CPUState *env, int addr)
-{
- fprintf(stderr, "inw: port=0x%04x\n", addr);
- return 0;
-}
-
-int cpu_inl(CPUState *env, int addr)
-{
- fprintf(stderr, "inl: port=0x%04x\n", addr);
- return 0;
-}
-
#if defined(TARGET_I386)
int cpu_get_pic_interrupt(CPUState *env)
{
diff --git a/tests/Makefile b/tests/Makefile
index 326b733..69092e5 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -78,9 +78,9 @@ runcom: runcom.c
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $<
# NOTE: -fomit-frame-pointer is currently needed : this is a bug in libqemu
-qruncom: qruncom.c ../i386-user/libqemu.a
+qruncom: qruncom.c ../ioport-user.c ../i386-user/libqemu.a
$(CC) $(CFLAGS) -fomit-frame-pointer $(LDFLAGS) -I../target-i386 -I..
-I../i386-user -I../fpu \
- -o $@ $< -L../i386-user -lqemu -lm
+ -o $@ $(filter %.c, $^) -L../i386-user -lqemu -lm
# arm test
hello-arm: hello-arm.o
diff --git a/tests/qruncom.c b/tests/qruncom.c
index 5e503bc..a8d0ef6 100644
--- a/tests/qruncom.c
+++ b/tests/qruncom.c
@@ -16,39 +16,6 @@
//#define SIGTEST
-void cpu_outb(CPUState *env, int addr, int val)
-{
- fprintf(stderr, "outb: port=0x%04x, data=%02x\n", addr, val);
-}
-
-void cpu_outw(CPUState *env, int addr, int val)
-{
- fprintf(stderr, "outw: port=0x%04x, data=%04x\n", addr, val);
-}
-
-void cpu_outl(CPUState *env, int addr, int val)
-{
- fprintf(stderr, "outl: port=0x%04x, data=%08x\n", addr, val);
-}
-
-int cpu_inb(CPUState *env, int addr)
-{
- fprintf(stderr, "inb: port=0x%04x\n", addr);
- return 0;
-}
-
-int cpu_inw(CPUState *env, int addr)
-{
- fprintf(stderr, "inw: port=0x%04x\n", addr);
- return 0;
-}
-
-int cpu_inl(CPUState *env, int addr)
-{
- fprintf(stderr, "inl: port=0x%04x\n", addr);
- return 0;
-}
-
int cpu_get_pic_interrupt(CPUState *env)
{
return -1;
--
1.6.0.2
- [Qemu-devel] [PATCH 0/6] ioport related clean ups. V3, Isaku Yamahata, 2009/07/10
- [Qemu-devel] [PATCH 1/6] split out ioport related stuffs from vl.c into ioport.c., Isaku Yamahata, 2009/07/10
- [Qemu-devel] [PATCH 3/6] ioport: consolidate duplicated logic in register_ioport_{read, write}()., Isaku Yamahata, 2009/07/10
- [Qemu-devel] [PATCH 4/6] ioport: remove some #ifdef DEBUG_UNUSED_IOPORT., Isaku Yamahata, 2009/07/10
- [Qemu-devel] [PATCH 5/6] consolidate user cpu_{in, out}[bwl] into ioport-user.c,
Isaku Yamahata <=
- [Qemu-devel] [PATCH 6/6] use uint{32, 16, 8}_t for ioport value and uint16_t for ioport address., Isaku Yamahata, 2009/07/10
- [Qemu-devel] [PATCH 2/6] use constant IOPORTS_MASK instead of 0xffff., Isaku Yamahata, 2009/07/10
- Re: [Qemu-devel] [PATCH 0/6] ioport related clean ups. V3, Anthony Liguori, 2009/07/10