Closed Bug 1620799 Opened 4 years ago Closed 4 years ago

Introduce NSS_DISABLE_GCM_ARM32_NEON to build on arm32 without neon support

Categories

(NSS :: Build, defect, P1)

3.51
defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: giulio.benetti, Assigned: giulio.benetti)

References

Details

Attachments

(1 file, 1 obsolete file)

User Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36

Steps to reproduce:

Build with arm32 without neon support.

Actual results:

/home/giuliobenetti/git/test-libnss/br-arm-cortex-a9-glibc/host/bin/arm-linux-gcc -o Linux2.6_arm_arm-linux-gcc.br_real_glibc_PTH_DBG.OBJ/Linux_SINGLE_SHLIB/gcm-arm32-neon.o -c -std=c99 -g -fPIC -pipe -ffunction-sections -fdata-sections -DHAVE_STRERROR -DLINUX -Dlinux -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -Wall -Wshadow -DNSS_NO_GCC48 -DXP_UNIX -DSHLIB_SUFFIX="so" -DSHLIB_PREFIX="lib" -DSHLIB_VERSION="3" -DSOFTOKEN_SHLIB_VERSION="3" -DRIJNDAEL_INCLUDE_TABLES -DDEBUG -UNDEBUG -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_POSIX_SOURCE -D_REENTRANT -DNSS_NO_INIT_SUPPORT -DNSS_DISABLE_ALTIVEC -DUSE_UTIL_DIRECTLY -DNO_NSPR_10_SUPPORT -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES -DFREEBL_NO_DEPEND -DFREEBL_LOWHASH -DUSE_HW_AES -DMP_ASSEMBLY_MULTIPLY -DMP_ASSEMBLY_SQUARE -DMP_USE_UINT_DIGIT -DSHA_NO_LONG_LONG -DKRML_VERIFIED_UINT128 -DMP_API_COMPATIBLE -I/home/giuliobenetti/git/test-libnss/br-arm-cortex-a9-glibc/host/arm-buildroot-linux-gnueabihf/sysroot/usr/include/nspr -I/home/giuliobenetti/git/test-libnss/br-arm-cortex-a9-glibc/build/libnss-3.51/dist/include -I../../../dist/public/nss -I../../../dist/private/nss -Impi -Iecl -Iverified -Iverified/kremlin/include -Iverified/kremlin/kremlib/dist/minimal -march=armv7 -mfpu=neon gcm-arm32-neon.c
cc1: error: target CPU does not support ARM mode

Expected results:

Need a way to avoid building gcm-arm32-neon.c and build gcm.c instead, so let's introduce NSS_DISABLE_GCM_ARM32_NEON to allow disabling it on arm32

Attachment #9131723 - Flags: review?(kjacobs.bugzilla)
Assignee: nobody → giulio.benetti
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Priority: -- → P1
Summary: Introduce NSS_DISABLE_GCM_ARM32_NEON → Introduce NSS_DISABLE_GCM_ARM32_NEON to build on arm32 without neon support
Comment on attachment 9131723 [details] [diff] [review]
0001-Bug-1620799-Introduce-NSS_DISABLE_GCM_ARM32_NEON.patch

Review of attachment 9131723 [details] [diff] [review]:
-----------------------------------------------------------------

This looks fine to me, but what's the rationale behind calling this specifically NSS_DISABLE_GCM_ARM32_NEON rather than just a NSS_DISABLE_ARM32_NEON? (it's required in ARM64, right?)

(In reply to J.C. Jones [:jcj] (he/him) from comment #2)

Comment on attachment 9131723 [details] [diff] [review]
0001-Bug-1620799-Introduce-NSS_DISABLE_GCM_ARM32_NEON.patch

Review of attachment 9131723 [details] [diff] [review]:

This looks fine to me, but what's the rationale behind calling this
specifically NSS_DISABLE_GCM_ARM32_NEON rather than just a
NSS_DISABLE_ARM32_NEON? (it's required in ARM64, right?)

Yes, you're right, better to introduce NSS_DISABLE_ARM32_NEON.
I'm going to send a new patch asap then.

V1->V2:

  • rename NSS_DISABLE_GCM_ARM32_NEON to NSS_DISABLE_ARM32_NEON
Attachment #9131723 - Attachment is obsolete: true
Attachment #9131723 - Flags: review?(kjacobs.bugzilla)
Comment on attachment 9137508 [details] [diff] [review]
v2-0001-Bug-1620799-Introduce-NSS_DISABLE_ARM32_NEON.patch

Review of attachment 9137508 [details] [diff] [review]:
-----------------------------------------------------------------

LGTM. Thank you!
Attachment #9137508 - Flags: review+
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 3.52
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: