mirror of
https://github.com/henrydcase/pqc.git
synced 2024-11-25 17:01:22 +00:00
NTRU Prime: more unary negations
This commit is contained in:
parent
c2d2d145b7
commit
333248de03
@ -15,7 +15,7 @@
|
||||
static int int16_nonzero_mask(int16 x) {
|
||||
uint16 u = (uint16) x; /* 0, else 1...65535 */
|
||||
uint32 v = u; /* 0, else 1...65535 */
|
||||
v = -v; /* 0, else 2^32-65535...2^32-1 */
|
||||
v = ~v + 1; /* 0, else 2^32-65535...2^32-1 */
|
||||
v >>= 31; /* 0, else 1 */
|
||||
return -(int) v; /* 0, else -1 */
|
||||
}
|
||||
|
@ -15,7 +15,7 @@
|
||||
static int int16_nonzero_mask(int16 x) {
|
||||
uint16 u = (uint16) x; /* 0, else 1...65535 */
|
||||
uint32 v = u; /* 0, else 1...65535 */
|
||||
v = -v; /* 0, else 2^32-65535...2^32-1 */
|
||||
v = ~v + 1; /* 0, else 2^32-65535...2^32-1 */
|
||||
v >>= 31; /* 0, else 1 */
|
||||
return -(int) v; /* 0, else -1 */
|
||||
}
|
||||
|
@ -15,7 +15,7 @@
|
||||
static int int16_nonzero_mask(int16 x) {
|
||||
uint16 u = (uint16) x; /* 0, else 1...65535 */
|
||||
uint32 v = u; /* 0, else 1...65535 */
|
||||
v = -v; /* 0, else 2^32-65535...2^32-1 */
|
||||
v = ~v + 1; /* 0, else 2^32-65535...2^32-1 */
|
||||
v >>= 31; /* 0, else 1 */
|
||||
return -(int) v; /* 0, else -1 */
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user