From d4be0d3140612adb8e0c0d2735ba9f5d3519ed63 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jan=20Dj=C3=A4rv?= Date: Tue, 10 Feb 2004 17:18:34 +0000 Subject: [PATCH] * data.c (Fbyteorder): New function. --- src/data.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/data.c b/src/data.c index c4e3937f3fa..9268d04b04f 100644 --- a/src/data.c +++ b/src/data.c @@ -2879,6 +2879,20 @@ DEFUN ("lognot", Flognot, Slognot, 1, 1, 0, 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 @@ syms_of_data () defsubr (&Sadd1); defsubr (&Ssub1); defsubr (&Slognot); + defsubr (&Sbyteorder); defsubr (&Ssubr_arity); XSYMBOL (Qwholenump)->function = XSYMBOL (Qnatnump)->function; -- 2.39.2