llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-debuginfo @llvm/pr-subscribers-backend-powerpc Author: Amy Kwan (amy-kwan) <details> <summary>Changes</summary> This patch turns on the GlobalMerge pass by default on AIX and updates LIT tests accordingly. --- Full diff: https://github.com/llvm/llvm-project/pull/101226.diff 4 Files Affected: - (modified) llvm/lib/Target/PowerPC/PPCTargetMachine.cpp (+4-1) - (modified) llvm/test/CodeGen/PowerPC/merge-private.ll (+6) - (modified) llvm/test/CodeGen/PowerPC/mergeable-string-pool.ll (+2-2) - (modified) llvm/test/DebugInfo/Symbolize/XCOFF/xcoff-symbolize-data.ll (+1-1) ``````````diff diff --git a/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp b/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp index e4045ec304435..f975d1495543b 100644 --- a/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp +++ b/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp @@ -500,7 +500,10 @@ void PPCPassConfig::addIRPasses() { } bool PPCPassConfig::addPreISel() { - if (EnableGlobalMerge) + if ((EnableGlobalMerge.getNumOccurrences() > 0) + ? EnableGlobalMerge + : (TM->getTargetTriple().isOSAIX() && + getOptLevel() != CodeGenOptLevel::None)) addPass(createGlobalMergePass(TM, GlobalMergeMaxOffset, false, false, true, true)); diff --git a/llvm/test/CodeGen/PowerPC/merge-private.ll b/llvm/test/CodeGen/PowerPC/merge-private.ll index 6ed2d6dfc542b..0ca706abb275f 100644 --- a/llvm/test/CodeGen/PowerPC/merge-private.ll +++ b/llvm/test/CodeGen/PowerPC/merge-private.ll @@ -11,6 +11,12 @@ ; RUN: llc -verify-machineinstrs -mtriple powerpc64-unknown-linux -mcpu=pwr8 \ ; RUN: -ppc-asm-full-reg-names -ppc-global-merge=true < %s | FileCheck %s \ ; RUN: --check-prefix=LINUX64BE +; The below run line is added to ensure that the assembly corresponding to +; the following check-prefix is generated by default on AIX (without any +; options). +; RUN: llc -verify-machineinstrs -mtriple powerpc64-ibm-aix-xcoff -mcpu=pwr8 \ +; RUN: -ppc-asm-full-reg-names < %s | FileCheck %s \ +; RUN: --check-prefix=AIX64 @.str = private unnamed_addr constant [15 x i8] c"Private global\00", align 1 @str = internal constant [16 x i8] c"Internal global\00", align 1 diff --git a/llvm/test/CodeGen/PowerPC/mergeable-string-pool.ll b/llvm/test/CodeGen/PowerPC/mergeable-string-pool.ll index 81147d10cde6e..833ed9fa65acf 100644 --- a/llvm/test/CodeGen/PowerPC/mergeable-string-pool.ll +++ b/llvm/test/CodeGen/PowerPC/mergeable-string-pool.ll @@ -1,6 +1,6 @@ -; RUN: llc -verify-machineinstrs -mtriple powerpc-ibm-aix-xcoff -mcpu=pwr8 \ +; RUN: llc -verify-machineinstrs -mtriple powerpc-ibm-aix-xcoff -mcpu=pwr8 -enable-global-merge=false \ ; RUN: -ppc-asm-full-reg-names < %s | FileCheck %s --check-prefixes=AIX32,AIXDATA -; RUN: llc -verify-machineinstrs -mtriple powerpc64-ibm-aix-xcoff -mcpu=pwr8 \ +; RUN: llc -verify-machineinstrs -mtriple powerpc64-ibm-aix-xcoff -mcpu=pwr8 -enable-global-merge=false \ ; RUN: -ppc-asm-full-reg-names < %s | FileCheck %s --check-prefixes=AIX64,AIXDATA ; RUN: llc -verify-machineinstrs -mtriple powerpc64-unknown-linux -mcpu=pwr8 \ ; RUN: -ppc-asm-full-reg-names < %s | FileCheck %s --check-prefixes=LINUX64BE,LINUXDATA diff --git a/llvm/test/DebugInfo/Symbolize/XCOFF/xcoff-symbolize-data.ll b/llvm/test/DebugInfo/Symbolize/XCOFF/xcoff-symbolize-data.ll index 5432b59d583ba..1a467ec72a75d 100644 --- a/llvm/test/DebugInfo/Symbolize/XCOFF/xcoff-symbolize-data.ll +++ b/llvm/test/DebugInfo/Symbolize/XCOFF/xcoff-symbolize-data.ll @@ -5,7 +5,7 @@ ;; AIX assembly syntax. ; REQUIRES: powerpc-registered-target -; RUN: llc -filetype=obj -o %t -mtriple=powerpc-aix-ibm-xcoff < %s +; RUN: llc -filetype=obj -o %t -mtriple=powerpc-aix-ibm-xcoff -ppc-global-merge=false < %s ; RUN: llvm-symbolizer --obj=%t 'DATA 0x60' 'DATA 0x61' 'DATA 0x64' 'DATA 0X68' \ ; RUN: 'DATA 0x90' 'DATA 0x94' 'DATA 0X98' | \ ; RUN: FileCheck %s `````````` </details> https://github.com/llvm/llvm-project/pull/101226 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits