xref: /original-bsd/sys/tahoe/align/Aput_long.c (revision b7cc7b86)
1 /*-
2  * Copyright (c) 1986 The Regents of the University of California.
3  * All rights reserved.
4  *
5  * This code is derived from software contributed to Berkeley by
6  * Computer Consoles Inc.
7  *
8  * %sccs.include.redist.c%
9  *
10  *	@(#)Aput_long.c	7.1 (Berkeley) 12/06/90
11  */
12 
13 #include	"align.h"
14 
15 put_longword (infop, longword, where)
16 register	process_info	*infop;
17 register	char		*where;
18 register	long		longword;
19 /*
20 /*	Put the longword at the given address in memory.
21 /*	Caveat: It's quite difficult to find a pte reference
22 /*		fault.  So I took the easy way out and just signal
23 /*		an illegal access.
24 /*
25 /**************************************************/
26 {
27 	register long code;
28 
29 	code = writeable(infop, where, 4);
30 	if ( code == TRUE ) {
31 		*where++ = longword>>24;
32 		*where++ = longword>>16;
33 		*where++ = longword>>8;
34 		*where = longword;
35 	} else exception (infop, ILL_ACCESS, where, code);
36 }
37