From patchwork Wed Dec 12 10:33:06 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ard Biesheuvel X-Patchwork-Id: 153565 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp1660891ljp; Wed, 12 Dec 2018 02:33:17 -0800 (PST) X-Google-Smtp-Source: AFSGD/XQUsCF0MEycc9hOA9UStqTvzIzshknA3frEtJ6fTbuRIFM92Qi9D/FYwL3nP+GIMtYeps9 X-Received: by 2002:a63:920a:: with SMTP id o10mr17137409pgd.141.1544610797032; Wed, 12 Dec 2018 02:33:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544610797; cv=none; d=google.com; s=arc-20160816; b=LQDeD9DplU7h7wzt/JPKQQps3oH49AnHY22Twb1bdskrYu2pv59/1Cv84w4bgcY2tg EAZwbNLZSQvxBeTqz9p+hpEdqbfZxUvfoEe9Ed9hQvXuLu6UOQlErp9CJHKYBL/vH7Ew mKRt/HfMXM/Yf3mE2bBiXGm2HkRG79P/cK8xgmdgSkjK0Oq8RsWMjF0WXN6JQhDxfZ9K isRdTvUe+GP7oMftA8TIYJ2zZTy02DmlQieD2wGDygHNI9cXgnlbNWrt+dtA07IOiImh gD7XEPpKbwjIwDwSaxx6G/qW0MteyOMMCaqGDojaV+hvhVt2yzPdUBXos0Qp+vCO7+F7 faAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:references:in-reply-to:message-id :date:to:from:dkim-signature:delivered-to; bh=xdywiQSHzgOUbl+gNxyq2RIhge+V4VJ3nzX9PVPJSvE=; b=fYyIhCLIJsMxI5fVxKUDs9/zzZMbjG9s/T6MCSz5h6UHMXbeX7TuLDu/ocQk2H+0Er 62J+J5ZijKS0V+0CL72LQdIg35BHas+LwLgfwCuOhk2gw/GtzKZQRAkL7n5mioTA+L3L Xgw72sMd6ScCt8vhIqSjiehng6ggYoPze8QjQFEGJcni9zV+zGcbHuIFmqNH7RKQoK0T XOT5CQ698wXlpL2HRtI4MlgWuU1JUVvPNZX7RkYiJdlWUDXot0ayNTKls/DUlXt0FngB Oz9XW6l+KhX2qjn35Lxf0v3/Pqthnc/0/CJfMA3w7NOf0F0wVjW9JEwhXrxBDFEdfo++ bHRw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b=EgIIQvBn; spf=pass (google.com: best guess record for domain of edk2-devel-bounces@lists.01.org designates 198.145.21.10 as permitted sender) smtp.mailfrom=edk2-devel-bounces@lists.01.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from ml01.01.org (ml01.01.org. [198.145.21.10]) by mx.google.com with ESMTPS id bf4si14313577plb.163.2018.12.12.02.33.16 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 12 Dec 2018 02:33:17 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of edk2-devel-bounces@lists.01.org designates 198.145.21.10 as permitted sender) client-ip=198.145.21.10; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b=EgIIQvBn; spf=pass (google.com: best guess record for domain of edk2-devel-bounces@lists.01.org designates 198.145.21.10 as permitted sender) smtp.mailfrom=edk2-devel-bounces@lists.01.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id 20FCD2119C8A7; Wed, 12 Dec 2018 02:33:16 -0800 (PST) X-Original-To: edk2-devel@lists.01.org Delivered-To: edk2-devel@lists.01.org Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=2a00:1450:4864:20::344; helo=mail-wm1-x344.google.com; envelope-from=ard.biesheuvel@linaro.org; receiver=edk2-devel@lists.01.org Received: from mail-wm1-x344.google.com (mail-wm1-x344.google.com [IPv6:2a00:1450:4864:20::344]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 67DDE2119C89A for ; Wed, 12 Dec 2018 02:33:14 -0800 (PST) Received: by mail-wm1-x344.google.com with SMTP id q26so5320184wmf.5 for ; Wed, 12 Dec 2018 02:33:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=GN5eTXvJ1uOiTycjPIar8fPc83dvVb3CCEUsp4PozSU=; b=EgIIQvBn4sy4pqcDvL4xetnrMAq/B+DXVP2FQFxswil+SXGZjnxCQU87jCI726GmMT xMcP/vpzyMQBEs6NVQWKSNlok5brbcqWMUNLmarnGt3vSqH9G4by6faVThNzb8PX5YwD crUQrOD12fY85A0dWGUM7rnh3TFvCAJ43Qmck= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=GN5eTXvJ1uOiTycjPIar8fPc83dvVb3CCEUsp4PozSU=; b=NGpt18MpVuuFQzFb37Ag+vaPtvRvjEdI35MK947NKMYEiiriqknziL1+jdwlJYYXFf AgBKgmjP0wHhjXDQaGEfVPbTyC1SHcv4MsI9yHULmg675IIc6tcVAR9/9Iz3Lfh8EKvF PKyNLGgvy7z5RcuBU7DgalayQ4naAh4+gJ1TuPZLg56YaYbwi9fYisMmtbs3nCeEiSBc LR3YX3zM3LHBf9A5FQOyAn2GoTi7SnSCTobN/9/2Ya3OCdzhx1CpVc5PYLNNatwPCs7/ lLV6FdO1MFvY+nc0HakTWEpyBcx7CoFBnpI0HWMJUQAcrRQqASetUJDYPZseVULTStFR wnEg== X-Gm-Message-State: AA+aEWZGjDhpTObvHFXXH31JPqXd9RLawNNjcSayX0iH2wNOSNtpLDtB K0XEG11l1T50XHst2txn7LJKc0PjXc1W1A== X-Received: by 2002:a1c:f207:: with SMTP id s7mr5652440wmc.87.1544610792598; Wed, 12 Dec 2018 02:33:12 -0800 (PST) Received: from harold.home ([2a01:cb1d:112:6f00:1db:abd7:f798:3277]) by smtp.gmail.com with ESMTPSA id r69sm3132789wmd.4.2018.12.12.02.33.11 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 12 Dec 2018 02:33:11 -0800 (PST) From: Ard Biesheuvel To: edk2-devel@lists.01.org Date: Wed, 12 Dec 2018 11:33:06 +0100 Message-Id: <20181212103308.8099-2-ard.biesheuvel@linaro.org> X-Mailer: git-send-email 2.19.2 In-Reply-To: <20181212103308.8099-1-ard.biesheuvel@linaro.org> References: <20181212103308.8099-1-ard.biesheuvel@linaro.org> MIME-Version: 1.0 Subject: [edk2] [PATCH 1/3] MdePkg/BaseMemoryLibOptDxe ARM: add missing function annotations X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Liming Gao , Michael D Kinney , Laszlo Ersek Errors-To: edk2-devel-bounces@lists.01.org Sender: "edk2-devel" ARM uses the low order bit of a branch target address to decide in which execution mode (ARM or Thumb) a function needs to be called. In order for this to work across object files, ELF function symbols will have the low bit set if they were emitted in Thumb mode and cleared otherwise. This annotation is only emitted if the ELF symbols are annotated as function, since taking the address of some data symbol (e.g., a literal) should not produce a value with the low bit set, even if it appears in an object file containing Thumb code. This means that all functions coded in assembler must have this function annotation, or they may end up getting called in the wrong mode, crashing the program. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel --- MdePkg/Library/BaseMemoryLibOptDxe/Arm/CompareGuid.S | 1 + MdePkg/Library/BaseMemoryLibOptDxe/Arm/CompareMem.S | 1 + MdePkg/Library/BaseMemoryLibOptDxe/Arm/CopyMem.S | 1 + MdePkg/Library/BaseMemoryLibOptDxe/Arm/SetMem.S | 5 +++++ 4 files changed, 8 insertions(+) -- 2.19.2 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel Acked-by: Laszlo Ersek diff --git a/MdePkg/Library/BaseMemoryLibOptDxe/Arm/CompareGuid.S b/MdePkg/Library/BaseMemoryLibOptDxe/Arm/CompareGuid.S index 6d0089049d48..b74056fa1f5f 100644 --- a/MdePkg/Library/BaseMemoryLibOptDxe/Arm/CompareGuid.S +++ b/MdePkg/Library/BaseMemoryLibOptDxe/Arm/CompareGuid.S @@ -30,6 +30,7 @@ .thumb .syntax unified .align 5 + .type ASM_PFX(InternalMemCompareGuid), %function ASM_GLOBAL ASM_PFX(InternalMemCompareGuid) ASM_PFX(InternalMemCompareGuid): push {r4, lr} diff --git a/MdePkg/Library/BaseMemoryLibOptDxe/Arm/CompareMem.S b/MdePkg/Library/BaseMemoryLibOptDxe/Arm/CompareMem.S index 9483aab61a0c..25a9a0994524 100644 --- a/MdePkg/Library/BaseMemoryLibOptDxe/Arm/CompareMem.S +++ b/MdePkg/Library/BaseMemoryLibOptDxe/Arm/CompareMem.S @@ -46,6 +46,7 @@ .thumb .syntax unified .align 5 + .type ASM_PFX(InternalMemCompareMem), %function ASM_GLOBAL ASM_PFX(InternalMemCompareMem) ASM_PFX(InternalMemCompareMem): push {r4-r8, lr} diff --git a/MdePkg/Library/BaseMemoryLibOptDxe/Arm/CopyMem.S b/MdePkg/Library/BaseMemoryLibOptDxe/Arm/CopyMem.S index 195a0b23f770..e1543f3c2a43 100644 --- a/MdePkg/Library/BaseMemoryLibOptDxe/Arm/CopyMem.S +++ b/MdePkg/Library/BaseMemoryLibOptDxe/Arm/CopyMem.S @@ -42,6 +42,7 @@ InternalMemCopyMem ( IN UINTN Length ) **/ + .type ASM_PFX(InternalMemCopyMem), %function ASM_GLOBAL ASM_PFX(InternalMemCopyMem) ASM_PFX(InternalMemCopyMem): push {r4-r11, lr} diff --git a/MdePkg/Library/BaseMemoryLibOptDxe/Arm/SetMem.S b/MdePkg/Library/BaseMemoryLibOptDxe/Arm/SetMem.S index 2d8f4d5b8621..928c1a12d558 100644 --- a/MdePkg/Library/BaseMemoryLibOptDxe/Arm/SetMem.S +++ b/MdePkg/Library/BaseMemoryLibOptDxe/Arm/SetMem.S @@ -16,6 +16,7 @@ .thumb .syntax unified .align 5 + .type ASM_PFX(InternalMemSetMem16), %function ASM_GLOBAL ASM_PFX(InternalMemSetMem16) ASM_PFX(InternalMemSetMem16): uxth r2, r2 @@ -23,17 +24,20 @@ ASM_PFX(InternalMemSetMem16): orr r2, r2, r2, lsl #16 b 0f + .type ASM_PFX(InternalMemSetMem32), %function ASM_GLOBAL ASM_PFX(InternalMemSetMem32) ASM_PFX(InternalMemSetMem32): lsl r1, r1, #2 b 0f + .type ASM_PFX(InternalMemSetMem64), %function ASM_GLOBAL ASM_PFX(InternalMemSetMem64) ASM_PFX(InternalMemSetMem64): lsl r1, r1, #3 b 1f .align 5 + .type ASM_PFX(InternalMemSetMem), %function ASM_GLOBAL ASM_PFX(InternalMemSetMem) ASM_PFX(InternalMemSetMem): uxtb r2, r2 @@ -41,6 +45,7 @@ ASM_PFX(InternalMemSetMem): orr r2, r2, r2, lsl #16 b 0f + .type ASM_PFX(InternalMemZeroMem), %function ASM_GLOBAL ASM_PFX(InternalMemZeroMem) ASM_PFX(InternalMemZeroMem): movs r2, #0 From patchwork Wed Dec 12 10:33:07 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ard Biesheuvel X-Patchwork-Id: 153566 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp1660928ljp; Wed, 12 Dec 2018 02:33:19 -0800 (PST) X-Google-Smtp-Source: AFSGD/Weu2rFTsUJbJ0jnh4hCPDRDo4iQb0aG07t48tyj/ganuqXzViES62r84N5lw6plbgOd3dz X-Received: by 2002:a62:e201:: with SMTP id a1mr19264647pfi.75.1544610799614; Wed, 12 Dec 2018 02:33:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544610799; cv=none; d=google.com; s=arc-20160816; b=EfAe086kxnGCgHrahmfOgSxZRfiu+dAP3RHoxU4OAgVOuGNIJvMnphmwGHg+bde2T8 +jHfI1i4wkneT6WXpxoY/9ISSlYF3pOZnu8fXRek1Lf72YppBcmbM036EFm0cmio7UdR 0r2HgtFLUpRWs70Nmg1YOon3n+gn4s3xs8YdPaE22TKWxQUDQJwqrjOSlZQnGfKUxBR5 RcbsQajzU8UhVwRzxLzzzhQuSMGLiToKBIzwVDAeUpADKGnG1GcmCFceB2XctvzZQ5bG QGxwgpm0O0ThGFjJXhsNQ2Dx0EoS2aD7PWx4wMm0PdaLTLzqgm4ULKdVWx8KIsKyTdr8 XGCA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:references:in-reply-to:message-id :date:to:from:dkim-signature:delivered-to; bh=dWOrLX6zNGPTgZyW1egDKy+mLkK9fvRkFK0N23hVN54=; b=Re7SUsqicidkuqkxQx2zYiHr+nv4bwjO2uFhgHSwSexOQA+bn3U0pZTAYCuedV5Q6c MqaDrDu93mTS9YdDlRqsjZcC7DlPGGlWLj1QRVp35G6JKCGYXbFtHLt9bt3h6wXvEyZ0 BTDdq+eqF8789OgQifrbK2QGFrn807/wmDFu2pjOivIWSuPOWdtrHEH2MHX8zWCkp9ve CVh2lR0NG1/jKt5UGWI1s1Tt/WJ3LprrZE+GsKtul/e11JrZrO/r8Qbv51j2Ro2iIzZA MZ+lm+eto0KQDUd1WUzHlv22R+ZMDdi1rhmHk0fFwGX9KvCfMCzEm8MfacoejHJ4x6ex QIcQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b=if3Jb4NW; spf=pass (google.com: best guess record for domain of edk2-devel-bounces@lists.01.org designates 198.145.21.10 as permitted sender) smtp.mailfrom=edk2-devel-bounces@lists.01.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from ml01.01.org (ml01.01.org. [198.145.21.10]) by mx.google.com with ESMTPS id w2si15793943pfg.78.2018.12.12.02.33.19 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 12 Dec 2018 02:33:19 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of edk2-devel-bounces@lists.01.org designates 198.145.21.10 as permitted sender) client-ip=198.145.21.10; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b=if3Jb4NW; spf=pass (google.com: best guess record for domain of edk2-devel-bounces@lists.01.org designates 198.145.21.10 as permitted sender) smtp.mailfrom=edk2-devel-bounces@lists.01.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id 564FE2119C8AB; Wed, 12 Dec 2018 02:33:17 -0800 (PST) X-Original-To: edk2-devel@lists.01.org Delivered-To: edk2-devel@lists.01.org Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=2a00:1450:4864:20::442; helo=mail-wr1-x442.google.com; envelope-from=ard.biesheuvel@linaro.org; receiver=edk2-devel@lists.01.org Received: from mail-wr1-x442.google.com (mail-wr1-x442.google.com [IPv6:2a00:1450:4864:20::442]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id E66BB2119C8A5 for ; Wed, 12 Dec 2018 02:33:15 -0800 (PST) Received: by mail-wr1-x442.google.com with SMTP id 96so17152187wrb.2 for ; Wed, 12 Dec 2018 02:33:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=SNseYEtJ23oXEgtEGSjVklBNFSugpUppUFHH6JAiuds=; b=if3Jb4NWc0MeFM4rPeI9DwwHVpO9bYkpqlF82YXquLfXPG72ooCml79bu4JPrDIRnE 0f3gPZIRO5Ttg+QHsybuCQfTzO8oFa6xymNUeBFHIwo8r/wmNHg0bBevWGtXVk3F4OGW buYFqxTTcR8GG4YRDNhCN2EXAPUE4Qa9k7hGA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=SNseYEtJ23oXEgtEGSjVklBNFSugpUppUFHH6JAiuds=; b=WfewhDlLh5WMOpTy1Koq2SLvpwnICRSjYlU6tKGFbMJvJMpuBzPt8y7zFW0NpQ/1ju qHrQ3PYzweCb+kOdMllgizxp9kvPYXMi2HNKku831KW8LzZG151+9nsTOctooqjNK/+K twRkXlV7CO2g361VeV8fSO5CJlpJCEZ1PpczgmhhH9dJXMuSfj2yHlAdWxHREGyEYbV8 pb+9szlV0o+01cJTZS+Q2iNGs8gmOObxkuJmSzM5n+W+85W5s6bBXguQPrybeoLLUJnE yOInBLKZqpsIu5NFKpE6jvmkG2JRzx7fwSlhpzs2r0PFnImmXsJm/KuB/9RQfZKHfGGJ RMEg== X-Gm-Message-State: AA+aEWYkg4MfgxqOHoFqQbo11TbpXvjrMMBO+D6suiBQRpyobESocDdr SGQmsXqfzEV9W64USISYmiD6LySJ9Nm/wg== X-Received: by 2002:adf:a393:: with SMTP id l19mr17156651wrb.110.1544610794093; Wed, 12 Dec 2018 02:33:14 -0800 (PST) Received: from harold.home ([2a01:cb1d:112:6f00:1db:abd7:f798:3277]) by smtp.gmail.com with ESMTPSA id r69sm3132789wmd.4.2018.12.12.02.33.12 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 12 Dec 2018 02:33:13 -0800 (PST) From: Ard Biesheuvel To: edk2-devel@lists.01.org Date: Wed, 12 Dec 2018 11:33:07 +0100 Message-Id: <20181212103308.8099-3-ard.biesheuvel@linaro.org> X-Mailer: git-send-email 2.19.2 In-Reply-To: <20181212103308.8099-1-ard.biesheuvel@linaro.org> References: <20181212103308.8099-1-ard.biesheuvel@linaro.org> MIME-Version: 1.0 Subject: [edk2] [PATCH 2/3] BaseTools/tools_def ARM CLANG35: work around -mno-movt option name change X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Liming Gao , Michael D Kinney , Laszlo Ersek Errors-To: edk2-devel-bounces@lists.01.org Sender: "edk2-devel" PE/COFF only has a very limited id space for runtime relocations, and so it defines only a single relocation for movw/movt instruction pairs, which can be combined to load a 32-bit symbol reference into a register. For this to work as expected, these instructions must always appear in the same order and adjacently, and this is something few compilers take into account, unless they target PE/COFF explicitly (and this is not the case for our ELF based toolchains) For Clang 3.6 and later, we can pass the -mno-movt option to suppress movw/movt pairs entirely, which works around the issue. Unfortunately, for Clang 3.5, the option is called differently (-mllvm -arm-use-movt=0) and mutually incompatible between 3.5 and 3.6. Since it is desirable for the CLANG35 toolchain to be usable on newer versions of Clang as well (given that it is the only non-LTO alternative to CLANG38), let's work around this issue in a way that permits versions 3.5 and newer of Clang to be used with the CLANG35 profile. So pass the -mkernel flag instead (and drop the -mno-unaligned-access in *_CLANG35_ARM_CC_XIPFLAGS which now becomes redundant, and which Clang complains about). This also inhibits movw/movt generation, along with some other changes (e.g., long calls) which do affect code generation but not in a undesirable manner. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel --- BaseTools/Conf/tools_def.template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.19.2 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel Acked-by: Laszlo Ersek Reviewed-by: Leif Lindholm diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template index ac2b95e0f5ba..2ba833e1fb06 100755 --- a/BaseTools/Conf/tools_def.template +++ b/BaseTools/Conf/tools_def.template @@ -5249,7 +5249,7 @@ DEFINE CLANG35_AARCH64_CC_FLAGS = DEF(GCC_AARCH64_CC_FLAGS) DEF(CLANG35_AARCH64 *_CLANG35_ARM_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANG35_ARM_TARGET) $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -Qunused-arguments *_CLANG35_ARM_DLINK_FLAGS = DEF(CLANG35_ARM_TARGET) DEF(GCC_ARM_DLINK_FLAGS) *_CLANG35_ARM_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x220 -*_CLANG35_ARM_PLATFORM_FLAGS = -march=armv7-a +*_CLANG35_ARM_PLATFORM_FLAGS = -march=armv7-a -mkernel -Qunused-arguments *_CLANG35_ARM_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG35_ARM_TARGET) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) *_CLANG35_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS) *_CLANG35_ARM_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG35_ARM_TARGET) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) From patchwork Wed Dec 12 10:33:08 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ard Biesheuvel X-Patchwork-Id: 153567 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp1660960ljp; Wed, 12 Dec 2018 02:33:22 -0800 (PST) X-Google-Smtp-Source: AFSGD/XldW16lPgnTwIlxBAmjV9sOLEndDkwOnx0zPwK0VEAFEdfMNZ/QL9R2a/xEVO3Sejqm8rC X-Received: by 2002:a63:2bc4:: with SMTP id r187mr17599504pgr.306.1544610802520; Wed, 12 Dec 2018 02:33:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544610802; cv=none; d=google.com; s=arc-20160816; b=Cupg/FKKQSIyGDfEAKupzM7cI+JJyj+vmBAtztX7m07RrCaFQMyM4OD7rA3aJyRTPE gXkrpMyeIk1oqAojRquhPmcSCqYaDFB77bjSnZcG/mSk+ELCDUkaiWIaADBDQqj+d6xN EtwM5W8Aqt7TnhUbfXhMuqzw+TcOBI4UKfoHdGJQzNlBt2AN+aI19j++VjqyHiE4Nu25 RRltOWf+tZ1YzXWengTODYj/mDW9lDrL5VQLo5pZUjH+ob8BzcL2JqlT5oE1ifoQdf9V eQyq737z4qw+jcsSkKgfPv+yXeLR0lsmV5zz0TxRQIR1yLeIyc4sWE/1R5h1ywsN6Pra 7otg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:references:in-reply-to:message-id :date:to:from:dkim-signature:delivered-to; bh=HQ7cAuRSamDHixHsqYZnVAuMznI+JLnuIRCjRUPR4FY=; b=C16R4KU2rWtmTxIafs1RtECdOz6B0m6p8LfRAbG4Izd1qhQxUieKSM+M14GCCuH2PZ 9ADhu6TTgizvNudGfOBv+dwjGWeWhr96sVxBG71QVvk7n7XSXCN2RygqMPeZtWPd1hvz 0FKvhCbMiKTjl5sFcsJlWsTFgUJ9EZLsx9PWWum9XOPckcAZZ3wHGUu2DpgWe03FdPR7 f6KpE3abse68kg3klrW05mc1lFM4MZpp3LnH/FX6xj4fUHDKLbRnrTmhStbvcYA1G+uO IfZBuAHcKgeho4skjNm3MspFyC0hsc+vkYMxSiMq/qIBNCUnLionYyw7LUlOecbXbrpV gIZg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b="MZokcQ/a"; spf=pass (google.com: best guess record for domain of edk2-devel-bounces@lists.01.org designates 198.145.21.10 as permitted sender) smtp.mailfrom=edk2-devel-bounces@lists.01.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from ml01.01.org (ml01.01.org. [198.145.21.10]) by mx.google.com with ESMTPS id s59si14832568plb.237.2018.12.12.02.33.22 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 12 Dec 2018 02:33:22 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of edk2-devel-bounces@lists.01.org designates 198.145.21.10 as permitted sender) client-ip=198.145.21.10; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b="MZokcQ/a"; spf=pass (google.com: best guess record for domain of edk2-devel-bounces@lists.01.org designates 198.145.21.10 as permitted sender) smtp.mailfrom=edk2-devel-bounces@lists.01.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id 8B1352119C8A5; Wed, 12 Dec 2018 02:33:18 -0800 (PST) X-Original-To: edk2-devel@lists.01.org Delivered-To: edk2-devel@lists.01.org Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=2a00:1450:4864:20::344; helo=mail-wm1-x344.google.com; envelope-from=ard.biesheuvel@linaro.org; receiver=edk2-devel@lists.01.org Received: from mail-wm1-x344.google.com (mail-wm1-x344.google.com [IPv6:2a00:1450:4864:20::344]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 125F62119C8A5 for ; Wed, 12 Dec 2018 02:33:17 -0800 (PST) Received: by mail-wm1-x344.google.com with SMTP id s14so5224531wmh.1 for ; Wed, 12 Dec 2018 02:33:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=1tID2wl2QcHGCJB4hu6wKeq1K6sPq5i5V1WYPqXzztA=; b=MZokcQ/aXfiaGLH2OupJAI/RnWdjawbCHVEO/1NTMlf/vQbn+847pP+2PvgEaskMdJ plOHIUoqR8kDQmgJlw4LBLOhnD0cnF1XVqhJqPDjrCj6d9H+3WPz/8Bid71HPKqPaI/T 0DeWAFJwSoyNap4d0L/d8JEJtsZ/DIHcsX9EU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=1tID2wl2QcHGCJB4hu6wKeq1K6sPq5i5V1WYPqXzztA=; b=LvYl2KgAGSj5WGy3i8ozxklvUrr9A4UW7bU+vgT+K/A0w/3vPT94v9EmJUXuRXW59p Z6vFaDPq3z4AP8mE2Lex8sP45ex9gfeKpD53mu/DxYf0odKGxdDsaa3neB8bBGRI0Ywd PFxYttFCtG1y1Tjruaz+uw6Its6ZtY5JNmgcXKX8dQgM/qz840whB4PCCtsdIysIz0SN Jy/OIADYYXrnlp6QVCSsB4L+ygpllP3IPzuXifHPFPS5dWQKNAuaJ5kJAJJ/FEEl8zhW pqZ1C3N5h+1NgfIuPyPFdBEqs8Twt6Vp7a9fGCXbgeJ6E+6CzQI9DyVGgL9OWUMesMkl u/bg== X-Gm-Message-State: AA+aEWb8Ydw6aXBhZsNncKWJHPcfdSfIFvCbTHLul3HzO+Lbrlw23w6e VROCekQlA4xxC23Ll5iEZFDV/FeZcXosWQ== X-Received: by 2002:a1c:dd04:: with SMTP id u4mr5783564wmg.84.1544610795311; Wed, 12 Dec 2018 02:33:15 -0800 (PST) Received: from harold.home ([2a01:cb1d:112:6f00:1db:abd7:f798:3277]) by smtp.gmail.com with ESMTPSA id r69sm3132789wmd.4.2018.12.12.02.33.14 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 12 Dec 2018 02:33:14 -0800 (PST) From: Ard Biesheuvel To: edk2-devel@lists.01.org Date: Wed, 12 Dec 2018 11:33:08 +0100 Message-Id: <20181212103308.8099-4-ard.biesheuvel@linaro.org> X-Mailer: git-send-email 2.19.2 In-Reply-To: <20181212103308.8099-1-ard.biesheuvel@linaro.org> References: <20181212103308.8099-1-ard.biesheuvel@linaro.org> MIME-Version: 1.0 Subject: [edk2] [PATCH 3/3] ArmVirtPkg/PrePi ARM CLANG35: drop incompatible command line option X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Liming Gao , Michael D Kinney , Laszlo Ersek Errors-To: edk2-devel-bounces@lists.01.org Sender: "edk2-devel" Drop the -mno-movt command line option override, which is no longer needed, and actually incompatible with versions of Clang before 3.6. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel --- ArmVirtPkg/ArmVirtQemuKernel.dsc | 5 ----- ArmVirtPkg/ArmVirtXen.dsc | 5 ----- 2 files changed, 10 deletions(-) -- 2.19.2 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel Acked-by: Laszlo Ersek diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc index c4324a9e264b..df125cfef646 100644 --- a/ArmVirtPkg/ArmVirtQemuKernel.dsc +++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc @@ -69,11 +69,6 @@ [LibraryClasses.common.UEFI_DRIVER] UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf [BuildOptions.common.EDKII.SEC, BuildOptions.common.EDKII.BASE] - # Avoid MOVT/MOVW instruction pairs in code that may end up in the PIE - # executable we build for the relocatable PrePi. They are not runtime - # relocatable in ELF. - *_CLANG35_ARM_CC_FLAGS = -mno-movt - # # CLANG38 with LTO support enabled uses the GNU GOLD linker, which insists # on emitting GOT based symbol references when running in shared mode, unless diff --git a/ArmVirtPkg/ArmVirtXen.dsc b/ArmVirtPkg/ArmVirtXen.dsc index e083666f54ea..a29d8a4ae717 100644 --- a/ArmVirtPkg/ArmVirtXen.dsc +++ b/ArmVirtPkg/ArmVirtXen.dsc @@ -58,11 +58,6 @@ [LibraryClasses.common.UEFI_DRIVER] UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf [BuildOptions.common.EDKII.SEC, BuildOptions.common.EDKII.BASE] - # Avoid MOVT/MOVW instruction pairs in code that may end up in the PIE - # executable we build for the relocatable PrePi. They are not runtime - # relocatable in ELF. - *_CLANG35_ARM_CC_FLAGS = -mno-movt - # # CLANG38 with LTO support enabled uses the GNU GOLD linker, which insists # on emitting GOT based symbol references when running in shared mode, unless