mirror of
https://git.FreeBSD.org/src.git
synced 2025-01-17 15:27:36 +00:00
Don't put operands in clobber lists, since this is dubious for old
versions of gcc and broken for current versions of egcs. Submitted by: "John S. Dyson" <dyson@iquest.net> but rewritten by me
This commit is contained in:
parent
1e7bb3a362
commit
896763fa9e
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=42427
@ -30,7 +30,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: cpufunc.h,v 1.83 1999/01/08 19:17:45 bde Exp $
|
||||
* $Id: cpufunc.h,v 1.84 1999/01/08 19:51:02 bde Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -194,24 +194,27 @@ static __inline void
|
||||
insb(u_int port, void *addr, size_t cnt)
|
||||
{
|
||||
__asm __volatile("cld; rep; insb"
|
||||
: : "d" (port), "D" (addr), "c" (cnt)
|
||||
: "di", "cx", "memory");
|
||||
: "=D" (addr), "=c" (cnt)
|
||||
: "0" (addr), "1" (cnt), "d" (port)
|
||||
: "memory");
|
||||
}
|
||||
|
||||
static __inline void
|
||||
insw(u_int port, void *addr, size_t cnt)
|
||||
{
|
||||
__asm __volatile("cld; rep; insw"
|
||||
: : "d" (port), "D" (addr), "c" (cnt)
|
||||
: "di", "cx", "memory");
|
||||
: "=D" (addr), "=c" (cnt)
|
||||
: "0" (addr), "1" (cnt), "d" (port)
|
||||
: "memory");
|
||||
}
|
||||
|
||||
static __inline void
|
||||
insl(u_int port, void *addr, size_t cnt)
|
||||
{
|
||||
__asm __volatile("cld; rep; insl"
|
||||
: : "d" (port), "D" (addr), "c" (cnt)
|
||||
: "di", "cx", "memory");
|
||||
: "=D" (addr), "=c" (cnt)
|
||||
: "0" (addr), "1" (cnt), "d" (port)
|
||||
: "memory");
|
||||
}
|
||||
|
||||
static __inline void
|
||||
@ -324,24 +327,24 @@ static __inline void
|
||||
outsb(u_int port, const void *addr, size_t cnt)
|
||||
{
|
||||
__asm __volatile("cld; rep; outsb"
|
||||
: : "d" (port), "S" (addr), "c" (cnt)
|
||||
: "si", "cx");
|
||||
: "=S" (addr), "=c" (cnt)
|
||||
: "0" (addr), "1" (cnt), "d" (port));
|
||||
}
|
||||
|
||||
static __inline void
|
||||
outsw(u_int port, const void *addr, size_t cnt)
|
||||
{
|
||||
__asm __volatile("cld; rep; outsw"
|
||||
: : "d" (port), "S" (addr), "c" (cnt)
|
||||
: "si", "cx");
|
||||
: "=S" (addr), "=c" (cnt)
|
||||
: "0" (addr), "1" (cnt), "d" (port));
|
||||
}
|
||||
|
||||
static __inline void
|
||||
outsl(u_int port, const void *addr, size_t cnt)
|
||||
{
|
||||
__asm __volatile("cld; rep; outsl"
|
||||
: : "d" (port), "S" (addr), "c" (cnt)
|
||||
: "si", "cx");
|
||||
: "=S" (addr), "=c" (cnt)
|
||||
: "0" (addr), "1" (cnt), "d" (port));
|
||||
}
|
||||
|
||||
static __inline void
|
||||
|
@ -30,7 +30,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: cpufunc.h,v 1.83 1999/01/08 19:17:45 bde Exp $
|
||||
* $Id: cpufunc.h,v 1.84 1999/01/08 19:51:02 bde Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -194,24 +194,27 @@ static __inline void
|
||||
insb(u_int port, void *addr, size_t cnt)
|
||||
{
|
||||
__asm __volatile("cld; rep; insb"
|
||||
: : "d" (port), "D" (addr), "c" (cnt)
|
||||
: "di", "cx", "memory");
|
||||
: "=D" (addr), "=c" (cnt)
|
||||
: "0" (addr), "1" (cnt), "d" (port)
|
||||
: "memory");
|
||||
}
|
||||
|
||||
static __inline void
|
||||
insw(u_int port, void *addr, size_t cnt)
|
||||
{
|
||||
__asm __volatile("cld; rep; insw"
|
||||
: : "d" (port), "D" (addr), "c" (cnt)
|
||||
: "di", "cx", "memory");
|
||||
: "=D" (addr), "=c" (cnt)
|
||||
: "0" (addr), "1" (cnt), "d" (port)
|
||||
: "memory");
|
||||
}
|
||||
|
||||
static __inline void
|
||||
insl(u_int port, void *addr, size_t cnt)
|
||||
{
|
||||
__asm __volatile("cld; rep; insl"
|
||||
: : "d" (port), "D" (addr), "c" (cnt)
|
||||
: "di", "cx", "memory");
|
||||
: "=D" (addr), "=c" (cnt)
|
||||
: "0" (addr), "1" (cnt), "d" (port)
|
||||
: "memory");
|
||||
}
|
||||
|
||||
static __inline void
|
||||
@ -324,24 +327,24 @@ static __inline void
|
||||
outsb(u_int port, const void *addr, size_t cnt)
|
||||
{
|
||||
__asm __volatile("cld; rep; outsb"
|
||||
: : "d" (port), "S" (addr), "c" (cnt)
|
||||
: "si", "cx");
|
||||
: "=S" (addr), "=c" (cnt)
|
||||
: "0" (addr), "1" (cnt), "d" (port));
|
||||
}
|
||||
|
||||
static __inline void
|
||||
outsw(u_int port, const void *addr, size_t cnt)
|
||||
{
|
||||
__asm __volatile("cld; rep; outsw"
|
||||
: : "d" (port), "S" (addr), "c" (cnt)
|
||||
: "si", "cx");
|
||||
: "=S" (addr), "=c" (cnt)
|
||||
: "0" (addr), "1" (cnt), "d" (port));
|
||||
}
|
||||
|
||||
static __inline void
|
||||
outsl(u_int port, const void *addr, size_t cnt)
|
||||
{
|
||||
__asm __volatile("cld; rep; outsl"
|
||||
: : "d" (port), "S" (addr), "c" (cnt)
|
||||
: "si", "cx");
|
||||
: "=S" (addr), "=c" (cnt)
|
||||
: "0" (addr), "1" (cnt), "d" (port));
|
||||
}
|
||||
|
||||
static __inline void
|
||||
|
Loading…
Reference in New Issue
Block a user