Build NSS 3.68.1 on Solaris 11 x86 with Solarisstudio 12.5

38 views
Skip to first unread message

Rahul S

unread,
Mar 22, 2022, 6:52:44 AM3/22/22
to dev-tec...@mozilla.org
Hello All,

I am trying to build NSS version 3.68.1 (ESR release) on Solaris 11x86 machine using Solarisstudio 12.5 . I am facing the following compilation issue


cc -o SunOS5.11_i86pc_64_DBG.OBJ/SunOS_SINGLE_SHLIB/Hacl_Poly1305_256.o -c -std=c99 -g -KPIC -DSVR4 -DSYSV -D__svr4 -D__svr4__ -DSOLARIS -D_REENTRANT -xprefetch=no -m64 -xs  -DXP_UNIX -DSHLIB_SUFFIX=\"so\" -DSHLIB_PREFIX=\"lib\" -DSHLIB_VERSION=\"3\" -DSOFTOKEN_SHLIB_VERSION=\"3\" -DRIJNDAEL_INCLUDE_TABLES -DDEBUG -UNDEBUG -DNSS_NO_INIT_SUPPORT -DUSE_UTIL_DIRECTLY -DNO_NSPR_10_SUPPORT -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES -DNSS_USE_64 -DNSS_X86_OR_X64 -DNSS_X64 -DINTEL_GCM -DNSS_BEVAND_ARCFOUR -DMPI_AMD64 -DMP_ASSEMBLY_MULTIPLY -DNSS_USE_COMBA -DMP_IS_LITTLE_ENDIAN -DUSE_HW_AES -DKRML_VERIFIED_UINT128 -DMP_API_COMPATIBLE -I../../../../../built/nss/SunOS5.11_i86pc_64_DBG.OBJ/include -I../../../../../built/nss/SunOS5.11_i86pc_64_DBG.OBJ/include -I../../../../../built/nss/private/nss -Impi -Iecl -Iverified -Iverified/kremlin/include -Iverified/kremlin/kremlib/dist/minimal -Ideprecated  -mssse3 -msse4.1 -msse4.2 -mavx -mavx2 -maes -mpclmul verified/Hacl_Poly1305_256.c
cc: Warning: Option -msse4.1 passed to ld, if ld is invoked, ignored otherwise
cc: Warning: GCC option -mpclmul ignored. Suggest using -xarch=aes
"verified/Hacl_Poly1305_256.c", line 90: warning: implicit function declaration: _mm256_insert_epi64
"verified/Hacl_Poly1305_256.c", line 90: warning: implicit function declaration: _mm256_extract_epi64
"verified/Hacl_Poly1305_256.c", line 90: assignment type mismatch:
        vector [4] of unsigned long long "=" int
"verified/Hacl_Poly1305_256.c", line 95: assignment type mismatch:
        vector [4] of unsigned long long "=" int
"verified/Hacl_Poly1305_256.c", line 100: assignment type mismatch:
        vector [4] of unsigned long long "=" int
"verified/Hacl_Poly1305_256.c", line 105: assignment type mismatch:
        vector [4] of unsigned long long "=" int
"verified/Hacl_Poly1305_256.c", line 110: assignment type mismatch:
        vector [4] of unsigned long long "=" int
cc: acomp failed for verified/Hacl_Poly1305_256.c
gmake[6]: *** [SunOS5.11_i86pc_64_DBG.OBJ/SunOS_SINGLE_SHLIB/Hacl_Poly1305_256.o] Error 2

Any help to resolve this issue would be really helpful.

Best Regards,
Rahul.S

Rahul S

unread,
Jun 18, 2022, 6:37:52 AM6/18/22
to dev-tec...@mozilla.org
Hello team ,

Any suggestions on how to resolve this ?



Regards,
Rahul.S

From: Rahul S
Sent: Tuesday, March 22, 2022 4:21 PM
To: dev-tec...@mozilla.org <dev-tec...@mozilla.org>
Subject: Build NSS 3.68.1 on Solaris 11 x86 with Solarisstudio 12.5
 

Benjamin Beurdouche

unread,
Jun 27, 2022, 3:23:26 AM6/27/22
to Rahul S, dev-tec...@mozilla.org, John Schanck, Natalia Kulatova
Hi Rahul,

We don’t have Solaris in our CI (because it is not a tier1 platform) so we can’t see these kind of issues… thanks for reaching out.

It looks like the makefile is attempting to build a vectorized version of chachapoly on an intel platform supporting AVX2 but that for some reason the file libintvector.h which maps intrinsics to C types does not take into account some special case for Solaris. 

I could suggest a few things:
0. Check you are building for Intel AVX2, if not the Makefile probably needs to be fixed
1. Could you make sure NSS builds if you turn vectorization off; there should be some flag like NSS_DISABLE_AVX2 (or something like this)
2. look at libintvector.h (should probably be somewhere in freebl/verified/) and make sure that the Solaris case is handled for the 128 and 256 vectorized cases

I think 2. is likely the problem and needs to be updated but I haven’t looked into the details here. Could you have a look and if you manage to fix the problem and to submit a patch in bugzilla? Anna or myself can take care of landing that upstream in HACL* and NSS.

Best,
Benjamin




--
You received this message because you are subscribed to the Google Groups "dev-tec...@mozilla.org" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dev-tech-cryp...@mozilla.org.
To view this discussion on the web visit https://groups.google.com/a/mozilla.org/d/msgid/dev-tech-crypto/BY5PR10MB39230AD5183416E73100797A9CAE9%40BY5PR10MB3923.namprd10.prod.outlook.com.

Rahul S

unread,
Jun 27, 2022, 11:20:15 PM6/27/22
to Benjamin Beurdouche, dev-tec...@mozilla.org, John Schanck, Natalia Kulatova
Hi Benjamin,

Thanks for your suggestions. I will try out your suggestion and would update in case I find a fix .



Best Regards ,
Rahul.S

From: Benjamin Beurdouche <beurd...@mozilla.com>
Sent: Monday, June 27, 2022 12:53 PM
To: Rahul S <rah...@oracle.com>
Cc: dev-tec...@mozilla.org <dev-tec...@mozilla.org>; John Schanck <jsch...@mozilla.com>; Natalia Kulatova <nkul...@mozilla.com>
Subject: [External] : Re: [dev-tech-crypto] Re: Build NSS 3.68.1 on Solaris 11 x86 with Solarisstudio 12.5
 
Reply all
Reply to author
Forward
0 new messages