blob: 0290d872d25506c4fb59fa39f004d015e738447a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
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)
|