# HG changeset patch # User Jan Dj¸«£rv # Date 1076433514 0 # Node ID 9c480a55fc222795c534a0c4f4b95f08a03646bf # Parent 3d23cd8c7b15f12e2889fdb0839cc5e4b5bde34d * data.c (Fbyteorder): New function. diff -r 3d23cd8c7b15 -r 9c480a55fc22 src/data.c --- a/src/data.c Tue Feb 10 17:14:51 2004 +0000 +++ b/src/data.c Tue Feb 10 17:18:34 2004 +0000 @@ -2879,6 +2879,20 @@ XSETINT (number, ~XINT (number)); return number; } + +DEFUN ("byteorder", Fbyteorder, Sbyteorder, 0, 0, 0, + doc: /* Return the byteorder for the machine. +Returns 66 (ASCII uppercase B) for big endian machines or 108 (ASCII +lowercase l) for small endian machines. */) + () +{ + unsigned i = 0x04030201; + int order = *(char *)&i == 4 ? 66 : 108; + + return XFASTINT (order); +} + + void syms_of_data () @@ -3281,6 +3295,7 @@ defsubr (&Sadd1); defsubr (&Ssub1); defsubr (&Slognot); + defsubr (&Sbyteorder); defsubr (&Ssubr_arity); XSYMBOL (Qwholenump)->function = XSYMBOL (Qnatnump)->function;