aboutsummaryrefslogtreecommitdiffstats
path: root/libj2_j2i_xor_sign.3
diff options
context:
space:
mode:
authorMattias Andrée <m@maandree.se>2026-01-20 22:40:07 +0100
committerMattias Andrée <m@maandree.se>2026-01-20 22:40:07 +0100
commita793e017e5d14abd28da89dbb8eb7c1919c4f997 (patch)
tree529ec3305f2ab926f9ee30aa53506ab2155b00d4 /libj2_j2i_xor_sign.3
parentAdd some man pages (diff)
downloadlibj2-a793e017e5d14abd28da89dbb8eb7c1919c4f997.tar.gz
libj2-a793e017e5d14abd28da89dbb8eb7c1919c4f997.tar.bz2
libj2-a793e017e5d14abd28da89dbb8eb7c1919c4f997.tar.xz
Add libj2_not_j2u.3 and libj2_j2i_xor_sign.3
Signed-off-by: Mattias Andrée <m@maandree.se>
Diffstat (limited to '')
-rw-r--r--libj2_j2i_xor_sign.355
1 files changed, 55 insertions, 0 deletions
diff --git a/libj2_j2i_xor_sign.3 b/libj2_j2i_xor_sign.3
new file mode 100644
index 0000000..0290d87
--- /dev/null
+++ b/libj2_j2i_xor_sign.3
@@ -0,0 +1,55 @@
+.TH LIBJ2_J2I_XOR_SIGN 3 LIBJ2
+.SH NAME
+libj2_j2i_xor_sign \- Calculate bitwise NOT iff sign-bit is set
+
+.SH SYNOPSIS
+.nf
+#include <libj2.h>
+
+void \fBlibj2_j2i_xor_sign\fP(struct libj2_j2i *\fIa\fP);
+void \fBlibj2_j2i_xor_sign_to_j2i\fP(const struct libj2_j2i *\fIa\fP, struct libj2_j2i *\fIr\fP);
+void \fBlibj2_j2i_xor_sign_to_j2u\fP(const struct libj2_j2i *\fIa\fP, struct libj2_j2u *\fIr\fP);
+.fi
+.PP
+Link with
+.IR -lj2 .
+
+.SH DESCRIPTION
+The above listed functions calculate
+the bitwise inverse (NOT) of
+.I a
+if the sign-bit is set in
+.IR a ,
+that is, if and only if
+.I a
+is negative: for each bit, the XOR with
+the sign-bit is calculated. The result,
+which is always non-negative, is stored in
+.IR r ,
+except in the case of the
+.BR libj2_j2i_xor_sign ()
+function, where the result is stored in
+.IR a .
+.PP
+The arguments are assumed to be
+.RI non- NULL .
+
+.SH RETURN VALUE
+None.
+
+.SH ERRORS
+The above listed functions cannot fail.
+
+.SH HISTORY
+The
+.BR libj2_j2i_xor_sign (),
+.BR libj2_j2i_xor_sign_to_j2i (),
+and
+.BR libj2_j2i_xor_sign_to_j2u ()
+functions were added in version 1.1 of
+.BR libj2 .
+
+.SH SEE ALSO
+.BR libj2 (7),
+.BR libj2_j2u_not (3),
+.BR libj2_j2i_is_negative (3)