From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LDmAb-0004Vm-Va for qemu-devel@nongnu.org; Fri, 19 Dec 2008 15:42:02 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LDmAb-0004Ur-4S for qemu-devel@nongnu.org; Fri, 19 Dec 2008 15:42:01 -0500 Received: from [199.232.76.173] (port=60193 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LDmAb-0004Uj-0V for qemu-devel@nongnu.org; Fri, 19 Dec 2008 15:42:01 -0500 Received: from moutng.kundenserver.de ([212.227.126.186]:64004) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1LDmAa-0002Hs-DR for qemu-devel@nongnu.org; Fri, 19 Dec 2008 15:42:00 -0500 Received: from localhost ([127.0.0.1] ident=stefan) by flocke.weilnetz.de with esmtp (Exim 4.69) (envelope-from ) id 1LDmAX-0001cB-HO for qemu-devel@nongnu.org; Fri, 19 Dec 2008 21:41:57 +0100 Message-ID: <494C0715.2030307@mail.berlios.de> Date: Fri, 19 Dec 2008 21:41:57 +0100 From: Stefan Weil MIME-Version: 1.0 Subject: [Qemu-devel] [PATCH] Fix remaining compiler warnings for mips targets Content-Type: multipart/mixed; boundary="------------050308050105000400090409" Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: QEMU Developers This is a multi-part message in MIME format. --------------050308050105000400090409 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 7bit This patch allows compilation of mips targets using compiler option -Werror. I had to change these code locations to fix all compiler warnings: * Move some declarations from target-mips/exec.h to target-mips/cpu.h. * Use cpu_loop_exit() in cpu-exec.c (like other targets). This is also an optimization. * Declare several functions static in mips-dis.c and put unused code in #if 0 ... #endif. * Remove unused code in target-mips/helper.c. * More code in target-mips/op_helper.c is only needed for system emulation. The patch does not add the option -Werror because I noticed that this was reverted for other Qemu targets (r6030). Regards Stefan Weil --------------050308050105000400090409 Content-Type: text/x-diff; name="fix-mips-warnings.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="fix-mips-warnings.patch" fix remaining compiler warnings for mips targets Signed-off-by: Stefan Weil Index: trunk/cpu-exec.c =================================================================== --- trunk.orig/cpu-exec.c 2008-12-19 20:54:31.000000000 +0100 +++ trunk/cpu-exec.c 2008-12-19 20:54:40.000000000 +0100 @@ -1008,7 +1008,7 @@ /* we restore the process signal mask as the sigreturn should do it (XXX: use sigsetjmp) */ sigprocmask(SIG_SETMASK, old_set, NULL); - do_raise_exception_err(env->exception_index, env->error_code); + cpu_loop_exit(); } else { /* activate soft MMU for this block */ cpu_resume_from_signal(env, puc); Index: trunk/target-mips/cpu.h =================================================================== --- trunk.orig/target-mips/cpu.h 2008-12-19 20:54:31.000000000 +0100 +++ trunk/target-mips/cpu.h 2008-12-19 21:19:32.000000000 +0100 @@ -561,9 +561,26 @@ int cpu_mips_exec(CPUMIPSState *s); CPUMIPSState *cpu_mips_init(const char *cpu_model); -uint32_t cpu_mips_get_clock (void); +//~ uint32_t cpu_mips_get_clock (void); int cpu_mips_signal_handler(int host_signum, void *pinfo, void *puc); +/* mips_timer.c */ +uint32_t cpu_mips_get_random (CPUState *env); +uint32_t cpu_mips_get_count (CPUState *env); +void cpu_mips_store_count (CPUState *env, uint32_t value); +void cpu_mips_store_compare (CPUState *env, uint32_t value); +void cpu_mips_start_count(CPUState *env); +void cpu_mips_stop_count(CPUState *env); + +/* mips_int.c */ +void cpu_mips_update_irq (CPUState *env); + +/* helper.c */ +int cpu_mips_handle_mmu_fault (CPUState *env, target_ulong address, int rw, + int mmu_idx, int is_softmmu); +void do_interrupt (CPUState *env); +void r4k_invalidate_tlb (CPUState *env, int idx, int use_extra); + static inline void cpu_pc_from_tb(CPUState *env, TranslationBlock *tb) { env->active_tc.PC = tb->pc; Index: trunk/target-mips/exec.h =================================================================== --- trunk.orig/target-mips/exec.h 2008-12-19 20:54:31.000000000 +0100 +++ trunk/target-mips/exec.h 2008-12-19 20:54:40.000000000 +0100 @@ -24,21 +24,6 @@ int (*fpu_fprintf)(FILE *f, const char *fmt, ...), int flags); -int cpu_mips_handle_mmu_fault (CPUState *env, target_ulong address, int rw, - int mmu_idx, int is_softmmu); -void do_interrupt (CPUState *env); -void r4k_invalidate_tlb (CPUState *env, int idx, int use_extra); - -void do_raise_exception_err (uint32_t exception, int error_code); -void do_raise_exception (uint32_t exception); - -uint32_t cpu_mips_get_random (CPUState *env); -uint32_t cpu_mips_get_count (CPUState *env); -void cpu_mips_store_count (CPUState *env, uint32_t value); -void cpu_mips_store_compare (CPUState *env, uint32_t value); -void cpu_mips_start_count(CPUState *env); -void cpu_mips_stop_count(CPUState *env); -void cpu_mips_update_irq (CPUState *env); void cpu_mips_clock_init (CPUState *env); void cpu_mips_tlb_flush (CPUState *env, int flush_global); Index: trunk/mips-dis.c =================================================================== --- trunk.orig/mips-dis.c 2008-12-19 20:54:31.000000000 +0100 +++ trunk/mips-dis.c 2008-12-19 20:54:40.000000000 +0100 @@ -3272,7 +3272,7 @@ return c; } -void +static void set_default_mips_dis_options (struct disassemble_info *info) { const struct mips_arch_choice *chosen_arch; @@ -3321,7 +3321,7 @@ #endif } -void +static void parse_mips_dis_option (const char *option, unsigned int len) { unsigned int i, optionlen, vallen; @@ -4809,7 +4809,6 @@ abort (); } } -#endif void print_mips_disassembler_options (FILE *stream) @@ -4863,3 +4862,4 @@ fprintf (stream, _("\n")); } +#endif Index: trunk/target-mips/helper.c =================================================================== --- trunk.orig/target-mips/helper.c 2008-12-19 20:54:31.000000000 +0100 +++ trunk/target-mips/helper.c 2008-12-19 20:54:40.000000000 +0100 @@ -220,10 +220,6 @@ } } -void cpu_mips_init_mmu (CPUState *env) -{ -} - int cpu_mips_handle_mmu_fault (CPUState *env, target_ulong address, int rw, int mmu_idx, int is_softmmu) { Index: trunk/target-mips/op_helper.c =================================================================== --- trunk.orig/target-mips/op_helper.c 2008-12-19 20:54:31.000000000 +0100 +++ trunk/target-mips/op_helper.c 2008-12-19 21:14:04.000000000 +0100 @@ -54,7 +54,8 @@ } } -void do_restore_state (void *pc_ptr) +#if !defined(CONFIG_USER_ONLY) +static void do_restore_state (void *pc_ptr) { TranslationBlock *tb; unsigned long pc = (unsigned long) pc_ptr; @@ -64,6 +65,7 @@ cpu_restore_state (tb, env, pc, NULL); } } +#endif target_ulong do_clo (target_ulong t0) { @@ -1356,7 +1358,6 @@ { fprintf(logfile, "Raise pending IRQs\n"); } -#endif /* !CONFIG_USER_ONLY */ /* MIPS MT functions */ target_ulong do_mftgpr(uint32_t sel) @@ -1495,6 +1496,7 @@ return t0; } +#endif /* !CONFIG_USER_ONLY */ void do_fork(target_ulong t0, target_ulong t1) { --------------050308050105000400090409--