Patch out neon in freebl
authorPeter Michael Green <plugwash@raspbian.org>
Thu, 20 Oct 2022 16:38:40 +0000 (17:38 +0100)
committerRaspbian forward porter <root@raspbian.org>
Thu, 20 Oct 2022 16:38:40 +0000 (17:38 +0100)
Gbp-Pq: Name patch-out-neon-in-freebl.patch

security/nss/lib/freebl/Makefile
security/nss/lib/freebl/freebl.gyp
security/nss/lib/freebl/gcm.c
security/nss/lib/freebl/rijndael.c
third_party/rust/nss_build_common/.cargo-checksum.json
third_party/rust/nss_build_common/src/lib.rs

index 7673357304b574389bcb2d7c02df2b14d5bc58a3..b3ed441928d3163a1dc48d94e3f35d295eabf5e8 100644 (file)
@@ -153,9 +153,9 @@ ifeq ($(CPU_ARCH),aarch64)
     endif
 endif
 ifeq ($(CPU_ARCH),arm)
-ifndef NSS_DISABLE_ARM32_NEON
-    EXTRA_SRCS += gcm-arm32-neon.c
-endif
+#ifndef NSS_DISABLE_ARM32_NEON
+#    EXTRA_SRCS += gcm-arm32-neon.c
+#endif
     ifdef CC_IS_CLANG
         DEFINES += -DUSE_HW_AES -DUSE_HW_SHA1 -DUSE_HW_SHA2
         EXTRA_SRCS += aes-armv8.c sha1-armv8.c sha256-armv8.c
@@ -774,9 +774,9 @@ USES_SOFTFLOAT_ABI := $(shell $(CC) -o - -E -dM - $(CFLAGS) < /dev/null | grep _
 $(OBJDIR)/$(PROG_PREFIX)aes-armv8$(OBJ_SUFFIX): CFLAGS += -march=armv8-a -mfpu=crypto-neon-fp-armv8$(if $(USES_SOFTFLOAT_ABI), -mfloat-abi=softfp)
 $(OBJDIR)/$(PROG_PREFIX)sha1-armv8$(OBJ_SUFFIX): CFLAGS += -march=armv8-a -mfpu=crypto-neon-fp-armv8$(if $(USES_SOFTFLOAT_ABI), -mfloat-abi=softfp)
 $(OBJDIR)/$(PROG_PREFIX)sha256-armv8$(OBJ_SUFFIX): CFLAGS += -march=armv8-a -mfpu=crypto-neon-fp-armv8$(if $(USES_SOFTFLOAT_ABI), -mfloat-abi=softfp)
-ifndef NSS_DISABLE_ARM32_NEON
-$(OBJDIR)/$(PROG_PREFIX)gcm-arm32-neon$(OBJ_SUFFIX): CFLAGS += -mfpu=neon$(if $(USES_SOFTFLOAT_ABI), -mfloat-abi=softfp)
-endif
+#ifndef NSS_DISABLE_ARM32_NEON
+#$(OBJDIR)/$(PROG_PREFIX)gcm-arm32-neon$(OBJ_SUFFIX): CFLAGS += -mfpu=neon$(if $(USES_SOFTFLOAT_ABI), -mfloat-abi=softfp)
+#endif
 endif
 
 ifeq ($(CPU_ARCH),aarch64)
index 72e1b9b73951c2cc432b3da1909e3c3068726b94..e9d58ee3bf38af9ef30a60192429a9112e4fa095 100644 (file)
             ],
           },
         }],
-        [ 'target_arch=="arm"', {
-          # Gecko doesn't support non-NEON platform on Android, but tier-3
-          # platform such as Linux/arm will need it
-          'cflags_mozilla': [
-            '-mfpu=neon'
-          ],
-        }],
+        #[ 'target_arch=="arm"', {
+        #  # Gecko doesn't support non-NEON platform on Android, but tier-3
+        #  # platform such as Linux/arm will need it
+        #  'cflags_mozilla': [
+        #    '-mfpu=neon'
+        #  ],
+        #}],
         [ 'target_arch=="x64"', {
           'sources': [
             'verified/Hacl_Poly1305_128.c',
             ],
           },
         }],
-        [ 'target_arch=="arm"', {
-          # Gecko doesn't support non-NEON platform on Android, but tier-3
-          # platform such as Linux/arm will need it
-          'cflags_mozilla': [
-            '-mfpu=neon'
-          ],
-        }],
+        #[ 'target_arch=="arm"', {
+        #  # Gecko doesn't support non-NEON platform on Android, but tier-3
+        #  # platform such as Linux/arm will need it
+        #  'cflags_mozilla': [
+        #    '-mfpu=neon'
+        #  ],
+        #}],
         [ 'target_arch=="x64"', {
           'sources': [
             'verified/Hacl_Poly1305_256.c',
         }]
       ]
     },
-    {
-      'target_name': 'gcm-aes-arm32-neon_c_lib',
-      'type': 'static_library',
-      'sources': [
-        'gcm-arm32-neon.c'
-      ],
-      'dependencies': [
-        '<(DEPTH)/exports.gyp:nss_exports'
-      ],
-      'cflags': [
-        '-march=armv7',
-        '-mfpu=neon',
-        '<@(softfp_cflags)',
-      ],
-      'cflags_mozilla': [
-        '-mfpu=neon',
-        '<@(softfp_cflags)',
-      ]
-    },
+    #{
+    #  'target_name': 'gcm-aes-arm32-neon_c_lib',
+    #  'type': 'static_library',
+    #  'sources': [
+    #    'gcm-arm32-neon.c'
+    #  ],
+    #  'dependencies': [
+    #    '<(DEPTH)/exports.gyp:nss_exports'
+    #  ],
+    #  #'cflags': [
+    #  #  '-march=armv7',
+    #  #  '-mfpu=neon',
+    #  #  '<@(softfp_cflags)',
+    #  #],
+    #  #'cflags_mozilla': [
+    #  #  '-mfpu=neon',
+    #  #  '<@(softfp_cflags)',
+    #  #]
+    #},
     {
       'target_name': 'gcm-aes-aarch64_c_lib',
       'type': 'static_library',
             'sha-x86_c_lib',
           ],
         }],
-        [ 'disable_arm32_neon==0 and target_arch=="arm"', {
-          'dependencies': [
-            'gcm-aes-arm32-neon_c_lib',
-          ],
-        }],
-        [ 'disable_arm32_neon==1 and target_arch=="arm"', {
+        #[ 'disable_arm32_neon==0 and target_arch=="arm"', {
+        #  'dependencies': [
+        #    'gcm-aes-arm32-neon_c_lib',
+        #  ],
+        #}],
+        [ 'target_arch=="arm"', {
           'defines!': [
             'NSS_DISABLE_ARM32_NEON',
           ],
             'sha-x86_c_lib',
           ],
         }],
-        [ 'disable_arm32_neon==0 and target_arch=="arm"', {
-          'dependencies': [
-            'gcm-aes-arm32-neon_c_lib',
-          ],
-        }],
-        [ 'disable_arm32_neon==1 and target_arch=="arm"', {
+        #[ 'disable_arm32_neon==0 and target_arch=="arm"', {
+        #  'dependencies': [
+        #    'gcm-aes-arm32-neon_c_lib',
+        #  ],
+        #}],
+        [ 'target_arch=="arm"', {
           'defines!': [
             'NSS_DISABLE_ARM32_NEON',
           ],
index ac461b488504bba495ba8facbf5ad87aae2ed98b..67b58fdeea5fb85b450feb2fe585f5db6c084a66 100644 (file)
@@ -25,7 +25,7 @@
 #elif defined(__arm__) && defined(IS_LITTLE_ENDIAN) && \
     !defined(NSS_DISABLE_ARM32_NEON)
 /* We don't test on big endian platform, so disable this on big endian. */
-#define USE_ARM_GCM
+//#define USE_ARM_GCM
 #endif
 
 /* Forward declarations */
index 82b1f419d9adc78d1bd6346230535334e7f769d4..e2557876469aa4266c33e23ee348bf4b0dd13b86 100644 (file)
 #include "gcm.h"
 #include "mpi.h"
 
-#if !defined(IS_LITTLE_ENDIAN) && !defined(NSS_X86_OR_X64)
+//#if !defined(IS_LITTLE_ENDIAN) && !defined(NSS_X86_OR_X64)
 // not test yet on big endian platform of arm
 #undef USE_HW_AES
-#endif
+//#endif
 
 #ifdef __powerpc64__
 #include "ppc-crypto.h"
index 5807703dcee83008d368a4b55d6b62ec713af209..6614fc4d7399a1979cd9d7ef4d36f7b5bcef1e24 100644 (file)
@@ -1 +1 @@
-{"files":{"Cargo.toml":"4f1d37d926e853eb9f3d8074b45c00a317e2b4aafbc339a471430d28526716e9","src/lib.rs":"1cbfa62f63ce62078b51105c28bd4783c0045a4059175a1644ac0cc79837bf00"},"package":null}
\ No newline at end of file
+{"files":{"Cargo.toml":"4f1d37d926e853eb9f3d8074b45c00a317e2b4aafbc339a471430d28526716e9","src/lib.rs":"e1b529d6facc6f16a234a81d4b39904002ee023539a73bd29fae75e9a433fef3"},"package":null}
index 320dc0d40de7b704d7176a105aa132c016bce76d..2cc52196f25096fa75b0687d884a4ef0067ec275 100644 (file)
@@ -117,9 +117,9 @@ fn get_nss_libs(kind: LinkingKind) -> Vec<&'static str> {
             if target_arch == "x86_64" || target_arch == "x86" {
                 static_libs.push("gcm-aes-x86_c_lib");
             }
-            if target_arch == "arm" {
-                static_libs.push("gcm-aes-arm32-neon_c_lib")
-            }
+            //if target_arch == "arm" {
+            //    static_libs.push("gcm-aes-arm32-neon_c_lib")
+            //}
             if target_arch == "aarch64" {
                 static_libs.push("gcm-aes-aarch64_c_lib");
             }