Author: mjg
Date: Sat Sep  9 05:56:04 2017
New Revision: 323346
URL: https://svnweb.freebsd.org/changeset/base/323346

Log:
  Fix riscv and powerpc compilation after r323329.
  
  On these archs bzero is a C function, which triggers a compilation error
  as the compiler tries to expand the macro.

Modified:
  head/sys/powerpc/powerpc/machdep.c
  head/sys/riscv/riscv/machdep.c

Modified: head/sys/powerpc/powerpc/machdep.c
==============================================================================
--- head/sys/powerpc/powerpc/machdep.c  Sat Sep  9 05:50:47 2017        
(r323345)
+++ head/sys/powerpc/powerpc/machdep.c  Sat Sep  9 05:56:04 2017        
(r323346)
@@ -417,43 +417,6 @@ powerpc_init(vm_offset_t fdt, vm_offset_t toc, vm_offs
            (sizeof(struct callframe) - 3*sizeof(register_t))) & ~15UL);
 }
 
-void
-bzero(void *buf, size_t len)
-{
-       caddr_t p;
-
-       p = buf;
-
-       while (((vm_offset_t) p & (sizeof(u_long) - 1)) && len) {
-               *p++ = 0;
-               len--;
-       }
-
-       while (len >= sizeof(u_long) * 8) {
-               *(u_long*) p = 0;
-               *((u_long*) p + 1) = 0;
-               *((u_long*) p + 2) = 0;
-               *((u_long*) p + 3) = 0;
-               len -= sizeof(u_long) * 8;
-               *((u_long*) p + 4) = 0;
-               *((u_long*) p + 5) = 0;
-               *((u_long*) p + 6) = 0;
-               *((u_long*) p + 7) = 0;
-               p += sizeof(u_long) * 8;
-       }
-
-       while (len >= sizeof(u_long)) {
-               *(u_long*) p = 0;
-               len -= sizeof(u_long);
-               p += sizeof(u_long);
-       }
-
-       while (len) {
-               *p++ = 0;
-               len--;
-       }
-}
-
 /*
  * Flush the D-cache for non-DMA I/O so that the I-cache can
  * be made coherent later.
@@ -555,3 +518,41 @@ DB_SHOW_COMMAND(spr, db_show_spr)
            (unsigned long)spr);
 }
 #endif
+
+#undef bzero
+void
+bzero(void *buf, size_t len)
+{
+       caddr_t p;
+
+       p = buf;
+
+       while (((vm_offset_t) p & (sizeof(u_long) - 1)) && len) {
+               *p++ = 0;
+               len--;
+       }
+
+       while (len >= sizeof(u_long) * 8) {
+               *(u_long*) p = 0;
+               *((u_long*) p + 1) = 0;
+               *((u_long*) p + 2) = 0;
+               *((u_long*) p + 3) = 0;
+               len -= sizeof(u_long) * 8;
+               *((u_long*) p + 4) = 0;
+               *((u_long*) p + 5) = 0;
+               *((u_long*) p + 6) = 0;
+               *((u_long*) p + 7) = 0;
+               p += sizeof(u_long) * 8;
+       }
+
+       while (len >= sizeof(u_long)) {
+               *(u_long*) p = 0;
+               len -= sizeof(u_long);
+               p += sizeof(u_long);
+       }
+
+       while (len) {
+               *p++ = 0;
+               len--;
+       }
+}

Modified: head/sys/riscv/riscv/machdep.c
==============================================================================
--- head/sys/riscv/riscv/machdep.c      Sat Sep  9 05:50:47 2017        
(r323345)
+++ head/sys/riscv/riscv/machdep.c      Sat Sep  9 05:56:04 2017        
(r323346)
@@ -151,16 +151,6 @@ cpu_idle_wakeup(int cpu)
        return (0);
 }
 
-void
-bzero(void *buf, size_t len)
-{
-       uint8_t *p;
-
-       p = buf;
-       while(len-- > 0)
-               *p++ = 0;
-}
-
 int
 fill_regs(struct thread *td, struct reg *regs)
 {
@@ -890,4 +880,15 @@ initriscv(struct riscv_bootparams *rvbp)
        riscv_init_interrupts();
 
        early_boot = 0;
+}
+
+#undef bzero
+void
+bzero(void *buf, size_t len)
+{
+       uint8_t *p;
+
+       p = buf;
+       while(len-- > 0)
+               *p++ = 0;
 }
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to