[llvm] [BOLT] Use std::tie to Implment operator< (NFC) (PR #139404)

Kazu Hirata via llvm-commits llvm-commits at lists.llvm.org
Sat May 10 12:48:04 PDT 2025


https://github.com/kazutakahirata created https://github.com/llvm/llvm-project/pull/139404

None

>From 2941922e422057ca798d16e4a64a1a075a3dd842 Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Sat, 10 May 2025 09:21:24 -0700
Subject: [PATCH] [BOLT] Use std::tie to Implment operator< (NFC)

---
 bolt/include/bolt/Passes/FrameAnalysis.h      | 5 ++---
 bolt/include/bolt/Passes/PAuthGadgetScanner.h | 4 +---
 bolt/include/bolt/Profile/DataReader.h        | 8 +-------
 3 files changed, 4 insertions(+), 13 deletions(-)

diff --git a/bolt/include/bolt/Passes/FrameAnalysis.h b/bolt/include/bolt/Passes/FrameAnalysis.h
index 44b54d4ed45d4..d71c338bdcc37 100644
--- a/bolt/include/bolt/Passes/FrameAnalysis.h
+++ b/bolt/include/bolt/Passes/FrameAnalysis.h
@@ -10,6 +10,7 @@
 #define BOLT_PASSES_FRAMEANALYSIS_H
 
 #include "bolt/Passes/StackPointerTracking.h"
+#include <tuple>
 
 namespace llvm {
 namespace bolt {
@@ -53,9 +54,7 @@ struct ArgInStackAccess {
   uint8_t Size;
 
   bool operator<(const ArgInStackAccess &RHS) const {
-    if (StackOffset != RHS.StackOffset)
-      return StackOffset < RHS.StackOffset;
-    return Size < RHS.Size;
+    return std::tie(StackOffset, Size) < std::tie(RHS.StackOffset, RHS.Size);
   }
 };
 
diff --git a/bolt/include/bolt/Passes/PAuthGadgetScanner.h b/bolt/include/bolt/Passes/PAuthGadgetScanner.h
index ee69337637da3..66251e195822c 100644
--- a/bolt/include/bolt/Passes/PAuthGadgetScanner.h
+++ b/bolt/include/bolt/Passes/PAuthGadgetScanner.h
@@ -43,9 +43,7 @@ struct MCInstInBBReference {
     return BB == RHS.BB && BBIndex == RHS.BBIndex;
   }
   bool operator<(const MCInstInBBReference &RHS) const {
-    if (BB != RHS.BB)
-      return BB < RHS.BB;
-    return BBIndex < RHS.BBIndex;
+    return std::tie(BB, BBIndex) < std::tie(RHS.BB, RHS.BBIndex);
   }
   operator MCInst &() const {
     assert(BB != nullptr);
diff --git a/bolt/include/bolt/Profile/DataReader.h b/bolt/include/bolt/Profile/DataReader.h
index 314dcc9115586..4765eb28d53ca 100644
--- a/bolt/include/bolt/Profile/DataReader.h
+++ b/bolt/include/bolt/Profile/DataReader.h
@@ -90,13 +90,7 @@ struct BranchInfo {
   }
 
   bool operator<(const BranchInfo &RHS) const {
-    if (From < RHS.From)
-      return true;
-
-    if (From == RHS.From)
-      return (To < RHS.To);
-
-    return false;
+    return std::tie(From, To) < std::tie(RHS.From, RHS.To);
   }
 
   /// Merges branch and misprediction counts of \p BI with those of this object.



More information about the llvm-commits mailing list