From 6b64191106984d0429dcb8e90e32f2092d12db16 Mon Sep 17 00:00:00 2001 From: mrg Date: Thu, 6 Apr 2000 12:49:00 +0000 Subject: [PATCH] add some more casts to shut up gcc. --- sys/arch/sparc64/sparc64/emul.c | 24 +++++++-------- sys/arch/sparc64/sparc64/openfirm.c | 12 ++++---- sys/arch/sparc64/sparc64/pmap.c | 48 ++++++++++++++++------------- 3 files changed, 44 insertions(+), 40 deletions(-) diff --git a/sys/arch/sparc64/sparc64/emul.c b/sys/arch/sparc64/sparc64/emul.c index a0d1ca092a55..365f66105a32 100644 --- a/sys/arch/sparc64/sparc64/emul.c +++ b/sys/arch/sparc64/sparc64/emul.c @@ -1,4 +1,4 @@ -/* $NetBSD: emul.c,v 1.5 1999/11/06 20:18:50 eeh Exp $ */ +/* $NetBSD: emul.c,v 1.6 2000/04/06 12:49:00 mrg Exp $ */ /*- * Copyright (c) 1997 The NetBSD Foundation, Inc. @@ -52,8 +52,8 @@ # define DPRINTF(a) #endif -#define GPR(tf, i) ((int32_t *) &tf->tf_global)[i] -#define IPR(tf, i) ((int32_t *) tf->tf_out[6])[i - 16] +#define GPR(tf, i) ((int32_t *)(u_long)&tf->tf_global)[i] +#define IPR(tf, i) ((int32_t *)(u_long)tf->tf_out[6])[i - 16] #define FPR(p, i) ((int32_t) p->p_md.md_fpstate->fs_regs[i]) static __inline int readgpreg __P((struct trapframe64 *, int, void *)); @@ -209,17 +209,17 @@ muldiv(tf, code, rd, rs1, rs2) tf->tf_tstate &= ~(TSTATE_CCR); if (*rd == 0) - tf->tf_tstate |= (ICC_Z|XCC_Z) << TSTATE_CCR_SHIFT; + tf->tf_tstate |= (u_int64_t)(ICC_Z|XCC_Z) << TSTATE_CCR_SHIFT; else { if (op.bits.sgn && *rd < 0) - tf->tf_tstate |= (ICC_N|XCC_N) << TSTATE_CCR_SHIFT; + tf->tf_tstate |= (u_int64_t)(ICC_N|XCC_N) << TSTATE_CCR_SHIFT; if (op.bits.div) { if (*rd * *rs2 != *rs1) - tf->tf_tstate |= (ICC_V|XCC_V) << TSTATE_CCR_SHIFT; + tf->tf_tstate |= (u_int64_t)(ICC_V|XCC_V) << TSTATE_CCR_SHIFT; } else { if (*rd / *rs2 != *rs1) - tf->tf_tstate |= (ICC_V|XCC_V) << TSTATE_CCR_SHIFT; + tf->tf_tstate |= (u_int64_t)(ICC_V|XCC_V) << TSTATE_CCR_SHIFT; } } } @@ -268,7 +268,7 @@ fixalign(p, tf) int error; /* fetch and check the instruction that caused the fault */ - error = copyin((caddr_t) tf->tf_pc, &code.i_int, sizeof(code.i_int)); + error = copyin((caddr_t)(u_long)tf->tf_pc, &code.i_int, sizeof(code.i_int)); if (error != 0) { DPRINTF(("fixalign: Bad instruction fetch\n")); return EINVAL; @@ -345,13 +345,13 @@ fixalign(p, tf) } if (size == 2) - return copyout(&data.s[1], (caddr_t) rs1, size); + return copyout(&data.s[1], (caddr_t)(u_long)rs1, size); else - return copyout(&data.d, (caddr_t) rs1, size); + return copyout(&data.d, (caddr_t)(u_long)rs1, size); } else { /* load */ if (size == 2) { - error = copyin((caddr_t) rs1, &data.s[1], size); + error = copyin((caddr_t)(u_long)rs1, &data.s[1], size); if (error) return error; @@ -362,7 +362,7 @@ fixalign(p, tf) data.s[0] = 0; } else - error = copyin((caddr_t) rs1, &data.d, size); + error = copyin((caddr_t)(u_long)rs1, &data.d, size); if (error) return error; diff --git a/sys/arch/sparc64/sparc64/openfirm.c b/sys/arch/sparc64/sparc64/openfirm.c index 67d5adb8cd2b..0703dfd53157 100644 --- a/sys/arch/sparc64/sparc64/openfirm.c +++ b/sys/arch/sparc64/sparc64/openfirm.c @@ -1,4 +1,4 @@ -/* $NetBSD: openfirm.c,v 1.8 1999/10/31 15:22:32 mrg Exp $ */ +/* $NetBSD: openfirm.c,v 1.9 2000/04/06 12:49:00 mrg Exp $ */ /* * Copyright (C) 1995, 1996 Wolfgang Solfrank. @@ -458,7 +458,7 @@ OF_read(handle, addr, len) args.nreturns = 1; args.ihandle = HDL2CELL(handle); args.addr = ADR2CELL(addr); - for (; len > 0; len -= l, addr += l) { + for (; len > 0; len -= l, (char *)addr += l) { l = min(NBPG, len); args.len = l; if (openfirmware(&args) == -1) @@ -507,7 +507,7 @@ Debugger(); panic("OF_write"); #endif } - for (; len > 0; len -= l, addr += l) { + for (; len > 0; len -= l, (char *)addr += l) { l = min(NBPG, len); args.len = l; if (openfirmware(&args) == -1) @@ -615,8 +615,8 @@ OF_poweroff() } void -(*OF_set_callback(newfunc))() - void (*newfunc)(); +(*OF_set_callback(newfunc))(void *) + void (*newfunc)(void *); { struct { cell_t name; @@ -690,7 +690,7 @@ void OF_sym2val(cells) args->result = -1; return; } - symbol = (db_sym_t)args->symbol; + symbol = (db_sym_t)(u_long)args->symbol; prom_printf("looking up symbol %s\n", symbol); db_symbol_values(symbol, (char**)NULL, &value); args->result = 0; diff --git a/sys/arch/sparc64/sparc64/pmap.c b/sys/arch/sparc64/sparc64/pmap.c index f9697b11c5d1..db691648c6db 100644 --- a/sys/arch/sparc64/sparc64/pmap.c +++ b/sys/arch/sparc64/sparc64/pmap.c @@ -1,4 +1,4 @@ -/* $NetBSD: pmap.c,v 1.48 2000/03/16 02:37:00 eeh Exp $ */ +/* $NetBSD: pmap.c,v 1.49 2000/04/06 12:49:00 mrg Exp $ */ #undef NO_VCACHE /* Don't forget the locked TLB in dostart */ #define HWREF 1 #undef BOOT_DEBUG @@ -244,7 +244,9 @@ static int pmap_initialized; int avail_start, avail_end; /* These are used by ps & family */ static int ptelookup_va __P((vaddr_t va)); /* sun4u */ +#if notyet static void tsb_enter __P((int ctx, int64_t va, int64_t data)); +#endif static void pmap_pinit __P((struct pmap *)); static void pmap_release __P((pmap_t)); @@ -893,7 +895,7 @@ pmap_bootstrap(kernelstart, kernelend, maxctx) pmap_get_page(&newp); pmap_zero_page(newp); } while (!newp); /* Throw away page zero */ - pmap_kernel()->pm_segs=(paddr_t*)newp; + pmap_kernel()->pm_segs=(paddr_t *)(u_long)newp; pmap_kernel()->pm_physaddr = newp; /* mark kernel context as busy */ ((paddr_t*)ctxbusy)[0] = (int)pmap_kernel()->pm_physaddr; @@ -1128,7 +1130,7 @@ pmap_pinit(pm) } pm->pm_physaddr = (paddr_t)VM_PAGE_TO_PHYS(page); pmap_zero_page(pm->pm_physaddr); - pm->pm_segs = (paddr_t*)pm->pm_physaddr; + pm->pm_segs = (paddr_t *)(u_long)pm->pm_physaddr; if (!pm->pm_physaddr) panic("pmap_pinit"); #ifdef NOTDEF_DEBUG printf("pmap_pinit: segs %p == %p\n", pm->pm_segs, (void*)page->phys_addr); @@ -1189,18 +1191,18 @@ pmap_release(pm) for(i=0; ipm_segs[i], ASI_PHYS_CACHED))) { for (k=0; kpm_ctx, va, tte.data.data); ASSERT((tsb[i].data.data & TLB_NFO) == 0); -#if 1 #if 1 /* this is correct */ dcache_flush_page(va); @@ -1479,7 +1480,6 @@ pmap_kenter_pa(va, pa, prot) /* Go totally crazy */ blast_vcache(); #endif -#endif } #endif @@ -1621,9 +1621,9 @@ pmap_enter(pm, va, pa, prot, flags) int flags; { pte_t tte; - int s, i, aliased = 0; - register pv_entry_t pv=NULL, npv; paddr_t pg; + int i, aliased = 0; + pv_entry_t pv = NULL; int size = 0; /* PMAP_SZ_TO_TTE(pa); */ boolean_t wired = (flags & PMAP_WIRED) != 0; @@ -1691,7 +1691,10 @@ pmap_enter(pm, va, pa, prot, flags) #ifdef DEBUG enter_stats.ci ++; #endif -/* tte.tag.tag = TSB_TAG(0,pm->pm_ctx,va); /* Not used any more. */ + /* + * Not used any more. + tte.tag.tag = TSB_TAG(0,pm->pm_ctx,va); + */ tte.data.data = TSB_DATA(0, size, pa, pm == pmap_kernel(), (flags & VM_PROT_WRITE), (!(pa & PMAP_NC)),aliased,1,(pa & PMAP_LITTLE)); @@ -1733,14 +1736,16 @@ pmap_enter(pm, va, pa, prot, flags) } #if 1 - if (pv) pmap_enter_pv(pm, va, pa); + if (pv) + pmap_enter_pv(pm, va, pa); #else if (pv) { /* * Enter the pmap and virtual address into the * physical to virtual map table. */ - s = splimp(); + int npv; + int s = splimp(); #ifdef DEBUG if (pmapdebug & PDB_ENTER) printf("pmap_enter: pv %x: was %x/%x/%x ", @@ -2431,7 +2436,9 @@ ptelookup_va(va) return (tsbptr/sizeof(pte_t)); } -void tsb_enter(ctx, va, data) +#if notyet +void +tsb_enter(ctx, va, data) int ctx; int64_t va; int64_t data; @@ -2453,6 +2460,7 @@ void tsb_enter(ctx, va, data) tlb_flush_pte(va, ctx); /* Force reload -- protections may be changed */ splx(s); } +#endif /* * Do whatever is needed to sync the MOD/REF flags @@ -2540,9 +2548,6 @@ pmap_clear_modify(pg) printf("pmap_clear_modify(): %p still modified!\n", pg); Debugger(); } -#endif -out: -#ifdef DEBUG if (pmapdebug & (PDB_CHANGEPROT|PDB_REF)) printf("pmap_clear_modify: page %lx %s\n", (long)pa, (changed?"was modified":"was not modified")); @@ -2642,9 +2647,6 @@ pmap_clear_reference(pg) printf("pmap_clear_reference(): %p still referenced!\n", pg); Debugger(); } -#endif -out: -#ifdef DEBUG if (pmapdebug & (PDB_CHANGEPROT|PDB_REF)) printf("pmap_clear_reference: page %lx %s\n", (long)pa, (changed?"was referenced":"was not referenced")); @@ -3028,7 +3030,9 @@ pmap_page_protect(pg, prot) pv->pv_pmap = NULL; pv->pv_next = NULL; } +#if 0 skipit: +#endif } splx(s); }