From 0b5e63eb3779b41d122bbdd6a45a639aececd72b Mon Sep 17 00:00:00 2001 From: hunt Date: Mon, 17 Apr 2006 19:18:56 +0000 Subject: [PATCH] 2006-04-17 Martin Hunt * endian.stp (set_endian): New function. --- tapset/ChangeLog | 4 ++++ tapset/endian.stp | 44 ++++++++++++++------------------------------ tapset/logging.stp | 5 +++-- 3 files changed, 21 insertions(+), 32 deletions(-) diff --git a/tapset/ChangeLog b/tapset/ChangeLog index bdad3877d..a1cbf049c 100644 --- a/tapset/ChangeLog +++ b/tapset/ChangeLog @@ -1,3 +1,7 @@ +2006-04-17 Martin Hunt + + * endian.stp (set_endian): New function. + 2006-03-06 Martin Hunt * system.stp: New tapset. diff --git a/tapset/endian.stp b/tapset/endian.stp index 26b3a05a9..ddcc25463 100644 --- a/tapset/endian.stp +++ b/tapset/endian.stp @@ -1,47 +1,31 @@ +# set the default endianess for binary printf +# val: 0 - native (default) +# 1 - little endian +# 2 - big endian +function set_endian:long (val:long) %{ + _stp_endian = THIS->val; +%} + function big_endian2:long (val:long) %{ -#ifdef __LITTLE_ENDIAN - THIS->__retvalue = swab16(THIS->val); -#else - THIS->__retvalue = THIS->val & 0xffff; -#endif + THIS->__retvalue = cpu_to_be16(THIS->val); %} function big_endian4:long (val:long) %{ -#ifdef __LITTLE_ENDIAN - THIS->__retvalue = swab32(THIS->val); -#else - THIS->__retvalue = THIS->val & 0xffffffff; -#endif + THIS->__retvalue = cpu_to_be32(THIS->val); %} function big_endian8:long (val:long) %{ -#ifdef __LITTLE_ENDIAN - THIS->__retvalue = swab64(THIS->val); -#else - THIS->__retvalue = THIS->val; -#endif + THIS->__retvalue = cpu_to_be64(THIS->val); %} function little_endian2:long (val:long) %{ -#ifndef __LITTLE_ENDIAN - THIS->__retvalue = swab16(THIS->val); -#else - THIS->__retvalue = THIS->val & 0xffff; -#endif + THIS->__retvalue = cpu_to_le16(THIS->val); %} function little_endian4:long (val:long) %{ -#ifndef __LITTLE_ENDIAN - THIS->__retvalue = swab32(THIS->val); -#else - THIS->__retvalue = THIS->val & 0xffffffff; -#endif + THIS->__retvalue = cpu_to_le32(THIS->val); %} function little_endian8:long (val:long) %{ -#ifndef __LITTLE_ENDIAN - THIS->__retvalue = swab64(THIS->val); -#else - THIS->__retvalue = THIS->val; -#endif + THIS->__retvalue = cpu_to_le64(THIS->val); %} diff --git a/tapset/logging.stp b/tapset/logging.stp index a3fcac049..659ef3892 100644 --- a/tapset/logging.stp +++ b/tapset/logging.stp @@ -6,9 +6,10 @@ // Public License (GPL); either version 2, or (at your option) any // later version. -// send a string out with a newline +// Write a message to the console (actually stderr). A newline is appended +// if the string does not end in one. function log (msg:string) %{ - _stp_printf ("%s\n", THIS->msg); + _stp_log (THIS->msg); %} function warn (msg:string) %{ -- 2.43.5