summaryrefslogtreecommitdiffstats
path: root/sys/arch/powerpc/include/endian.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* make [bl]emtoh{16,32,64} take volatile const foo *, not volatile foo *dlg2014-10-221-4/+4
| | | | | | while in the manpage add volatile where the code has it too. ok miod@ guenther@
* Tackle the endian.h mess. Make it so that:guenther2014-07-121-2/+5
| | | | | | | | | | | | | | | | | | * you can #include <sys/endian.h> instead of <machine/endian.h>, and ditto <endian.h> (fixes code that pulls in <sys/endian.h> first) * those will always export the symbols that POSIX specified for <endian.h>, including the new {be,le}{16,32,64}toh() set. c.f. http://austingroupbugs.net/view.php?id=162 if __BSD_VISIBLE then you also get the symbols that our <machine/endian.h> currently exports (ntohs, NTOHS, dlg's bemtoh*, etc) * when doing POSIX compiles (not __BSD_VISIBLE), then <netinet/in.h> and <arpa/inet.h> will *stop* exporting the extra symbols like BYTE_ORDER and betoh* ok deraadt@
* the memory constraints are correct, so we dont need volatile to providedlg2014-03-251-5/+5
| | | | extra restrictions on ordering.
* provide an MI api for doing byteswapping loads and stores. somedlg2014-03-141-1/+67
| | | | | | | | | | | | | | | archs have instrutions that can do this, and the rest that dont get to use wrappers around the byteswap(3) api. this provides MI backends for sparc64 and powerpc which get a big benefit from this because byteswapping in registers is really hard for them. the intended use case is for reading and writing bits of dma memory handed to and from hardware. discussed with miod@ guenther@ deraadt@ ok miod@ kettenis@
* move powerpc to non-__STRICT_ALIGNMENT, as it always was. Essentiallyderaadt2011-08-221-3/+1
| | | | | | __STRICT_ALIGNMENT is talking about accessing of integer types; it does not cover doubles or floats or other things ok miod kettenis
* Normalize sentinel. Use _MACHINE_*_H_ and _<ARCH>_*_H_ properly and consitently.pirofti2011-03-231-4/+4
| | | | Discussed and okay drahn@. Okay deraadt@.
* Use _MACHINE_ENDIAN_H_ for this is The Right Thing To Do.pirofti2011-03-111-4/+4
| | | | Okay guenther@, millert@.
* Whoops, need to #undef _BIG_ENDIAN not _BYTE_ORDERmillert2005-12-131-2/+2
|
* First step in include files overhaul. Use __FOO_VISIBLE (as definedmillert2005-12-131-2/+3
| | | | | in sys/cdefs.h) instead of _FOO_SOURCE. Also fix several namespace pollution issues, including the byte order defines. OK deraadt@
* terms 3 & 4 cleanup based on "terms" filederaadt2003-06-031-6/+1
|
* add #define __STRICT_ALIGNMENTjason2001-03-021-1/+3
|
* Use symbolic define for BYTE_ORDER.espie1999-05-101-2/+2
| | | | | | | | | (don't forget that cpp is `lazy': #define A B #define B value #if A == value works, since A isn't extended before it's needed, by which time B is known)
* New endian.h design. All architectures now use a common file for the bulkniklas1997-11-091-73/+20
| | | | | | part. Some ports can optimize the swap operations. This also means the general API is extended with swap16, swap32, htobe16, htobe32, betoh16, betoh32, htole16, htole32, letoh16 and letoh32.
* Monolithic PowerPC kernel, new includepefo1997-10-131-34/+30
|
* Sigh, Revert changes to endian.h - it was all confusion due to incorrectgrr1997-06-251-5/+12
| | | | | usage in new ip_* code, since fixed. Added usage notes to prevent future confusion in this regard.
* Big endian HTON?() macros should be (void)(x).downsj1997-06-251-5/+5
|
* change like sparc/include/endian.hgrr1997-06-241-5/+5
|
* Define in_addr_t and in_port_t everywhere but use u_intXX_t formillert1997-04-041-5/+8
| | | | htonl and friends.
* adding OpenBSD tag to files.rahnds1996-12-281-0/+1
|
* Changes necessary to make the kernel compile and boot.rahnds1996-12-281-4/+4
| | | | Some merging with NetBSD port.
* Check-in of powerpc kernel support.rahnds1996-12-211-0/+84
NOTE: This will not work until the other pieces are checked in. This is primarily the NetBSD powerpc port, with modifications to support ELF.