From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by mx.groups.io with SMTP id smtpd.web09.9966.1604658180048381076 for ; Fri, 06 Nov 2020 02:23:00 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=H+lI78SY; spf=pass (domain: intel.com, ip: 192.55.52.115, mailfrom: jiewen.yao@intel.com) IronPort-SDR: O27mSFcXzZLUtQAKBSMbXhdGuh278TbNE8l2h+fyTwSxbTqHHrB5p0Olo3X+xyhehuB9MricA4 poo+U9p6kyvg== X-IronPort-AV: E=McAfee;i="6000,8403,9796"; a="168747634" X-IronPort-AV: E=Sophos;i="5.77,456,1596524400"; d="scan'208";a="168747634" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Nov 2020 02:22:58 -0800 IronPort-SDR: Ett+NSkhCkRk9QRaILzGzTkbFfoNwbD4+f5COzSGpBJikiYYEfjNsvzmg+q9PhYdMp7Pz3hDfT CPp3CGbDb9Gg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,456,1596524400"; d="scan'208";a="326370067" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by orsmga006.jf.intel.com with ESMTP; 06 Nov 2020 02:22:58 -0800 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Fri, 6 Nov 2020 02:22:58 -0800 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Fri, 6 Nov 2020 02:22:58 -0800 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.173) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Fri, 6 Nov 2020 02:22:57 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=X3+MRvRJnV+yKXVMtiw4Y1bCPSk61UxiFn2PD/LzpwIi+7t/ui1dXFDiNh/YjH7eLjlAZhkxDpBZvdYTpv48Tn2ip27SnxJCHmKuSh08xBdbUCyB6zGeEukhO/2/pkYpT9XbFAR4ZVmTowVh+WC8FMQ5mVDTigYuVn/nYkQsldBaAZ351MCgAxo4Vy7BWxO4w9ghCaJ/yE2ItWLpg4NzfpveeolGvWQWvtPLfTF3HPmL82R0kzAsJ/S9r5SDa8+L1F2N6lzxVHqSjHtIoPGzmP68OJLW6JxQHhokUQvx0Xe2TNBiddgqWrKOKxi4YpS8+82IE0DF7ZM0K8vevA2aww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=d9plGGsRe1bMUr7ra2K+lxfsOINh3sys91rixz+egh4=; b=IQvCvZeqqCkRcl6oiML+/dx7Je9KupR7Ve4oaVmEnX77yskh+GZCBP4G4oKgfjHFHkxOnuD5HP2G0iuiYUjclz6L1yxolF8mVmD7ey1CtjHkby+rCQoaCuZ0QrzDW/s2qbOzkeYXxEf21rVQ5jSarSIX38r5xXx2G/X3ndb6bmVYCVG2oOt21GG/Niyt60+bB2JTVL7lT0qroqTmna3Hpxslc+5JQ1SzlvU6k7QERTEjhteWYF0iEKi/+BTN2cjGO9k6rdpN3hvAFr+8rgxk82dg6nuNPS/3QdIZ2f8X1dpo9XwmGSbbWrP8cqQLsZ98QDJ/pKd4LAakP2xYuuFwOw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=d9plGGsRe1bMUr7ra2K+lxfsOINh3sys91rixz+egh4=; b=H+lI78SYqtWdU6xcxRzQEILyrd1rNizWRXXXCVH8jGwfDU3MKCn3P7b87bsoYPWnZRYYTbFobQxIEAGQcLYNybulaELpp+gz2P/3GsE4XcjsGmNpsUXLkI+lPgeVPXUfis03ihEVA+Y0K1vtmF26/gTkPqf4MTAgJraLbYOns5E= Received: from CY4PR11MB1288.namprd11.prod.outlook.com (2603:10b6:903:23::8) by CY4PR11MB0007.namprd11.prod.outlook.com (2603:10b6:910:79::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3499.29; Fri, 6 Nov 2020 10:22:56 +0000 Received: from CY4PR11MB1288.namprd11.prod.outlook.com ([fe80::a188:2994:6c14:aad7]) by CY4PR11MB1288.namprd11.prod.outlook.com ([fe80::a188:2994:6c14:aad7%12]) with mapi id 15.20.3499.032; Fri, 6 Nov 2020 10:22:55 +0000 From: "Yao, Jiewen" To: "Zurcher, Christopher J" , "devel@edk2.groups.io" CC: "Wang, Jian J" , "Lu, XiaoyuX" , "Kinney, Michael D" , Ard Biesheuvel Subject: Re: [edk2-devel] [PATCH v5 0/2] CryptoPkg/OpensslLib: Add native instruction support for X64 Thread-Topic: [edk2-devel] [PATCH v5 0/2] CryptoPkg/OpensslLib: Add native instruction support for X64 Thread-Index: AQHWsiyB4+1/v20uXEu0lqu2S9yUHqm6nppAgAAEk9CAADbo4IAADdPg Date: Fri, 6 Nov 2020 10:22:55 +0000 Message-ID: References: <20201103215834.7533-1-christopher.j.zurcher@intel.com> <1644D590FF4B7423.25549@groups.io> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.5.1.3 dlp-product: dlpe-windows dlp-reaction: no-action authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.147.211] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 757dbe26-bd9d-42c9-d7a4-08d8823ded16 x-ms-traffictypediagnostic: CY4PR11MB0007: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ON0eIMZsF0tmTywlZeEgQHBmzBS3oNGPzr6XSTGHbHJob9X23e3YgBpSmY/gZcQ4yGKyOieEYVAXb2+w6Pwx3l+sS3/qeFRE55iECNZ6gxnmnlRpjLFS1ul62vet5YoIyROACNrhiiH1tNA0b/2TF2uyMP4mXqGrLuGjtD2gCClBFH54qbukWmcIhEskV5JwpSHfjlan/5nOiRkTGMTK+xaPVIMVTxoiIaKtkrwVVo/b6cfR6u22ennTEildavovecdb6xx75vhhde697jcb1i9WE4V43ES+/iMMJecg/LxUUJvYVSNYYy3rGBYD2YxwV1W1A6v4TPvth20PaWlR2jFRM+Kop1tBr+eblCZ7xD28hdUyRSpV/6D5xDI5nvAwIPJUjx+lZiQDDCXvGYtIbQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CY4PR11MB1288.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(396003)(376002)(346002)(366004)(136003)(83380400001)(7696005)(478600001)(71200400001)(6506007)(2906002)(52536014)(86362001)(110136005)(966005)(19627235002)(53546011)(5660300002)(316002)(30864003)(76116006)(64756008)(33656002)(54906003)(66556008)(9686003)(8676002)(66946007)(66446008)(4326008)(55016002)(26005)(8936002)(186003)(66476007);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: +lFQyD+1z0mXWLLuPb7AwwxxDsW3VncxU+AOytiYZbGwRSi7RKvsh3enTah8r3yJ71Vn73kPi9FhRAufr0npMWchQnMfGTg9u39IY3VaLNAO8PKOkT8c9YsMcXW3jEJHEWUkUspkKh0MPq6gx2/i6IwzyAXF6ogiIOrjomAsYn+moKMvMF6PdoGIn/Dc0YeX0PnqTf2h/+lvVFAnANeRyJNEsvvMbw7Tph9Lm6wd0eyYMwLwm64rAwqHDiAhBpNMqiaM4OMxsI2me+KGvvyTe4pew1IgQwbgPYm+wXKM57HH8VUPy8oUF0ETF4wS3zbnrmMiU4D26/xVuBpBD7nQzoCtbbf5wL4ewDDz9chX39Unan+y51OkTm6g9Qsyh8pkHO8vDSTlKfdVawy3rlt7gSIJS8p7uZSVbnS9Yp1z8X4MbwYrh43ijqpjrtgU5K0kiyZiBYREdPBoQH3CZ+B1401XU3bquunGtXHgRcKmUSddy064d8nMi81HdiciiDarI7ejmoVmym53MHeXIyfrBqpFTokyldiZF7odnDBypS4yICSKoZmlwnKAGmx/srASwSmmcU5o7kTXtUchDrr69A2xnSL/Esi3rp3j4bgRfcYubGjh9jvl60NSX3Ny0wLjWKOLsbLSIrKfIQhncCnleg== MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CY4PR11MB1288.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 757dbe26-bd9d-42c9-d7a4-08d8823ded16 X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Nov 2020 10:22:55.3519 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: XR+KHX1VfcXmXFEjApj/2aa4ChjziRepG5tgioMTom+f7yfXOBn1LA4LWN/r/r7YDk1VGIVWh4UeIu7ovY1EBA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR11MB0007 Return-Path: jiewen.yao@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi Zurcher I am not CI person, so I recommend you have a discussion with Mike, Laszlo= , or Liming to see what is the best way to resolve the coding style issue. = Or how to change CI rule to add exception somewhere. However, I do have concern, when you say: "the module is not compatible wi= th GCC builds." In previous review, I already gave the comment to pass build with GCC and = CLANG besides MSVC. Do you mean this patch cannot pass GCC build? Thank you Yao Jiewen > -----Original Message----- > From: Zurcher, Christopher J > Sent: Friday, November 6, 2020 5:50 PM > To: Yao, Jiewen ; devel@edk2.groups.io > Cc: Wang, Jian J ; Lu, XiaoyuX > ; Kinney, Michael D ; > Ard Biesheuvel > Subject: RE: [edk2-devel] [PATCH v5 0/2] CryptoPkg/OpensslLib: Add nativ= e > instruction support for X64 >=20 > I think some of these errors are not relevant based on the nature of the > commit: >=20 > One of the errors reported is that the added typedefs (ptrdiff_t, wchar_= t) do > not follow coding guidelines, but the typedefs are required for OpenSSL > compatibility and they match the already-existing style: >=20 > typedef UINTN size_t; > typedef UINTN u_int; > +typedef INTN ptrdiff_t; > typedef INTN ssize_t; > typedef INT32 time_t; > typedef UINT8 __uint8_t; > typedef UINT8 sa_family_t; > typedef UINT8 u_char; > typedef UINT32 uid_t; > typedef UINT32 gid_t; > +typedef CHAR16 wchar_t; >=20 > Another error is that the auto-generated assembly files do not start wit= h > capital letters, but these filenames come from OpenSSL with lowercase > filenames, and we already have opensslconf.h in the Include folder which > has a lowercase filename. >=20 > Another error type reported is that the auto-generated assembly files do= not > have "SPDX-License-Identifier: BSD-2-Clause-Patent" but it was already > discussed on the list that these would be checked in with the OpenSSL he= ader > similar to opensslconf.h: > https://github.com/tianocore/edk2/blob/master/CryptoPkg/Library/Include/ > openssl/opensslconf.h >=20 > Additionally, there is an error that OpensslLibX64.inf is not in CryptoP= kg.dsc, > but I am not sure if it is appropriate to include as the module is not > compatible with GCC builds. >=20 > How should I proceed here? >=20 > Thanks, > Christopher Zurcher >=20 > > -----Original Message----- > > From: Yao, Jiewen > > Sent: Thursday, November 5, 2020 22:14 > > To: devel@edk2.groups.io; Yao, Jiewen ; Zurcher, > > Christopher J > > Cc: Wang, Jian J ; Lu, XiaoyuX > ; > > Kinney, Michael D ; Ard Biesheuvel > > > > Subject: RE: [edk2-devel] [PATCH v5 0/2] CryptoPkg/OpensslLib: Add nat= ive > > instruction support for X64 > > > > Hi Zurcher > > I created https://github.com/tianocore/edk2/pull/1092 > > > > However, there are failures in CI test. So this patch is NOT merged. > > > > Please take a look and resolve it. > > > > Thank you > > Yao Jiewen > > > > > -----Original Message----- > > > From: devel@edk2.groups.io On Behalf Of Yao, > > > Jiewen > > > Sent: Friday, November 6, 2020 1:56 PM > > > To: Zurcher, Christopher J ; > > > devel@edk2.groups.io > > > Cc: Wang, Jian J ; Lu, XiaoyuX > > > ; Kinney, Michael D > ; > > > Ard Biesheuvel > > > Subject: Re: [edk2-devel] [PATCH v5 0/2] CryptoPkg/OpensslLib: Add > native > > > instruction support for X64 > > > > > > Patch 1/2 reviewed-by: Jiewen Yao > > > > > > > -----Original Message----- > > > > From: Christopher J Zurcher > > > > Sent: Wednesday, November 4, 2020 5:59 AM > > > > To: devel@edk2.groups.io > > > > Cc: Yao, Jiewen ; Wang, Jian J > > > > ; Lu, XiaoyuX ; Kinne= y, > > > > Michael D ; Ard Biesheuvel > > > > > > > > Subject: [PATCH v5 0/2] CryptoPkg/OpensslLib: Add native instructi= on > > > > support for X64 > > > > > > > > V5 Changes: > > > > Move ApiHooks.c into X64 folder > > > > Update process_files.pl to clean architecture-specific subfolder= s > > without > > > > removing them > > > > Rebased INF file to merge latest changes regarding RngLib vs. Ti= merLib > > > > > > > > V4 Changes: > > > > Add copyright header to uefi-asm.conf > > > > Move [Sources.X64] block to cover entire X64-specific config > > > > > > > > V3 Changes: > > > > Added definitions for ptrdiff_t and wchar_t to CrtLibSupport.h f= or > > > > LLVM/Clang build support. > > > > Added -UWIN32 to GCC Flags for LLVM/Clang build support. > > > > Added missing AES GCM assembly file. > > > > > > > > V2 Changes: > > > > Limit scope of assembly config to SHA and AES functions. > > > > Removed IA32 native support (reduced config was causing build fa= ilure > > > and > > > > can be added in a later patch). > > > > Removed XMM instructions from assembly generation. > > > > Added automatic copyright header porting for generated assembly > files. > > > > > > > > This patch adds support for building the native instruction algori= thms > > for > > > > the X64 architecture in OpensslLib. The process_files.pl script wa= s > > modified > > > > to parse the .asm file targets from the OpenSSL build config data = struct, > > and > > > > generate the necessary assembly files for the EDK2 build environme= nt. > > > > > > > > For the X64 variant, OpenSSL includes calls to a Windows error han= dling > > API, > > > > and that function has been stubbed out in ApiHooks.c. > > > > > > > > For all variants, a constructor is added to call the required CPUI= D > > function > > > > within OpenSSL to facilitate processor capability checks in the na= tive > > > > algorithms. > > > > > > > > Additional native architecture variants should be simple to add by > > following > > > > the changes made for this architecture. > > > > > > > > The OpenSSL assembly files are traditionally generated at build ti= me > > using a > > > > perl script. To avoid that burden on EDK2 users, these end-result > > assembly > > > > files are generated during the configuration steps performed by th= e > > > package > > > > maintainer (through process_files.pl). The perl generator scripts = inside > > > > OpenSSL do not parse file comments as they are only meant to creat= e > > > > intermediate build files, so process_files.pl contains additional = hooks > > to > > > > preserve the copyright headers as well as clean up tabs and line e= ndings > > to > > > > comply with EDK2 coding standards. The resulting file headers alig= n > with > > > > the generated .h files which are already included in the EDK2 repo= sitory. > > > > > > > > Cc: Jiewen Yao > > > > Cc: Jian J Wang > > > > Cc: Xiaoyu Lu > > > > Cc: Mike Kinney > > > > Cc: Ard Biesheuvel > > > > > > > > Christopher J Zurcher (2): > > > > CryptoPkg/OpensslLib: Add native instruction support for X64 > > > > CryptoPkg/OpensslLib: Commit the auto-generated assembly files f= or > X64 > > > > > > > > CryptoPkg/Library/OpensslLib/OpensslLib.inf = | > > 2 +- > > > > CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf = | > > 2 +- > > > > CryptoPkg/Library/OpensslLib/OpensslLibX64.inf = | > > 653 +++ > > > > CryptoPkg/Library/Include/CrtLibSupport.h = | > > 2 + > > > > CryptoPkg/Library/Include/openssl/opensslconf.h = | > > 3 - > > > > CryptoPkg/Library/OpensslLib/OpensslLibConstructor.c = | > > 34 + > > > > CryptoPkg/Library/OpensslLib/X64/ApiHooks.c = | > > 18 + > > > > CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-mb-x86_64.nasm > | > > > > 732 +++ > > > > CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha1- > x86_64.nasm | > > > > 1916 ++++++++ > > > > CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha256- > x86_64.nasm > > > | > > > > 78 + > > > > CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-x86_64.nasm > | > > > > 5103 ++++++++++++++++++++ > > > > CryptoPkg/Library/OpensslLib/X64/crypto/aes/vpaes-x86_64.nasm > | > > > > 1173 +++++ > > > > CryptoPkg/Library/OpensslLib/X64/crypto/modes/aesni-gcm- > x86_64.nasm > > > > | 34 + > > > > CryptoPkg/Library/OpensslLib/X64/crypto/modes/ghash-x86_64.nasm > | > > > > 1569 ++++++ > > > > CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-mb-x86_64.nasm > | > > > > 3137 ++++++++++++ > > > > CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-x86_64.nasm > | > > > > 2884 +++++++++++ > > > > CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256-mb- > x86_64.nasm > > > | > > > > 3461 +++++++++++++ > > > > CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256-x86_64.nasm > | > > > > 3313 +++++++++++++ > > > > CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha512-x86_64.nasm > | > > > > 1938 ++++++++ > > > > CryptoPkg/Library/OpensslLib/X64/crypto/x86_64cpuid.nasm = | > > 491 > > > > ++ > > > > CryptoPkg/Library/OpensslLib/process_files.pl = | > > 232 +- > > > > CryptoPkg/Library/OpensslLib/uefi-asm.conf = | > > 21 + > > > > 22 files changed, 26746 insertions(+), 50 deletions(-) > > > > create mode 100644 CryptoPkg/Library/OpensslLib/OpensslLibX64.inf > > > > create mode 100644 > > > CryptoPkg/Library/OpensslLib/OpensslLibConstructor.c > > > > create mode 100644 CryptoPkg/Library/OpensslLib/X64/ApiHooks.c > > > > create mode 100644 > CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni- > > > > mb-x86_64.nasm > > > > create mode 100644 > CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni- > > > > sha1-x86_64.nasm > > > > create mode 100644 > CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni- > > > > sha256-x86_64.nasm > > > > create mode 100644 > CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni- > > > > x86_64.nasm > > > > create mode 100644 > CryptoPkg/Library/OpensslLib/X64/crypto/aes/vpaes- > > > > x86_64.nasm > > > > create mode 100644 > > > > CryptoPkg/Library/OpensslLib/X64/crypto/modes/aesni-gcm- > x86_64.nasm > > > > create mode 100644 > > > > CryptoPkg/Library/OpensslLib/X64/crypto/modes/ghash-x86_64.nasm > > > > create mode 100644 > CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1- > > > > mb-x86_64.nasm > > > > create mode 100644 > CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1- > > > > x86_64.nasm > > > > create mode 100644 > > > CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256- > > > > mb-x86_64.nasm > > > > create mode 100644 > > > CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha256- > > > > x86_64.nasm > > > > create mode 100644 > > > CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha512- > > > > x86_64.nasm > > > > create mode 100644 > > > > CryptoPkg/Library/OpensslLib/X64/crypto/x86_64cpuid.nasm > > > > create mode 100644 CryptoPkg/Library/OpensslLib/uefi-asm.conf > > > > > > > > -- > > > > 2.28.0.windows.1 > > > > > > > > > > > >=20 > > >