[clang] [llvm] [AArch64] Disable large global group relocation (PR #75445)

via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 14 01:00:48 PST 2023


github-actions[bot] wrote:

<!--LLVM CODE FORMAT COMMENT: {clang-format}-->


:warning: C/C++ code formatter, clang-format found issues in your code. :warning:

<details>
<summary>
You can test this locally with the following command:
</summary>

``````````bash
git-clang-format --diff a2691e363232c011fdaace9fcc094f3cd210f78b b1109d297690b3b162eab21dfc41ce03a898a908 -- clang/lib/Driver/ToolChains/Clang.cpp llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
``````````

</details>

<details>
<summary>
View the diff from clang-format here.
</summary>

``````````diff
diff --git a/clang/lib/Driver/ToolChains/Clang.cpp b/clang/lib/Driver/ToolChains/Clang.cpp
index 8edfe00358..6b01cca9d1 100644
--- a/clang/lib/Driver/ToolChains/Clang.cpp
+++ b/clang/lib/Driver/ToolChains/Clang.cpp
@@ -4977,7 +4977,7 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
   if (Args.getLastArg(options::OPT_save_temps_EQ))
     Args.AddLastArg(CmdArgs, options::OPT_save_temps_EQ);
 
-  if (Args.getLastArg(options::OPT_mno_large_global_group_reloc)){
+  if (Args.getLastArg(options::OPT_mno_large_global_group_reloc)) {
     CmdArgs.push_back("-mllvm");
     CmdArgs.push_back("-mno-large-global-group-reloc");
   }
diff --git a/llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp b/llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
index 9566910473..9ffb545dac 100644
--- a/llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
+++ b/llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
@@ -67,9 +67,10 @@ namespace {
 #undef GET_GLOBALISEL_PREDICATE_BITSET
 
 static cl::opt<bool> DisableLargeGlobalGroupReloc(
-  "mno-large-global-group-reloc",
-  cl::desc("Disable group relocation type for global value and symbol when code model is large"),
-  cl::init(false));
+    "mno-large-global-group-reloc",
+    cl::desc("Disable group relocation type for global value and symbol when "
+             "code model is large"),
+    cl::init(false));
 
 class AArch64InstructionSelector : public InstructionSelector {
 public:
@@ -2854,8 +2855,7 @@ bool AArch64InstructionSelector::select(MachineInstr &I) {
       I.setDesc(TII.get(AArch64::LOADgot));
       I.getOperand(1).setTargetFlags(OpFlags);
     } else if (TM.getCodeModel() == CodeModel::Large &&
-               !DisableLargeGlobalGroupReloc &&
-               !TM.isPositionIndependent()) {
+               !DisableLargeGlobalGroupReloc && !TM.isPositionIndependent()) {
       // Materialize the global using movz/movk instructions.
       materializeLargeCMVal(I, GV, OpFlags);
       I.eraseFromParent();

``````````

</details>


https://github.com/llvm/llvm-project/pull/75445


More information about the llvm-commits mailing list