diff options
author | peter <peter@FreeBSD.org> | 1996-06-17 18:52:53 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 1996-06-17 18:52:53 +0000 |
commit | de8c38805bf8b9c5c5dc52b766ddf752362efc16 (patch) | |
tree | 2861a5edf04e137ca41dd5e81262a68e3968fa09 /sys | |
parent | 28e5db027122e5f7684d09362a425f63bbc5c4a2 (diff) | |
download | FreeBSD-src-de8c38805bf8b9c5c5dc52b766ddf752362efc16.zip FreeBSD-src-de8c38805bf8b9c5c5dc52b766ddf752362efc16.tar.gz |
This time, get rid of the struct copies that were really causing gcc to
call memcpy.. It seems that gcc would not inline the implicit call
when copying from a volatile...
Diffstat (limited to 'sys')
-rw-r--r-- | sys/dev/si/si.c | 8 | ||||
-rw-r--r-- | sys/i386/isa/si.c | 8 |
2 files changed, 8 insertions, 8 deletions
diff --git a/sys/dev/si/si.c b/sys/dev/si/si.c index b249edd..c74612a 100644 --- a/sys/dev/si/si.c +++ b/sys/dev/si/si.c @@ -30,7 +30,7 @@ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN * NO EVENT SHALL THE AUTHORS BE LIABLE. * - * $Id: si.c,v 1.43 1996/06/12 05:03:50 gpalmer Exp $ + * $Id: si.c,v 1.44 1996/06/16 13:32:16 peter Exp $ */ #ifndef lint @@ -1383,15 +1383,15 @@ si_Sioctl(dev_t dev, int cmd, caddr_t data, int flag, struct proc *p) /* these next three use a different structure */ case TCSI_PORT: SUCHECK; - sps->tc_siport = *xpp; + bcopy(xpp, &sps->tc_siport, sizeof(sps->tc_siport)); break; case TCSI_CCB: SUCHECK; - sps->tc_ccb = *xpp->sp_ccb; + bcopy((char *)xpp->sp_ccb, &sps->tc_ccb, sizeof(sps->tc_ccb)); break; case TCSI_TTY: SUCHECK; - sps->tc_tty = *xpp->sp_tty; + bcopy(xpp->sp_tty, &sps->tc_tty, sizeof(sps->tc_tty)); break; default: error = EINVAL; diff --git a/sys/i386/isa/si.c b/sys/i386/isa/si.c index b249edd..c74612a 100644 --- a/sys/i386/isa/si.c +++ b/sys/i386/isa/si.c @@ -30,7 +30,7 @@ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN * NO EVENT SHALL THE AUTHORS BE LIABLE. * - * $Id: si.c,v 1.43 1996/06/12 05:03:50 gpalmer Exp $ + * $Id: si.c,v 1.44 1996/06/16 13:32:16 peter Exp $ */ #ifndef lint @@ -1383,15 +1383,15 @@ si_Sioctl(dev_t dev, int cmd, caddr_t data, int flag, struct proc *p) /* these next three use a different structure */ case TCSI_PORT: SUCHECK; - sps->tc_siport = *xpp; + bcopy(xpp, &sps->tc_siport, sizeof(sps->tc_siport)); break; case TCSI_CCB: SUCHECK; - sps->tc_ccb = *xpp->sp_ccb; + bcopy((char *)xpp->sp_ccb, &sps->tc_ccb, sizeof(sps->tc_ccb)); break; case TCSI_TTY: SUCHECK; - sps->tc_tty = *xpp->sp_tty; + bcopy(xpp->sp_tty, &sps->tc_tty, sizeof(sps->tc_tty)); break; default: error = EINVAL; |