Replace DECAF_INLINE with ossl_inline
authorMatt Caswell <matt@openssl.org>
Thu, 16 Nov 2017 17:07:21 +0000 (17:07 +0000)
committerMatt Caswell <matt@openssl.org>
Tue, 20 Feb 2018 12:59:29 +0000 (12:59 +0000)
Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de>
(Merged from https://github.com/openssl/openssl/pull/5105)

crypto/ec/curve448/curve448utils.h
crypto/ec/curve448/decaf.c
crypto/ec/curve448/field.h
crypto/ec/curve448/scalar.c
crypto/ec/curve448/word.h

index 1ef3d736726598e66a3bceada80b6b9c8a4f6d9c..7997cfd6f4b778f1e80bb462bc7e5be1f04a2478 100644 (file)
@@ -14,6 +14,7 @@
 
 #include <stdint.h>
 #include <sys/types.h>
+#include <openssl/e_os2.h>
 
 #ifdef __cplusplus
 extern "C" {
@@ -28,7 +29,6 @@ extern "C" {
 #define DECAF_NOINLINE  __attribute__((noinline))
 #define DECAF_WARN_UNUSED __attribute__((warn_unused_result))
 #define DECAF_NONNULL __attribute__((nonnull))
-#define DECAF_INLINE inline __attribute__((always_inline,unused))
 /** @endcond */
 
 /* Internal word types.
@@ -76,13 +76,13 @@ typedef enum {
 
 
 /** Return success if x is true */
-static DECAF_INLINE decaf_error_t
+static ossl_inline decaf_error_t
 decaf_succeed_if(decaf_bool_t x) {
     return (decaf_error_t)x;
 }
 
 /** Return DECAF_TRUE iff x == DECAF_SUCCESS */
-static DECAF_INLINE decaf_bool_t
+static ossl_inline decaf_bool_t
 decaf_successful(decaf_error_t e) {
     decaf_dword_t w = ((decaf_word_t)e) ^  ((decaf_word_t)DECAF_SUCCESS);
     return (w-1)>>DECAF_WORD_BITS;
index 212fa84804c81e452945a53b87f3e81a4a580260..135b2a7a58758379d7947ba60fd455b230d923a6 100644 (file)
@@ -107,7 +107,7 @@ void curve448_point_double(curve448_point_t p, const curve448_point_t q) {
 }
 
 /* Operations on [p]niels */
-static DECAF_INLINE void
+static ossl_inline void
 cond_neg_niels (
     niels_t n,
     mask_t neg
@@ -247,7 +247,7 @@ decaf_bool_t curve448_point_valid (
     return mask_to_bool(out);
 }
 
-static DECAF_INLINE void
+static ossl_inline void
 constant_time_lookup_niels (
     niels_s *__restrict__ ni,
     const niels_t *table,
index 736495b5401c6f1fcb4eed571b1d51f2d70fe085..672ee3623e107d5196044ed3952203b214222401 100644 (file)
@@ -15,7 +15,7 @@
 #include <string.h>
     
 /** Square x, n times. */
-static DECAF_INLINE void gf_sqrn (
+static ossl_inline void gf_sqrn (
     gf_s *__restrict__ y,
     const gf x,
     int n
@@ -80,11 +80,11 @@ gf_cond_swap(gf x, gf_s *__restrict__ y, mask_t swap) {
     constant_time_cond_swap(x,y,sizeof(gf_s),swap);
 }
 
-static DECAF_INLINE void gf_mul_qnr(gf_s *__restrict__ out, const gf x) {
+static ossl_inline void gf_mul_qnr(gf_s *__restrict__ out, const gf x) {
     gf_sub(out,ZERO,x);
 }
 
-static DECAF_INLINE void gf_div_qnr(gf_s *__restrict__ out, const gf x) {
+static ossl_inline void gf_div_qnr(gf_s *__restrict__ out, const gf x) {
     gf_sub(out,ZERO,x);
 }
 
index 7509a5fb7683d4e3c2f0d3717306fc59bdcc359a..e3cb22d76455fda98db654df9005f75e7a823f2b 100644 (file)
@@ -126,7 +126,7 @@ void curve448_scalar_add (
     sc_subx(out, out->limb, sc_p, sc_p, chain);
 }
 
-static DECAF_INLINE void scalar_decode_short (
+static ossl_inline void scalar_decode_short (
     curve448_scalar_t s,
     const unsigned char *ser,
     unsigned int nbytes
index 22ffe8dd0795e3bdf4b9dc23f534713779a32035..39ea949861d1ddc2982c48b83b7fa2f0371995fa 100644 (file)
@@ -96,7 +96,7 @@
     typedef uint64x4_t uint64xn_t;
     typedef uint32x8_t uint32xn_t;
 
-    static DECAF_INLINE big_register_t
+    static ossl_inline big_register_t
     br_set_to_mask(mask_t x) {
         uint32_t y = (uint32_t)x;
         big_register_t ret = {y,y,y,y,y,y,y,y};
     typedef uint64x2_t uint64xn_t;
     typedef uint32x4_t uint32xn_t;
 
-    static DECAF_INLINE big_register_t
+    static ossl_inline big_register_t
     br_set_to_mask(mask_t x) {
         uint32_t y = x;
         big_register_t ret = {y,y,y,y};
     typedef uint64x2_t uint64xn_t;
     typedef uint32x4_t uint32xn_t;
     
-    static DECAF_INLINE big_register_t
+    static ossl_inline big_register_t
     br_set_to_mask(mask_t x) {
         return vdupq_n_u32(x);
     }
     typedef uint64_t big_register_t, uint64xn_t;
 
     typedef uint32_t uint32xn_t;
-    static DECAF_INLINE big_register_t
+    static ossl_inline big_register_t
     br_set_to_mask(mask_t x) {
         return (big_register_t)x;
     }
     typedef uint32_t uint32xn_t;
     typedef uint32_t big_register_t;
 
-    static DECAF_INLINE big_register_t
+    static ossl_inline big_register_t
     br_set_to_mask(mask_t x) {
         return (big_register_t)x;
     }
 #endif
 
 #if __AVX2__
-    static DECAF_INLINE big_register_t
+    static ossl_inline big_register_t
     br_is_zero(big_register_t x) {
         return (big_register_t)(x == br_set_to_mask(0));
     }
 #elif __SSE2__
-    static DECAF_INLINE big_register_t
+    static ossl_inline big_register_t
     br_is_zero(big_register_t x) {
         return (big_register_t)_mm_cmpeq_epi32((__m128i)x, _mm_setzero_si128());
         //return (big_register_t)(x == br_set_to_mask(0));
     }
 #elif __ARM_NEON__
-    static DECAF_INLINE big_register_t
+    static ossl_inline big_register_t
     br_is_zero(big_register_t x) {
         return vceqq_u32(x,x^x);
     }
  * On the third hand, we have success vs boolean types, but that's handled in
  * common.h: it converts between decaf_bool_t and decaf_error_t.
  */
-static DECAF_INLINE decaf_bool_t mask_to_bool (mask_t m) {
+static ossl_inline decaf_bool_t mask_to_bool (mask_t m) {
     return (decaf_sword_t)(sword_t)m;
 }
 
-static DECAF_INLINE mask_t bool_to_mask (decaf_bool_t m) {
+static ossl_inline mask_t bool_to_mask (decaf_bool_t m) {
     /* On most arches this will be optimized to a simple cast. */
     mask_t ret = 0;
     unsigned int limit = sizeof(decaf_bool_t)/sizeof(mask_t);
@@ -204,7 +204,7 @@ static DECAF_INLINE mask_t bool_to_mask (decaf_bool_t m) {
     return ret;
 }
 
-static DECAF_INLINE void ignore_result ( decaf_bool_t boo ) {
+static ossl_inline void ignore_result ( decaf_bool_t boo ) {
     (void)boo;
 }