svn commit: r323346 - in head/sys: powerpc/powerpc riscv/riscv
Mateusz Guzik
mjg at FreeBSD.org
Sat Sep 9 05:56:05 UTC 2017
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;
}
More information about the svn-src-head
mailing list