From nobody Thu May 16 10:53:04 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+75947+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+75947+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1622619981; cv=none; d=zohomail.com; s=zohoarc; b=RI9F7LkLwqc/ctI0xKe50Wz5BBLFIfCHIIxz+Ysc9pVcr3EJLsAyx+JhKA4Wkl8PAK5Qj+CyJRmd3pzTy7NpLjy2Or4cmGu89VjnghDBiS7UY5JEvcC4zAjcSi/gDLHmbIpQ1FdnT7uK+57X7aiAm3A5NnDMsZVhIysmia7WbpA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1622619981; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=V+9A3oKlk1PQ7gMWKiQnZ/V2PgmMCp4Pd8bBT73F184=; b=Cmrggq8W6rVY/KJZGWDdM064EunslqVm7ZcLetVXzffwO8PaN3zaDIs/m++bnDSUtz0ZmAJyTnm5hi4Wpun74H5qb653OgIDhKsSuBmnDRoW+8dpwY7H8VzRKrxg9bxYTCQTNopbkEwonIFOkLD3hDjSizTvykhZKiJOjWdZfgg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+75947+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1622619981314725.5889152613623; Wed, 2 Jun 2021 00:46:21 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id lJPdYY1788612xUyZHuAnVRi; Wed, 02 Jun 2021 00:46:20 -0700 X-Received: from mga12.intel.com (mga12.intel.com []) by mx.groups.io with SMTP id smtpd.web12.9878.1622619979686731258 for ; Wed, 02 Jun 2021 00:46:20 -0700 IronPort-SDR: kpR3akgeEESkvtuundPex/gXEEJxEuM1shTtPGqgIWqdxkY3Wldmi07hs0Sg/4Sz8bAQPN5nbH XjonfRhEQaqw== X-IronPort-AV: E=McAfee;i="6200,9189,10002"; a="183409042" X-IronPort-AV: E=Sophos;i="5.83,241,1616482800"; d="scan'208";a="183409042" X-Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Jun 2021 00:46:19 -0700 IronPort-SDR: BKxcK8O+W3qfq/T4BhvR2Sxnrki93a+wMBdm0x2m/ZiZU8zRTMosLBW1ZJINQRhOaRWiL8OkTI 2pNUGKfkDSaw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,241,1616482800"; d="scan'208";a="479607205" X-Received: from ray-dev.ccr.corp.intel.com ([10.239.158.87]) by orsmga001.jf.intel.com with ESMTP; 02 Jun 2021 00:46:18 -0700 From: "Ni, Ray" To: devel@edk2.groups.io Cc: Liming Gao , Feng Bob C Subject: [edk2-devel] [PATCH 1/6] BaseTools: Add ClangBase.lds for CLANG8 tool chain with max-page-size Date: Wed, 2 Jun 2021 15:45:49 +0800 Message-Id: <20210602074554.244-2-ray.ni@intel.com> In-Reply-To: <20210602074554.244-1-ray.ni@intel.com> References: <20210602074554.244-1-ray.ni@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,ray.ni@intel.com X-Gm-Message-State: ubXXINEGv0pdr1akPvUmXZWWx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1622619980; bh=U/HF6qrHjvYtF5pnASjOW4I9/9aESC71R7AoZR+40GM=; h=Cc:Date:From:Reply-To:Subject:To; b=Z5meIYHxr5P6mPl8zVclJNA9kbj9w3PfiE+BIzbPBwYB0PHoKKIgwA9a4ciGCb9Jsuf l3qvGlik3Tmym0fp3zscFEyZmLj9jpa6LylP4WH5uPe747KXuI0dKDfSUcKbPyiN3yHXu 7gn4wxASISYwWMmrb6ZrHBvMRAGYSFZZ0yE= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" From: Liming Gao LLVM LLD linker doesn't support common-page-size option. So, max-page-size is used. To not impact GCC tool chain, new ClangBase.lds is added. Signed-off-by: Liming Gao Reviewed-by: Feng Bob C --- BaseTools/Scripts/ClangBase.lds | 79 +++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 BaseTools/Scripts/ClangBase.lds diff --git a/BaseTools/Scripts/ClangBase.lds b/BaseTools/Scripts/ClangBase.= lds new file mode 100644 index 0000000000..8abd54aee6 --- /dev/null +++ b/BaseTools/Scripts/ClangBase.lds @@ -0,0 +1,79 @@ +/** @file + + Unified linker script for GCC based builds + + Copyright (c) 2010 - 2015, Intel Corporation. All rights reserved.
+ Copyright (c) 2015, Linaro Ltd. All rights reserved.
+ (C) Copyright 2016 Hewlett Packard Enterprise Development LP
+ + SPDX-License-Identifier: BSD-2-Clause-Patent + +**/ + +SECTIONS { + + /* + * The PE/COFF binary consists of DOS and PE/COFF headers, and a sequenc= e of + * section headers adding up to PECOFF_HEADER_SIZE bytes (which differs + * between 32-bit and 64-bit builds). The actual start of the .text sect= ion + * will be rounded up based on its actual alignment. + */ + . =3D PECOFF_HEADER_SIZE; + + .text : ALIGN(CONSTANT(MAXPAGESIZE)) { + *(.text .text.* .stub .gnu.linkonce.t.*) + *(.rodata .rodata.* .gnu.linkonce.r.*) + *(.got .got.*) + + /* + * The contents of AutoGen.c files are mostly constant from the POV of= the + * program, but most of it ends up in .data or .bss by default since f= ew of + * the variable definitions that get emitted are declared as CONST. + * Unfortunately, we cannot pull it into the .text section entirely, s= ince + * patchable PCDs are also emitted here, but we can at least move all = of the + * emitted GUIDs here. + */ + *:AutoGen.obj(.data.g*Guid) + } + + /* + * The alignment of the .data section should be less than or equal to the + * alignment of the .text section. This ensures that the relative offset + * between these sections is the same in the ELF and the PE/COFF version= s of + * this binary. + */ + .data ALIGN(ALIGNOF(.text)) : ALIGN(CONSTANT(MAXPAGESIZE)) { + *(.data .data.* .gnu.linkonce.d.*) + *(.bss .bss.*) + } + + .eh_frame ALIGN(CONSTANT(MAXPAGESIZE)) : { + KEEP (*(.eh_frame)) + } + + .rela (INFO) : { + *(.rela .rela.*) + } + + .hii : ALIGN(CONSTANT(MAXPAGESIZE)) { + KEEP (*(.hii)) + } + + /* + * Retain the GNU build id but in a non-allocatable section so GenFw + * does not copy it into the PE/COFF image. + */ + .build-id (INFO) : { *(.note.gnu.build-id) } + + /DISCARD/ : { + *(.note.GNU-stack) + *(.gnu_debuglink) + *(.interp) + *(.dynsym) + *(.dynstr) + *(.dynamic) + *(.hash .gnu.hash) + *(.comment) + *(COMMON) + } +} --=20 2.31.1.windows.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#75947): https://edk2.groups.io/g/devel/message/75947 Mute This Topic: https://groups.io/mt/83253703/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu May 16 10:53:04 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+75948+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+75948+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1622619988; cv=none; d=zohomail.com; s=zohoarc; b=BdZjFE6uBWJjHRj4u4fwE8T4hKR8CAVZHJVL7u7KI/nMVjpnbfsK3bWOlqvnEHI4/Sbjr2Lm0+cSH6WOe4JRdWuBkfb7IjGQkDcIkiTjdWwcymen5BGR9dg87TCzr3Rgx2urCb3qPIG+gMJLHi2NUTGN/QD0aWcq6nfTeLjq8JU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1622619988; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=6ELKXxVHp1XdV0w+yJl0JYKbCNzL30H1Y/fVn2pAR1o=; b=kjg0imRaJBcIu7auFtOB0kMKpdU95Lf2m4b1HBOHA78oRXsI5mCbv7H1g3NkxjB1TgxsqKF3ca+S6N10PhQUGBYz4VGHB/LEfvmfcy77RRKkHP7W1+k1dWpvvVfo/NWveG8+5uChgYQWexgh54m+aXOrhQK4lm7HY+Nho27Twdo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+75948+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1622619988424341.44757109191255; Wed, 2 Jun 2021 00:46:28 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id uaSbYY1788612xjrQlyc41jw; Wed, 02 Jun 2021 00:46:27 -0700 X-Received: from mga12.intel.com (mga12.intel.com []) by mx.groups.io with SMTP id smtpd.web12.9878.1622619979686731258 for ; Wed, 02 Jun 2021 00:46:21 -0700 IronPort-SDR: lo8vXFb2qsMDbE8vx4tO/9GEVqL3aMesQFQhh5I9/DMe9fa99PTP7Muj0vmXJ7ekvyrnC0qyCO pVfY2HnIsGAg== X-IronPort-AV: E=McAfee;i="6200,9189,10002"; a="183409057" X-IronPort-AV: E=Sophos;i="5.83,241,1616482800"; d="scan'208";a="183409057" X-Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Jun 2021 00:46:21 -0700 IronPort-SDR: 62SvnKOnSf6jbpNOUiXvn7oE7B9kTykz2KT0/L5xXo5VIoJZhHDMAjInmyMTCDr4/0yU8KZS5d wIJj7qkJUV7Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,241,1616482800"; d="scan'208";a="479607224" X-Received: from ray-dev.ccr.corp.intel.com ([10.239.158.87]) by orsmga001.jf.intel.com with ESMTP; 02 Jun 2021 00:46:19 -0700 From: "Ni, Ray" To: devel@edk2.groups.io Cc: Liming Gao , Feng Bob C Subject: [edk2-devel] [PATCH 2/6] BaseTools GenFw: Support CLANG8ELF with conversion ELF to PE/COFF image Date: Wed, 2 Jun 2021 15:45:50 +0800 Message-Id: <20210602074554.244-3-ray.ni@intel.com> In-Reply-To: <20210602074554.244-1-ray.ni@intel.com> References: <20210602074554.244-1-ray.ni@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,ray.ni@intel.com X-Gm-Message-State: ppeZ5Q8rjdZsYegw6Bm9Ek9sx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1622619987; bh=r5ttRsCWegWQaryiK3kBvO/FyH5HOn8wUORlPFjfyJU=; h=Cc:Date:From:Reply-To:Subject:To; b=fFiaJE2PynTKB8sh9mdPZuHeLDPjDtJkUUzTRKpoeEEOZ/7NMoX4mPKVEHWea69cgth 09pAUvWPHVw9C6m5TW+3ep+M7uK7MA/eQ3LxHxQfBVdCrwHLFeHQjlGmG1LszcIf9pain oaf0lmz5NIxjRj5s+ni2jyT3MBxoirSgiwk= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" From: Liming Gao CLANG8ELF tool chain generated ELF image with the different attributes in section. Update GenFw to handle them. 1. .text section with writable attribute (support) 2. .reloc section has the symbol for *ABS* (skip) Signed-off-by: Liming Gao Reviewed-by: Feng Bob C # Conflicts: # BaseTools/Source/C/GenFw/Elf64Convert.c --- BaseTools/Source/C/GenFw/Elf32Convert.c | 12 +++--------- BaseTools/Source/C/GenFw/Elf64Convert.c | 5 +++-- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/BaseTools/Source/C/GenFw/Elf32Convert.c b/BaseTools/Source/C/G= enFw/Elf32Convert.c index 2485b2cb7a..7c8a065678 100644 --- a/BaseTools/Source/C/GenFw/Elf32Convert.c +++ b/BaseTools/Source/C/GenFw/Elf32Convert.c @@ -238,7 +238,7 @@ IsTextShdr ( Elf_Shdr *Shdr ) { - return (BOOLEAN) ((Shdr->sh_flags & (SHF_WRITE | SHF_ALLOC)) =3D=3D SHF_= ALLOC); + return (BOOLEAN) ((Shdr->sh_flags & (SHF_EXECINSTR | SHF_ALLOC)) =3D=3D = (SHF_EXECINSTR | SHF_ALLOC)); } =20 STATIC @@ -261,7 +261,7 @@ IsDataShdr ( if (IsHiiRsrcShdr(Shdr)) { return FALSE; } - return (BOOLEAN) (Shdr->sh_flags & (SHF_WRITE | SHF_ALLOC)) =3D=3D (SHF_= ALLOC | SHF_WRITE); + return (BOOLEAN) (Shdr->sh_flags & (SHF_EXECINSTR | SHF_WRITE | SHF_ALLO= C)) =3D=3D (SHF_ALLOC | SHF_WRITE); } =20 STATIC @@ -749,13 +749,7 @@ WriteSections32 ( if (SymName =3D=3D NULL) { SymName =3D (const UINT8 *)""; } - - Error (NULL, 0, 3000, "Invalid", - "%s: Bad definition for symbol '%s'@%#x or unsupported sy= mbol type. " - "For example, absolute and undefined symbols are not supp= orted.", - mInImageName, SymName, Sym->st_value); - - exit(EXIT_FAILURE); + continue; } SymShdr =3D GetShdrByIndex(Sym->st_shndx); =20 diff --git a/BaseTools/Source/C/GenFw/Elf64Convert.c b/BaseTools/Source/C/G= enFw/Elf64Convert.c index d097db8632..8fe672e984 100644 --- a/BaseTools/Source/C/GenFw/Elf64Convert.c +++ b/BaseTools/Source/C/GenFw/Elf64Convert.c @@ -246,7 +246,7 @@ IsTextShdr ( Elf_Shdr *Shdr ) { - return (BOOLEAN) ((Shdr->sh_flags & (SHF_WRITE | SHF_ALLOC)) =3D=3D SHF_= ALLOC); + return (BOOLEAN) ((Shdr->sh_flags & (SHF_EXECINSTR | SHF_ALLOC)) =3D=3D = (SHF_EXECINSTR | SHF_ALLOC)); } =20 STATIC @@ -269,7 +269,7 @@ IsDataShdr ( if (IsHiiRsrcShdr(Shdr)) { return FALSE; } - return (BOOLEAN) (Shdr->sh_flags & (SHF_WRITE | SHF_ALLOC)) =3D=3D (SHF_= ALLOC | SHF_WRITE); + return (BOOLEAN) (Shdr->sh_flags & (SHF_EXECINSTR | SHF_WRITE | SHF_ALLO= C)) =3D=3D (SHF_ALLOC | SHF_WRITE); } =20 STATIC @@ -1060,6 +1060,7 @@ WriteSections64 ( =20 exit(EXIT_FAILURE); } + continue; } SymShdr =3D GetShdrByIndex(Sym->st_shndx); =20 --=20 2.31.1.windows.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#75948): https://edk2.groups.io/g/devel/message/75948 Mute This Topic: https://groups.io/mt/83253704/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu May 16 10:53:04 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+75949+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+75949+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1622619989; cv=none; d=zohomail.com; s=zohoarc; b=KtRK6qAg8cs9KMkhx5au//wepZCQLj4BVjY0dmjWRZ6lUOg2Ye93fEOI/DIQpBT0kE0GEG2b8eGzKb1ZG0UVu4IOOSzS7GPZLE+Ng/r+LTKbSJNtaaMu0yN7WZLSZ8GgxTWPz3fVxlxHwp4FYjENhYRCS7TNIbRrNqqPu49uzOg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1622619989; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=jHwOCaAoLxz70czxlFnaY6plOY51p3cFGBRVXencb6M=; b=ElkhMuaS5nsW+HqA2ZtQzPdZHwylFbeKHeczndIoOR0y2MbtCds/672sj96gO0dtf0NX9P9FYtsdXkFMoVnZSUnG5ni8X60FAlT7n3tTFz2GK10u/XRA5YkxYKZmwCz6w4cvUwLLM3FkeRBwAIYcg2CDBTcvhpg2F95LFXmG+do= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+75949+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1622619989089920.9749089063554; Wed, 2 Jun 2021 00:46:29 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id aBrLYY1788612xNodzobbPk8; Wed, 02 Jun 2021 00:46:28 -0700 X-Received: from mga12.intel.com (mga12.intel.com []) by mx.groups.io with SMTP id smtpd.web12.9878.1622619979686731258 for ; Wed, 02 Jun 2021 00:46:22 -0700 IronPort-SDR: mS7mhidsCfzK+c774p7Rdzeum3Ri/c/oaFbwbTS26EdAa9l8VFd1l1hX5xelxnWxm7YlLM6B3F Qb9l53vCImcQ== X-IronPort-AV: E=McAfee;i="6200,9189,10002"; a="183409084" X-IronPort-AV: E=Sophos;i="5.83,241,1616482800"; d="scan'208";a="183409084" X-Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Jun 2021 00:46:22 -0700 IronPort-SDR: wUMoP/txeJmYQgocruXpMcbS/6gSA0QLfjy+K/lWMexzIP5jz914tJU1FcC1YrAZYjh9YMNsqM JAyszGqAPr+w== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,241,1616482800"; d="scan'208";a="479607242" X-Received: from ray-dev.ccr.corp.intel.com ([10.239.158.87]) by orsmga001.jf.intel.com with ESMTP; 02 Jun 2021 00:46:21 -0700 From: "Ni, Ray" To: devel@edk2.groups.io Cc: Liming Gao , Feng Bob C Subject: [edk2-devel] [PATCH 3/6] BaseTools: Update build_rule to skip CLANG resource section generation Date: Wed, 2 Jun 2021 15:45:51 +0800 Message-Id: <20210602074554.244-4-ray.ni@intel.com> In-Reply-To: <20210602074554.244-1-ray.ni@intel.com> References: <20210602074554.244-1-ray.ni@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,ray.ni@intel.com X-Gm-Message-State: x89KYbdY71DjQFAG6v0MfokVx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1622619988; bh=z4u5iq/qxwBKL9TRdLhsgKxyQRQIRs7NZb8DYTYhaGA=; h=Cc:Date:From:Reply-To:Subject:To; b=lgJW08cjnxbGwUhnJ7Sf2/UTRZDzozerkodox8RP1eIaRN4EAowdUjTGvtqJptUte36 GqeBh5haOPCRbSJ10xDaljSUDRiQk+lk6jTrZy/quqmomZMk7T4eNIYnS2uEyGYH5Mwko AswROXsFRco/ozrbqmlTICD15hkcgU8PAXI= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" From: Liming Gao LLVM/CLANG doesn't support resource section generation when ELF image gener= ated. Signed-off-by: Liming Gao Reviewed-by: Feng Bob C # Conflicts: # BaseTools/Conf/build_rule.template --- BaseTools/Conf/build_rule.template | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/BaseTools/Conf/build_rule.template b/BaseTools/Conf/build_rule= .template index 1395792cd6..3add1029f2 100755 --- a/BaseTools/Conf/build_rule.template +++ b/BaseTools/Conf/build_rule.template @@ -669,6 +669,5 @@ "$(GENFW)" -o $(OUTPUT_DIR)(+)$(MODULE_NAME)hii.rc -g $(MODULE_GUI= D) --hiibinpackage $(HII_BINARY_PACKAGES) $(GENFW_FLAGS) "$(RC)" $(RC_FLAGS) $(OUTPUT_DIR)(+)$(MODULE_NAME)hii.rc ${dst} - - - GenFw -o $(OUTPUT_DIR)(+)$(MODULE_NAME)hii.rc -g $(MODULE_GUID) --= hiibinpackage $(HII_BINARY_PACKAGES) + + "$(GENFW)" -o $(OUTPUT_DIR)(+)$(MODULE_NAME)hii.rc -g $(MODULE_GUI= D) --hiibinpackage $(HII_BINARY_PACKAGES) $(GENFW_FLAGS) --=20 2.31.1.windows.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#75949): https://edk2.groups.io/g/devel/message/75949 Mute This Topic: https://groups.io/mt/83253705/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu May 16 10:53:04 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+75950+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+75950+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1622619990; cv=none; d=zohomail.com; s=zohoarc; b=BtHiUSiczVMgc8A07J6uZP3rwi4S6Q0d4Dslhecl8c7HEFHkNc/O2DWyEiMqf8TcOao1LoO44G1Jj+1HdwBqNb1kH8q5kPm7ieXzJzOnTJORr8KLgv/AJcKJUL4UIi7zyQWfb0zmL+lTl4q+/tHHO2aUyLRxG8dc76Z/3n5PFOM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1622619990; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=YINfGiuzkYhEOgRR3Ui97+BSYO0gITzygc7FmPDC8RU=; b=Sqf3PjNDw+8qYFbw3TTI/AZvPljsK2kC4lQgiudvl7IuwM4JCPOc4nOV4Fii+k2J+4jLJY+0461P342s5bfrpaDVR7uQ/aOQ+iHKsX5/dXkMOo6i7swp0q6tB3/lzsfJaCe8pSyUjKjhDGEZQ8hkWDQET9/WyxkCJtS19LGT1/Q= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+75950+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1622619990375478.0145895471496; Wed, 2 Jun 2021 00:46:30 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id lOucYY1788612x8utysj0yyE; Wed, 02 Jun 2021 00:46:30 -0700 X-Received: from mga12.intel.com (mga12.intel.com []) by mx.groups.io with SMTP id smtpd.web12.9878.1622619979686731258 for ; Wed, 02 Jun 2021 00:46:24 -0700 IronPort-SDR: bciIoTYymEkyl0r9U/K/1FeitMR/jlrbbuSfB6G+KqJe/P4/Eb1Zp21ZQ9bnyMmoe3H8IknBQU tONHQV/1uH5g== X-IronPort-AV: E=McAfee;i="6200,9189,10002"; a="183409097" X-IronPort-AV: E=Sophos;i="5.83,241,1616482800"; d="scan'208";a="183409097" X-Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Jun 2021 00:46:24 -0700 IronPort-SDR: zHypwbXjObBXm4/zt/18vmQUorKA01rd3lXpYxSclIFYbw5ORusC+7/I0tgNjGjHXfiQvGTxsG 6egf8vcEYhYg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,241,1616482800"; d="scan'208";a="479607258" X-Received: from ray-dev.ccr.corp.intel.com ([10.239.158.87]) by orsmga001.jf.intel.com with ESMTP; 02 Jun 2021 00:46:22 -0700 From: "Ni, Ray" To: devel@edk2.groups.io Cc: Liming Gao , Feng Bob C Subject: [edk2-devel] [PATCH 4/6] BaseTools: Add new CLANG8ELF tool chain for new LLVM/CLANG8 Date: Wed, 2 Jun 2021 15:45:52 +0800 Message-Id: <20210602074554.244-5-ray.ni@intel.com> In-Reply-To: <20210602074554.244-1-ray.ni@intel.com> References: <20210602074554.244-1-ray.ni@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,ray.ni@intel.com X-Gm-Message-State: hb7gwwFFITwRYucy4GvfzKkqx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1622619990; bh=ns+uPlGuHpUGV+G3c/33emRpbkXblSre5Ofb8/ypLvo=; h=Cc:Date:From:Reply-To:Subject:To; b=v6Z1AK3s8PeYxGNswZId9acStL0fr+RR3WoxuzqxztRFpIxlkeXmAqtbIgd6LKTi9AH To4Y2n5nH0mgv2z72/C5b42qdXuBHzYEMKL989Osbi6GPT4hi6HJYzNzkl39uhgHUXE5o ItjGcNWkMZfkNQATkWg8HUJ9pDKfvCOITI4= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" From: Liming Gao BZ:https://bugzilla.tianocore.org/show_bug.cgi?id=3D1603 LLVM/CLANG8 formal release http://releases.llvm.org/download.html#8.0.0 It can be downloaded and installed in Windows/Linux/Mac OS. CLANG8ELF tool chain is added to generate ELF image, and convert to PE/COFF. On Windows OS, set CLANG_HOST_BIN=3Dn, set CLANG8_BIN=3DLLVM installed dire= ctory For example: set CLANG_HOST_BIN=3Dn # use windows nmake set CLANG8_BIN=3DC:\Program Files\LLVM\bin\ On Linux/Mac, set CLANG8_BIN=3DLLVM installed directory This tool chain can be used to compile the firmware code. On windows OS, Visual Studio is still required to compile BaseTools C tools and nmake.exe. On Linux/Mac OS, gcc is used to compile BaseTools C tools. make is used for makefile. This tool chain is verified on OVMF Ia32, X64 and Ia32X64 to boot Shell. This tool chain is verified in Windows/Linux and Mac OS. Signed-off-by: Liming Gao Reviewed-by: Feng Bob C # Conflicts: # BaseTools/Conf/tools_def.template --- BaseTools/Conf/tools_def.template | 102 ++++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+) diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.t= emplate index 498696e583..c8ef1a1421 100755 --- a/BaseTools/Conf/tools_def.template +++ b/BaseTools/Conf/tools_def.template @@ -292,6 +292,10 @@ DEFINE DTC_BIN =3D ENV(DTC_PREFIX)dtc # Required to compile nasm source: # nasm compiler from # NASM -- http://www.nasm.us/ +# CLANG8ELF -Linux,Windows,Mac- Requires: +# LLVM 8.0.0 or above, https://llvm.org/ +# On Windows OS, Visual Studio is required to = be installed for nmake and compile BaseTools C tools. +# Optional: # Required to build platforms or ACPI tables: # Intel(r) ACPI Compiler from # https://acpica.org/downloads @@ -2828,6 +2832,104 @@ NOOPT_CLANGPDB_X64_DLINK_FLAGS =3D /NOLOGO /NO= DEFAULTLIB /IGNORE:4001 /OPT:RE NOOPT_CLANGPDB_X64_DLINK2_FLAGS =3D NOOPT_CLANGPDB_X64_GENFW_FLAGS =3D --keepexceptiontable =20 +# Clang 8.0.0 - This configuration is used to compile under Windows, Linux= , Mac to +# produce ELF image, and convert to PE/COFF image using LLVM/CLANG 8.0 wit= h LTO +# +##########################################################################= ########## +*_CLANG8ELF_*_*_FAMILY =3D GCC +*_CLANG8ELF_*_*_BUILDRULEFAMILY =3D CLANGGCC +*_CLANG8ELF_*_MAKE_PATH =3D ENV(CLANG_HOST_BIN)make +*_CLANG8ELF_*_*_DLL =3D ENV(CLANG8_DLL) +*_CLANG8ELF_*_ASL_PATH =3D DEF(UNIX_IASL_BIN) + +*_CLANG8ELF_*_APP_FLAGS =3D +*_CLANG8ELF_*_ASL_FLAGS =3D DEF(IASL_FLAGS) +*_CLANG8ELF_*_ASL_OUTFLAGS =3D DEF(IASL_OUTFLAGS) + +DEFINE CLANG8ELF_IA32_PREFIX =3D ENV(CLANG8_BIN) +DEFINE CLANG8ELF_X64_PREFIX =3D ENV(CLANG8_BIN) + +# LLVM/CLANG doesn't support -n link option. So, it can't share the same I= A32_X64_DLINK_COMMON flag. +# LLVM/CLANG doesn't support common page size. So, it can't share the same= GccBase.lds script. +DEFINE CLANG8ELF_IA32_X64_DLINK_COMMON =3D -nostdlib -Wl,-q,--gc-section= s -z max-page-size=3D0x40 +DEFINE CLANG8ELF_DLINK2_FLAGS_COMMON =3D -Wl,--script=3D$(EDK_TOOLS_PA= TH)/Scripts/ClangBase.lds +DEFINE CLANG8ELF_IA32_X64_ASLDLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_= COMMON) -Wl,--defsym=3DPECOFF_HEADER_SIZE=3D0 DEF(CLANG8ELF_DLINK2_FLAGS_CO= MMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable +DEFINE CLANG8ELF_IA32_X64_DLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_= COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$= (DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive +DEFINE CLANG8ELF_IA32_DLINK2_FLAGS =3D -Wl,--defsym=3DPECOFF_HEADER_= SIZE=3D0x220 DEF(CLANG8ELF_DLINK2_FLAGS_COMMON) +DEFINE CLANG8ELF_X64_DLINK2_FLAGS =3D -Wl,--defsym=3DPECOFF_HEADER_= SIZE=3D0x228 DEF(CLANG8ELF_DLINK2_FLAGS_COMMON) + +########################### +# CLANG8ELF IA32 definitions +########################### +*_CLANG8ELF_IA32_CC_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang +*_CLANG8ELF_IA32_SLINK_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)llvm-ar +*_CLANG8ELF_IA32_DLINK_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang +*_CLANG8ELF_IA32_ASLDLINK_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang +*_CLANG8ELF_IA32_ASM_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang +*_CLANG8ELF_IA32_PP_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang +*_CLANG8ELF_IA32_VFRPP_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang +*_CLANG8ELF_IA32_ASLCC_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang +*_CLANG8ELF_IA32_ASLPP_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang +*_CLANG8ELF_IA32_RC_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)llvm-rc + +*_CLANG8ELF_IA32_ASLCC_FLAGS =3D DEF(GCC_ASLCC_FLAGS) -m32 -fno-l= to DEF(CLANG38_IA32_TARGET) +*_CLANG8ELF_IA32_ASLDLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_ASLDLINK_= FLAGS) -Wl,-m,elf_i386 -fuse-ld=3Dlld +*_CLANG8ELF_IA32_ASM_FLAGS =3D DEF(GCC5_ASM_FLAGS) -m32 -march= =3Di386 DEF(CLANG38_IA32_TARGET) +*_CLANG8ELF_IA32_RC_FLAGS =3D DEF(GCC_IA32_RC_FLAGS) +*_CLANG8ELF_IA32_OBJCOPY_FLAGS =3D +*_CLANG8ELF_IA32_NASM_FLAGS =3D -f elf32 +*_CLANG8ELF_IA32_PP_FLAGS =3D DEF(GCC_PP_FLAGS) DEF(CLANG38_IA= 32_TARGET) +*_CLANG8ELF_IA32_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANG38= _IA32_TARGET) +*_CLANG8ELF_IA32_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANG38= _IA32_TARGET) + +DEBUG_CLANG8ELF_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 -= Oz -flto -march=3Di586 DEF(CLANG38_IA32_TARGET) -g +DEBUG_CLANG8ELF_IA32_DLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_FLA= GS) -flto -Wl,-O3 -Wl,-melf_i386 -Wl,--oformat,elf32-i386 +DEBUG_CLANG8ELF_IA32_DLINK2_FLAGS =3D DEF(CLANG8ELF_IA32_DLINK2_FLAGS)= -O3 -fuse-ld=3Dlld + +RELEASE_CLANG8ELF_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 -= Oz -flto -march=3Di586 DEF(CLANG38_IA32_TARGET) +RELEASE_CLANG8ELF_IA32_DLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_FLA= GS) -flto -Wl,-O3 -Wl,-melf_i386 -Wl,--oformat,elf32-i386 +RELEASE_CLANG8ELF_IA32_DLINK2_FLAGS =3D DEF(CLANG8ELF_IA32_DLINK2_FLAGS)= -O3 -fuse-ld=3Dlld + +NOOPT_CLANG8ELF_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 -= O0 -march=3Di586 DEF(CLANG38_IA32_TARGET) -g +NOOPT_CLANG8ELF_IA32_DLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_FLA= GS) -Wl,-O0 -Wl,-melf_i386 -Wl,--oformat,elf32-i386 +NOOPT_CLANG8ELF_IA32_DLINK2_FLAGS =3D DEF(CLANG8ELF_IA32_DLINK2_FLAGS)= -O0 -fuse-ld=3Dlld + +########################## +# CLANG8ELF X64 definitions +########################## +*_CLANG8ELF_X64_CC_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang +*_CLANG8ELF_X64_SLINK_PATH =3D DEF(CLANG8ELF_X64_PREFIX)llvm-ar +*_CLANG8ELF_X64_DLINK_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang +*_CLANG8ELF_X64_ASLDLINK_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang +*_CLANG8ELF_X64_ASM_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang +*_CLANG8ELF_X64_PP_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang +*_CLANG8ELF_X64_VFRPP_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang +*_CLANG8ELF_X64_ASLCC_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang +*_CLANG8ELF_X64_ASLPP_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang +*_CLANG8ELF_X64_RC_PATH =3D DEF(CLANG8ELF_X64_PREFIX)llvm-rc + +*_CLANG8ELF_X64_ASLCC_FLAGS =3D DEF(GCC_ASLCC_FLAGS) -m64 -fno-lt= o DEF(CLANG38_X64_TARGET) +*_CLANG8ELF_X64_ASLDLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_ASLDLINK_F= LAGS) -Wl,-m,elf_x86_64 -fuse-ld=3Dlld +*_CLANG8ELF_X64_ASM_FLAGS =3D DEF(GCC5_ASM_FLAGS) -m64 DEF(CLAN= G38_X64_TARGET) +*_CLANG8ELF_X64_RC_FLAGS =3D DEF(GCC_X64_RC_FLAGS) +*_CLANG8ELF_X64_OBJCOPY_FLAGS =3D +*_CLANG8ELF_X64_NASM_FLAGS =3D -f elf64 +*_CLANG8ELF_X64_PP_FLAGS =3D DEF(GCC_PP_FLAGS) DEF(CLANG38_X64= _TARGET) +*_CLANG8ELF_X64_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_= X64_TARGET) +*_CLANG8ELF_X64_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_= X64_TARGET) + +DEBUG_CLANG8ELF_X64_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m64 "-= DEFIAPI=3D__attribute__((ms_abi))" -mno-red-zone -mcmodel=3Dsmall -fpie -Oz= -flto DEF(CLANG38_X64_TARGET) -g +DEBUG_CLANG8ELF_X64_DLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_FLAG= S) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmo= del=3Dsmall -Wl,--apply-dynamic-relocs +DEBUG_CLANG8ELF_X64_DLINK2_FLAGS =3D DEF(CLANG8ELF_X64_DLINK2_FLAGS) -= O3 -fuse-ld=3Dlld + +RELEASE_CLANG8ELF_X64_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m64 "-= DEFIAPI=3D__attribute__((ms_abi))" -mno-red-zone -mcmodel=3Dsmall -fpie -Oz= -flto DEF(CLANG38_X64_TARGET) +RELEASE_CLANG8ELF_X64_DLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_FLAG= S) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmo= del=3Dsmall -Wl,--apply-dynamic-relocs +RELEASE_CLANG8ELF_X64_DLINK2_FLAGS =3D DEF(CLANG8ELF_X64_DLINK2_FLAGS) -= O3 -fuse-ld=3Dlld + +NOOPT_CLANG8ELF_X64_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m64 "-= DEFIAPI=3D__attribute__((ms_abi))" -mno-red-zone -mcmodel=3Dsmall -fpie -O0= DEF(CLANG38_X64_TARGET) -g +NOOPT_CLANG8ELF_X64_DLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_FLAG= S) -Wl,-O0 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=3D= small -Wl,--apply-dynamic-relocs +NOOPT_CLANG8ELF_X64_DLINK2_FLAGS =3D DEF(CLANG8ELF_X64_DLINK2_FLAGS) -= O0 -fuse-ld=3Dlld + # # # XCODE5 support --=20 2.31.1.windows.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#75950): https://edk2.groups.io/g/devel/message/75950 Mute This Topic: https://groups.io/mt/83253706/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu May 16 10:53:04 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+75951+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+75951+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1622619991; cv=none; d=zohomail.com; s=zohoarc; b=lEsx132w4kp6XI9FaOxRfJihp8Q3FVdHSv8sEMRLcbrNmav0rUE0j9ByDEorcZQdhaTrwcKJi4UI1B/klqXOshrOTREFWbE9bGgjB7LWOT/qB0vU2s1SkWJkCB+Drx5vUuNTjHjRfmOQnM/vDs1nQBeJ8WDGGDhyCC11PdG+9Ws= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1622619991; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=E0SgMOk6vzPetbuOcwssWhjiBL0uHYPxmqDabD6m2JI=; b=eJ3qw3kJL1ReeEH2pn8KvyIPxGzWaBKopgW9x6VCe9fjcRMrhfPwu+sWp4bIDheMmHFZ3f0zLB2ou0GCuO9SQoPDoGLU1UzamppPFZZS4EJM47nfHN7illq1U4Og4JMYjZr05fWvzIVAyFdgeaufyPAafRCFXOeGh6QmUFPolKg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+75951+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1622619991739304.10764187781035; Wed, 2 Jun 2021 00:46:31 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id dcQMYY1788612xjeGsCAB533; Wed, 02 Jun 2021 00:46:31 -0700 X-Received: from mga12.intel.com (mga12.intel.com []) by mx.groups.io with SMTP id smtpd.web12.9878.1622619979686731258 for ; Wed, 02 Jun 2021 00:46:25 -0700 IronPort-SDR: JKNWw3/kxKwy0NtisvbW8snXuOvc2eE+TyMEyxlTNvtFu/0mmvkALkMhH9Qi4Hd7CkayNzAKz3 xLh1GSxOzhHQ== X-IronPort-AV: E=McAfee;i="6200,9189,10002"; a="183409106" X-IronPort-AV: E=Sophos;i="5.83,241,1616482800"; d="scan'208";a="183409106" X-Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Jun 2021 00:46:25 -0700 IronPort-SDR: vM4+jd37UfxUl41SEonkPEi2kk9OZRRqAmTU4HkB85mSxR12khGui0k5wmRGpgQ7c8e/lFnJim 6/5jHDOnJJ+Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,241,1616482800"; d="scan'208";a="479607278" X-Received: from ray-dev.ccr.corp.intel.com ([10.239.158.87]) by orsmga001.jf.intel.com with ESMTP; 02 Jun 2021 00:46:23 -0700 From: "Ni, Ray" To: devel@edk2.groups.io Cc: Bob Feng , Liming Gao , Yuwei Chen Subject: [edk2-devel] [PATCH 5/6] BaseTools: Update ClangBase.lds to keep dynamic section Date: Wed, 2 Jun 2021 15:45:53 +0800 Message-Id: <20210602074554.244-6-ray.ni@intel.com> In-Reply-To: <20210602074554.244-1-ray.ni@intel.com> References: <20210602074554.244-1-ray.ni@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,ray.ni@intel.com X-Gm-Message-State: 92fBeS7Lc9ofcTvoBT6SvVRvx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1622619991; bh=CEG9GJRK914NRRbLLWULnAD8murJci8PNhRUrCbWBOk=; h=Cc:Date:From:Reply-To:Subject:To; b=VB/DAlZqD3ZyVHalcEDPYHSIWsa7NgavzGmFginyRma8vTBmLILmy6+WtAleG6wNj5y 1hLGa20Y5P8RXEybDwwkz9ZhcDvl7pIwJ6di6AhKzt9jVdjVOoukIpo3sXOrH5lZlAVFE GbYmy9TcLkQKhOE2dEtCygo8as0r8znBJ2Y= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" The .dynamic section is needed for ELF runtime relocation. Signed-off-by: Ray Ni Cc: Bob Feng Cc: Liming Gao Cc: Yuwei Chen --- BaseTools/Scripts/ClangBase.lds | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/BaseTools/Scripts/ClangBase.lds b/BaseTools/Scripts/ClangBase.= lds index 8abd54aee6..61452ddd95 100644 --- a/BaseTools/Scripts/ClangBase.lds +++ b/BaseTools/Scripts/ClangBase.lds @@ -1,8 +1,8 @@ /** @file =20 - Unified linker script for GCC based builds + Unified linker script for CLANG based builds =20 - Copyright (c) 2010 - 2015, Intel Corporation. All rights reserved.
+ Copyright (c) 2010 - 2021, Intel Corporation. All rights reserved.
Copyright (c) 2015, Linaro Ltd. All rights reserved.
(C) Copyright 2016 Hewlett Packard Enterprise Development LP
=20 @@ -71,7 +71,6 @@ SECTIONS { *(.interp) *(.dynsym) *(.dynstr) - *(.dynamic) *(.hash .gnu.hash) *(.comment) *(COMMON) --=20 2.31.1.windows.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#75951): https://edk2.groups.io/g/devel/message/75951 Mute This Topic: https://groups.io/mt/83253707/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu May 16 10:53:04 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+75952+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+75952+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1622619993; cv=none; d=zohomail.com; s=zohoarc; b=G6qO/BuqqZwgajnwJv5EfdXDI5U5FBBq4UHOB5Aw+klbUSLfiha4Qd6LdJFKeUcyrhgsa6zHgCHWNqqqhgIUEBeqO1VuDpGkANrc741fPiQC6A0hXnu/ybkqRRjSdZWeIgGi5eUH8UUB/A8rwyYMD3UGmbmmJ5DYEty0P68KsFA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1622619993; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=bHRIyuw0gRMIWtYBBnGmqmVDe9rsK/zqXQIlCOW1kDw=; b=Hf9HrYEurDTvvMH/Ejljpg2UjrSY0H3UxqtrIkz09Z2peS9++ajWIw6+WL4FJYAps0s6ISklJW0uclUdiTJK6jr8o6HJpqYbr8aAsPZp7F4rlZ/td1D1m9KZwogubhAjSjpZ5a1PqIpoMsu5+xIM2C8WTEhXLeB6w+Xazek4ZyA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+75952+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1622619993345714.5442226704769; Wed, 2 Jun 2021 00:46:33 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id wG3wYY1788612xEf4FlnKLcO; Wed, 02 Jun 2021 00:46:33 -0700 X-Received: from mga12.intel.com (mga12.intel.com []) by mx.groups.io with SMTP id smtpd.web12.9878.1622619979686731258 for ; Wed, 02 Jun 2021 00:46:27 -0700 IronPort-SDR: vaOYn8MFT4qjhbCbskgFRFTpuM/e20749H0Vtv/1/7MleycI0Yo5H/ZfR+gv001PbNLE7kgFy/ AfK/eNVb5H3Q== X-IronPort-AV: E=McAfee;i="6200,9189,10002"; a="183409125" X-IronPort-AV: E=Sophos;i="5.83,241,1616482800"; d="scan'208";a="183409125" X-Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Jun 2021 00:46:27 -0700 IronPort-SDR: IcFSB4PgQI07Qkw+AZtJR486X+OD+hUl5JVKE8E2nBLNdi71TXsHDKiiI+4cFk5WsbXAkeLrDU PJNhr/1r/BRg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,241,1616482800"; d="scan'208";a="479607295" X-Received: from ray-dev.ccr.corp.intel.com ([10.239.158.87]) by orsmga001.jf.intel.com with ESMTP; 02 Jun 2021 00:46:25 -0700 From: "Ni, Ray" To: devel@edk2.groups.io Cc: Bob Feng , Liming Gao , Yuwei Chen Subject: [edk2-devel] [PATCH 6/6] BaseTools: Change CLANG8ELF to CLANGDWARF Date: Wed, 2 Jun 2021 15:45:54 +0800 Message-Id: <20210602074554.244-7-ray.ni@intel.com> In-Reply-To: <20210602074554.244-1-ray.ni@intel.com> References: <20210602074554.244-1-ray.ni@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,ray.ni@intel.com X-Gm-Message-State: W6mGCGVROeoOhaPzKiU2ixfex1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1622619993; bh=v70CEnu9EPaAW+2KHS3Bv7FjL9sJHdDiP/4UO74JL0Y=; h=Cc:Date:From:Reply-To:Subject:To; b=Nt1Qol7Wg/VYn1jaKaR+G27Crc6/ZmLBnGJCncsZr2Ttp8ygQa1zr47mLTUbnPvEAwr /BtfBHbvEwEfji7mvkp4fCxhgIuhzMsy73tVmuy5whrkvE91NykCiJMQw/2veu/9MfnI1 3JDf65t1bQMGZ3/c6nLV35vhIRFFmSQmTZI= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" CLANGDWARF is more proper because it's similar to CLANGPDB that generates PE images but with DWARF debug symbols. This toolchain is needed for creating ELF format universal payload that follows https://universalpayload.github.io/documentation/. Signed-off-by: Ray Ni Cc: Bob Feng Cc: Liming Gao Cc: Yuwei Chen --- BaseTools/Conf/tools_def.template | 181 +++++++++++++++--------------- 1 file changed, 91 insertions(+), 90 deletions(-) diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.t= emplate index c8ef1a1421..2e6b382ab6 100755 --- a/BaseTools/Conf/tools_def.template +++ b/BaseTools/Conf/tools_def.template @@ -292,13 +292,12 @@ DEFINE DTC_BIN =3D ENV(DTC_PREFIX)dtc # Required to compile nasm source: # nasm compiler from # NASM -- http://www.nasm.us/ -# CLANG8ELF -Linux,Windows,Mac- Requires: -# LLVM 8.0.0 or above, https://llvm.org/ -# On Windows OS, Visual Studio is required to = be installed for nmake and compile BaseTools C tools. +# CLANGDWARF -Linux, Windows, Mac- Requires: +# Clang 9 or above from http://releases.llvm.o= rg/ # Optional: -# Required to build platforms or ACPI tables: -# Intel(r) ACPI Compiler from -# https://acpica.org/downloads +# Required to compile nasm source: +# nasm compiler from +# NASM -- http://www.nasm.us/ # VS2008x86 -win64- Requires: # Microsoft Visual Studio 2008 (x86) # Microsoft Windows Server 2003 Driver Develop= ment Kit (Microsoft WINDDK) version 3790.1830 @@ -2832,103 +2831,105 @@ NOOPT_CLANGPDB_X64_DLINK_FLAGS =3D /NOLOGO /= NODEFAULTLIB /IGNORE:4001 /OPT:RE NOOPT_CLANGPDB_X64_DLINK2_FLAGS =3D NOOPT_CLANGPDB_X64_GENFW_FLAGS =3D --keepexceptiontable =20 -# Clang 8.0.0 - This configuration is used to compile under Windows, Linux= , Mac to -# produce ELF image, and convert to PE/COFF image using LLVM/CLANG 8.0 wit= h LTO +##########################################################################= ########## +# +# CLANGDWARF - This configuration is used to compile under Windows/Linux/M= ac to produce +# ELF binaries using LLVM/Clang/LLD with Link Time Optimization enabled # ##########################################################################= ########## -*_CLANG8ELF_*_*_FAMILY =3D GCC -*_CLANG8ELF_*_*_BUILDRULEFAMILY =3D CLANGGCC -*_CLANG8ELF_*_MAKE_PATH =3D ENV(CLANG_HOST_BIN)make -*_CLANG8ELF_*_*_DLL =3D ENV(CLANG8_DLL) -*_CLANG8ELF_*_ASL_PATH =3D DEF(UNIX_IASL_BIN) +*_CLANGDWARF_*_*_FAMILY =3D GCC +*_CLANGDWARF_*_*_BUILDRULEFAMILY =3D CLANGGCC +*_CLANGDWARF_*_MAKE_PATH =3D ENV(CLANG_HOST_BIN)make +*_CLANGDWARF_*_*_DLL =3D ENV(CLANGDWARF_DLL) +*_CLANGDWARF_*_ASL_PATH =3D DEF(UNIX_IASL_BIN) =20 -*_CLANG8ELF_*_APP_FLAGS =3D -*_CLANG8ELF_*_ASL_FLAGS =3D DEF(IASL_FLAGS) -*_CLANG8ELF_*_ASL_OUTFLAGS =3D DEF(IASL_OUTFLAGS) +*_CLANGDWARF_*_APP_FLAGS =3D +*_CLANGDWARF_*_ASL_FLAGS =3D DEF(IASL_FLAGS) +*_CLANGDWARF_*_ASL_OUTFLAGS =3D DEF(IASL_OUTFLAGS) =20 -DEFINE CLANG8ELF_IA32_PREFIX =3D ENV(CLANG8_BIN) -DEFINE CLANG8ELF_X64_PREFIX =3D ENV(CLANG8_BIN) +DEFINE CLANGDWARF_IA32_PREFIX =3D ENV(CLANG_BIN) +DEFINE CLANGDWARF_X64_PREFIX =3D ENV(CLANG_BIN) =20 # LLVM/CLANG doesn't support -n link option. So, it can't share the same I= A32_X64_DLINK_COMMON flag. # LLVM/CLANG doesn't support common page size. So, it can't share the same= GccBase.lds script. -DEFINE CLANG8ELF_IA32_X64_DLINK_COMMON =3D -nostdlib -Wl,-q,--gc-section= s -z max-page-size=3D0x40 -DEFINE CLANG8ELF_DLINK2_FLAGS_COMMON =3D -Wl,--script=3D$(EDK_TOOLS_PA= TH)/Scripts/ClangBase.lds -DEFINE CLANG8ELF_IA32_X64_ASLDLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_= COMMON) -Wl,--defsym=3DPECOFF_HEADER_SIZE=3D0 DEF(CLANG8ELF_DLINK2_FLAGS_CO= MMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable -DEFINE CLANG8ELF_IA32_X64_DLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_= COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$= (DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive -DEFINE CLANG8ELF_IA32_DLINK2_FLAGS =3D -Wl,--defsym=3DPECOFF_HEADER_= SIZE=3D0x220 DEF(CLANG8ELF_DLINK2_FLAGS_COMMON) -DEFINE CLANG8ELF_X64_DLINK2_FLAGS =3D -Wl,--defsym=3DPECOFF_HEADER_= SIZE=3D0x228 DEF(CLANG8ELF_DLINK2_FLAGS_COMMON) +DEFINE CLANGDWARF_IA32_X64_DLINK_COMMON =3D -nostdlib -Wl,-q,--gc-sectio= ns -z max-page-size=3D0x40 +DEFINE CLANGDWARF_DLINK2_FLAGS_COMMON =3D -Wl,--script=3D$(EDK_TOOLS_P= ATH)/Scripts/ClangBase.lds +DEFINE CLANGDWARF_IA32_X64_ASLDLINK_FLAGS =3D DEF(CLANGDWARF_IA32_X64_DLIN= K_COMMON) -Wl,--defsym=3DPECOFF_HEADER_SIZE=3D0 DEF(CLANGDWARF_DLINK2_FLAGS= _COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable +DEFINE CLANGDWARF_IA32_X64_DLINK_FLAGS =3D DEF(CLANGDWARF_IA32_X64_DLIN= K_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map= ,$(DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive +DEFINE CLANGDWARF_IA32_DLINK2_FLAGS =3D -Wl,--defsym=3DPECOFF_HEADER= _SIZE=3D0x220 DEF(CLANGDWARF_DLINK2_FLAGS_COMMON) +DEFINE CLANGDWARF_X64_DLINK2_FLAGS =3D -Wl,--defsym=3DPECOFF_HEADER= _SIZE=3D0x228 DEF(CLANGDWARF_DLINK2_FLAGS_COMMON) =20 ########################### -# CLANG8ELF IA32 definitions +# CLANGDWARF IA32 definitions ########################### -*_CLANG8ELF_IA32_CC_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang -*_CLANG8ELF_IA32_SLINK_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)llvm-ar -*_CLANG8ELF_IA32_DLINK_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang -*_CLANG8ELF_IA32_ASLDLINK_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang -*_CLANG8ELF_IA32_ASM_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang -*_CLANG8ELF_IA32_PP_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang -*_CLANG8ELF_IA32_VFRPP_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang -*_CLANG8ELF_IA32_ASLCC_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang -*_CLANG8ELF_IA32_ASLPP_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)clang -*_CLANG8ELF_IA32_RC_PATH =3D DEF(CLANG8ELF_IA32_PREFIX)llvm-rc - -*_CLANG8ELF_IA32_ASLCC_FLAGS =3D DEF(GCC_ASLCC_FLAGS) -m32 -fno-l= to DEF(CLANG38_IA32_TARGET) -*_CLANG8ELF_IA32_ASLDLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_ASLDLINK_= FLAGS) -Wl,-m,elf_i386 -fuse-ld=3Dlld -*_CLANG8ELF_IA32_ASM_FLAGS =3D DEF(GCC5_ASM_FLAGS) -m32 -march= =3Di386 DEF(CLANG38_IA32_TARGET) -*_CLANG8ELF_IA32_RC_FLAGS =3D DEF(GCC_IA32_RC_FLAGS) -*_CLANG8ELF_IA32_OBJCOPY_FLAGS =3D -*_CLANG8ELF_IA32_NASM_FLAGS =3D -f elf32 -*_CLANG8ELF_IA32_PP_FLAGS =3D DEF(GCC_PP_FLAGS) DEF(CLANG38_IA= 32_TARGET) -*_CLANG8ELF_IA32_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANG38= _IA32_TARGET) -*_CLANG8ELF_IA32_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANG38= _IA32_TARGET) - -DEBUG_CLANG8ELF_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 -= Oz -flto -march=3Di586 DEF(CLANG38_IA32_TARGET) -g -DEBUG_CLANG8ELF_IA32_DLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_FLA= GS) -flto -Wl,-O3 -Wl,-melf_i386 -Wl,--oformat,elf32-i386 -DEBUG_CLANG8ELF_IA32_DLINK2_FLAGS =3D DEF(CLANG8ELF_IA32_DLINK2_FLAGS)= -O3 -fuse-ld=3Dlld - -RELEASE_CLANG8ELF_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 -= Oz -flto -march=3Di586 DEF(CLANG38_IA32_TARGET) -RELEASE_CLANG8ELF_IA32_DLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_FLA= GS) -flto -Wl,-O3 -Wl,-melf_i386 -Wl,--oformat,elf32-i386 -RELEASE_CLANG8ELF_IA32_DLINK2_FLAGS =3D DEF(CLANG8ELF_IA32_DLINK2_FLAGS)= -O3 -fuse-ld=3Dlld - -NOOPT_CLANG8ELF_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 -= O0 -march=3Di586 DEF(CLANG38_IA32_TARGET) -g -NOOPT_CLANG8ELF_IA32_DLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_FLA= GS) -Wl,-O0 -Wl,-melf_i386 -Wl,--oformat,elf32-i386 -NOOPT_CLANG8ELF_IA32_DLINK2_FLAGS =3D DEF(CLANG8ELF_IA32_DLINK2_FLAGS)= -O0 -fuse-ld=3Dlld +*_CLANGDWARF_IA32_CC_PATH =3D DEF(CLANGDWARF_IA32_PREFIX)clang +*_CLANGDWARF_IA32_SLINK_PATH =3D DEF(CLANGDWARF_IA32_PREFIX)llvm= -ar +*_CLANGDWARF_IA32_DLINK_PATH =3D DEF(CLANGDWARF_IA32_PREFIX)clang +*_CLANGDWARF_IA32_ASLDLINK_PATH =3D DEF(CLANGDWARF_IA32_PREFIX)clang +*_CLANGDWARF_IA32_ASM_PATH =3D DEF(CLANGDWARF_IA32_PREFIX)clang +*_CLANGDWARF_IA32_PP_PATH =3D DEF(CLANGDWARF_IA32_PREFIX)clang +*_CLANGDWARF_IA32_VFRPP_PATH =3D DEF(CLANGDWARF_IA32_PREFIX)clang +*_CLANGDWARF_IA32_ASLCC_PATH =3D DEF(CLANGDWARF_IA32_PREFIX)clang +*_CLANGDWARF_IA32_ASLPP_PATH =3D DEF(CLANGDWARF_IA32_PREFIX)clang +*_CLANGDWARF_IA32_RC_PATH =3D DEF(CLANGDWARF_IA32_PREFIX)llvm= -rc + +*_CLANGDWARF_IA32_ASLCC_FLAGS =3D DEF(GCC_ASLCC_FLAGS) -m32 -fno-= lto DEF(CLANG38_IA32_TARGET) +*_CLANGDWARF_IA32_ASLDLINK_FLAGS =3D DEF(CLANGDWARF_IA32_X64_ASLDLIN= K_FLAGS) -Wl,-m,elf_i386 -fuse-ld=3Dlld +*_CLANGDWARF_IA32_ASM_FLAGS =3D DEF(GCC5_ASM_FLAGS) -m32 -march= =3Di386 DEF(CLANG38_IA32_TARGET) +*_CLANGDWARF_IA32_RC_FLAGS =3D DEF(GCC_IA32_RC_FLAGS) +*_CLANGDWARF_IA32_OBJCOPY_FLAGS =3D +*_CLANGDWARF_IA32_NASM_FLAGS =3D -f elf32 +*_CLANGDWARF_IA32_PP_FLAGS =3D DEF(GCC_PP_FLAGS) DEF(CLANG38_I= A32_TARGET) +*_CLANGDWARF_IA32_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANG3= 8_IA32_TARGET) +*_CLANGDWARF_IA32_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANG3= 8_IA32_TARGET) + +DEBUG_CLANGDWARF_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 = -Oz -flto -march=3Di586 DEF(CLANG38_IA32_TARGET) -g +DEBUG_CLANGDWARF_IA32_DLINK_FLAGS =3D DEF(CLANGDWARF_IA32_X64_DLINK_F= LAGS) -flto -Wl,-O3 -Wl,-melf_i386 -Wl,--oformat,elf32-i386 +DEBUG_CLANGDWARF_IA32_DLINK2_FLAGS =3D DEF(CLANGDWARF_IA32_DLINK2_FLAG= S) -O3 -fuse-ld=3Dlld + +RELEASE_CLANGDWARF_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 = -Oz -flto -march=3Di586 DEF(CLANG38_IA32_TARGET) +RELEASE_CLANGDWARF_IA32_DLINK_FLAGS =3D DEF(CLANGDWARF_IA32_X64_DLINK_F= LAGS) -flto -Wl,-O3 -Wl,-melf_i386 -Wl,--oformat,elf32-i386 +RELEASE_CLANGDWARF_IA32_DLINK2_FLAGS =3D DEF(CLANGDWARF_IA32_DLINK2_FLAG= S) -O3 -fuse-ld=3Dlld + +NOOPT_CLANGDWARF_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 = -O0 -march=3Di586 DEF(CLANG38_IA32_TARGET) -g +NOOPT_CLANGDWARF_IA32_DLINK_FLAGS =3D DEF(CLANGDWARF_IA32_X64_DLINK_F= LAGS) -Wl,-O0 -Wl,-melf_i386 -Wl,--oformat,elf32-i386 +NOOPT_CLANGDWARF_IA32_DLINK2_FLAGS =3D DEF(CLANGDWARF_IA32_DLINK2_FLAG= S) -O0 -fuse-ld=3Dlld =20 ########################## -# CLANG8ELF X64 definitions +# CLANGDWARF X64 definitions ########################## -*_CLANG8ELF_X64_CC_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang -*_CLANG8ELF_X64_SLINK_PATH =3D DEF(CLANG8ELF_X64_PREFIX)llvm-ar -*_CLANG8ELF_X64_DLINK_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang -*_CLANG8ELF_X64_ASLDLINK_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang -*_CLANG8ELF_X64_ASM_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang -*_CLANG8ELF_X64_PP_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang -*_CLANG8ELF_X64_VFRPP_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang -*_CLANG8ELF_X64_ASLCC_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang -*_CLANG8ELF_X64_ASLPP_PATH =3D DEF(CLANG8ELF_X64_PREFIX)clang -*_CLANG8ELF_X64_RC_PATH =3D DEF(CLANG8ELF_X64_PREFIX)llvm-rc - -*_CLANG8ELF_X64_ASLCC_FLAGS =3D DEF(GCC_ASLCC_FLAGS) -m64 -fno-lt= o DEF(CLANG38_X64_TARGET) -*_CLANG8ELF_X64_ASLDLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_ASLDLINK_F= LAGS) -Wl,-m,elf_x86_64 -fuse-ld=3Dlld -*_CLANG8ELF_X64_ASM_FLAGS =3D DEF(GCC5_ASM_FLAGS) -m64 DEF(CLAN= G38_X64_TARGET) -*_CLANG8ELF_X64_RC_FLAGS =3D DEF(GCC_X64_RC_FLAGS) -*_CLANG8ELF_X64_OBJCOPY_FLAGS =3D -*_CLANG8ELF_X64_NASM_FLAGS =3D -f elf64 -*_CLANG8ELF_X64_PP_FLAGS =3D DEF(GCC_PP_FLAGS) DEF(CLANG38_X64= _TARGET) -*_CLANG8ELF_X64_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_= X64_TARGET) -*_CLANG8ELF_X64_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_= X64_TARGET) - -DEBUG_CLANG8ELF_X64_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m64 "-= DEFIAPI=3D__attribute__((ms_abi))" -mno-red-zone -mcmodel=3Dsmall -fpie -Oz= -flto DEF(CLANG38_X64_TARGET) -g -DEBUG_CLANG8ELF_X64_DLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_FLAG= S) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmo= del=3Dsmall -Wl,--apply-dynamic-relocs -DEBUG_CLANG8ELF_X64_DLINK2_FLAGS =3D DEF(CLANG8ELF_X64_DLINK2_FLAGS) -= O3 -fuse-ld=3Dlld - -RELEASE_CLANG8ELF_X64_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m64 "-= DEFIAPI=3D__attribute__((ms_abi))" -mno-red-zone -mcmodel=3Dsmall -fpie -Oz= -flto DEF(CLANG38_X64_TARGET) -RELEASE_CLANG8ELF_X64_DLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_FLAG= S) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmo= del=3Dsmall -Wl,--apply-dynamic-relocs -RELEASE_CLANG8ELF_X64_DLINK2_FLAGS =3D DEF(CLANG8ELF_X64_DLINK2_FLAGS) -= O3 -fuse-ld=3Dlld - -NOOPT_CLANG8ELF_X64_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m64 "-= DEFIAPI=3D__attribute__((ms_abi))" -mno-red-zone -mcmodel=3Dsmall -fpie -O0= DEF(CLANG38_X64_TARGET) -g -NOOPT_CLANG8ELF_X64_DLINK_FLAGS =3D DEF(CLANG8ELF_IA32_X64_DLINK_FLAG= S) -Wl,-O0 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=3D= small -Wl,--apply-dynamic-relocs -NOOPT_CLANG8ELF_X64_DLINK2_FLAGS =3D DEF(CLANG8ELF_X64_DLINK2_FLAGS) -= O0 -fuse-ld=3Dlld +*_CLANGDWARF_X64_CC_PATH =3D DEF(CLANGDWARF_X64_PREFIX)clang +*_CLANGDWARF_X64_SLINK_PATH =3D DEF(CLANGDWARF_X64_PREFIX)llvm-ar +*_CLANGDWARF_X64_DLINK_PATH =3D DEF(CLANGDWARF_X64_PREFIX)clang +*_CLANGDWARF_X64_ASLDLINK_PATH =3D DEF(CLANGDWARF_X64_PREFIX)clang +*_CLANGDWARF_X64_ASM_PATH =3D DEF(CLANGDWARF_X64_PREFIX)clang +*_CLANGDWARF_X64_PP_PATH =3D DEF(CLANGDWARF_X64_PREFIX)clang +*_CLANGDWARF_X64_VFRPP_PATH =3D DEF(CLANGDWARF_X64_PREFIX)clang +*_CLANGDWARF_X64_ASLCC_PATH =3D DEF(CLANGDWARF_X64_PREFIX)clang +*_CLANGDWARF_X64_ASLPP_PATH =3D DEF(CLANGDWARF_X64_PREFIX)clang +*_CLANGDWARF_X64_RC_PATH =3D DEF(CLANGDWARF_X64_PREFIX)llvm-rc + +*_CLANGDWARF_X64_ASLCC_FLAGS =3D DEF(GCC_ASLCC_FLAGS) -m64 -fno-l= to DEF(CLANG38_X64_TARGET) +*_CLANGDWARF_X64_ASLDLINK_FLAGS =3D DEF(CLANGDWARF_IA32_X64_ASLDLINK= _FLAGS) -Wl,-m,elf_x86_64 -fuse-ld=3Dlld +*_CLANGDWARF_X64_ASM_FLAGS =3D DEF(GCC5_ASM_FLAGS) -m64 DEF(CLA= NG38_X64_TARGET) +*_CLANGDWARF_X64_RC_FLAGS =3D DEF(GCC_X64_RC_FLAGS) +*_CLANGDWARF_X64_OBJCOPY_FLAGS =3D +*_CLANGDWARF_X64_NASM_FLAGS =3D -f elf64 +*_CLANGDWARF_X64_PP_FLAGS =3D DEF(GCC_PP_FLAGS) DEF(CLANG38_X6= 4_TARGET) +*_CLANGDWARF_X64_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANG38= _X64_TARGET) +*_CLANGDWARF_X64_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANG38= _X64_TARGET) + +DEBUG_CLANGDWARF_X64_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m64 "= -DEFIAPI=3D__attribute__((ms_abi))" -mno-red-zone -mcmodel=3Dsmall -fpie -O= z -flto DEF(CLANG38_X64_TARGET) -g +DEBUG_CLANGDWARF_X64_DLINK_FLAGS =3D DEF(CLANGDWARF_IA32_X64_DLINK_FL= AGS) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mc= model=3Dsmall -Wl,--apply-dynamic-relocs +DEBUG_CLANGDWARF_X64_DLINK2_FLAGS =3D DEF(CLANGDWARF_X64_DLINK2_FLAGS)= -O3 -fuse-ld=3Dlld + +RELEASE_CLANGDWARF_X64_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m64 "= -DEFIAPI=3D__attribute__((ms_abi))" -mno-red-zone -mcmodel=3Dsmall -fpie -O= z -flto DEF(CLANG38_X64_TARGET) +RELEASE_CLANGDWARF_X64_DLINK_FLAGS =3D DEF(CLANGDWARF_IA32_X64_DLINK_FL= AGS) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mc= model=3Dsmall -Wl,--apply-dynamic-relocs +RELEASE_CLANGDWARF_X64_DLINK2_FLAGS =3D DEF(CLANGDWARF_X64_DLINK2_FLAGS)= -O3 -fuse-ld=3Dlld + +NOOPT_CLANGDWARF_X64_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m64 "= -DEFIAPI=3D__attribute__((ms_abi))" -mno-red-zone -mcmodel=3Dsmall -fpie -O= 0 DEF(CLANG38_X64_TARGET) -g +NOOPT_CLANGDWARF_X64_DLINK_FLAGS =3D DEF(CLANGDWARF_IA32_X64_DLINK_FL= AGS) -Wl,-O0 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel= =3Dsmall -Wl,--apply-dynamic-relocs +NOOPT_CLANGDWARF_X64_DLINK2_FLAGS =3D DEF(CLANGDWARF_X64_DLINK2_FLAGS)= -O0 -fuse-ld=3Dlld =20 # # --=20 2.31.1.windows.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#75952): https://edk2.groups.io/g/devel/message/75952 Mute This Topic: https://groups.io/mt/83253708/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-