[clang] fc6ca0d - [clang] llvm::Optional::value => operator*/operator->

Fangrui Song via cfe-commits cfe-commits at lists.llvm.org
Fri Dec 16 21:15:14 PST 2022


Author: Fangrui Song
Date: 2022-12-17T05:15:07Z
New Revision: fc6ca0d05377e30b8f51f7ee904834e06c137342

URL: https://github.com/llvm/llvm-project/commit/fc6ca0d05377e30b8f51f7ee904834e06c137342
DIFF: https://github.com/llvm/llvm-project/commit/fc6ca0d05377e30b8f51f7ee904834e06c137342.diff

LOG: [clang] llvm::Optional::value => operator*/operator->

std::optional::value() has undesired exception checking semantics and is
unavailable in some older Xcode. The call sites block std::optional migration.

Added: 
    

Modified: 
    clang/lib/Support/RISCVVIntrinsicUtils.cpp
    clang/utils/TableGen/RISCVVEmitter.cpp

Removed: 
    


################################################################################
diff  --git a/clang/lib/Support/RISCVVIntrinsicUtils.cpp b/clang/lib/Support/RISCVVIntrinsicUtils.cpp
index 843cee3506263..b14cf2e54caa4 100644
--- a/clang/lib/Support/RISCVVIntrinsicUtils.cpp
+++ b/clang/lib/Support/RISCVVIntrinsicUtils.cpp
@@ -796,7 +796,7 @@ RVVTypeCache::computeTypes(BasicType BT, int Log2LMUL, unsigned NF,
     if (!T)
       return std::nullopt;
     // Record legal type index
-    Types.push_back(T.value());
+    Types.push_back(*T);
   }
   return Types;
 }

diff  --git a/clang/utils/TableGen/RISCVVEmitter.cpp b/clang/utils/TableGen/RISCVVEmitter.cpp
index 253e9a79dd337..1b58b7d02d377 100644
--- a/clang/utils/TableGen/RISCVVEmitter.cpp
+++ b/clang/utils/TableGen/RISCVVEmitter.cpp
@@ -353,7 +353,7 @@ void RVVEmitter::createHeader(raw_ostream &OS) {
     auto T = TypeCache.computeType(BasicType::Int8, Log2LMUL,
                                    PrototypeDescriptor::Mask);
     if (T)
-      printType(T.value());
+      printType(*T);
   }
   // Print RVV int/float types.
   for (char I : StringRef("csil")) {
@@ -361,13 +361,13 @@ void RVVEmitter::createHeader(raw_ostream &OS) {
     for (int Log2LMUL : Log2LMULs) {
       auto T = TypeCache.computeType(BT, Log2LMUL, PrototypeDescriptor::Vector);
       if (T) {
-        printType(T.value());
+        printType(*T);
         auto UT = TypeCache.computeType(
             BT, Log2LMUL,
             PrototypeDescriptor(BaseTypeModifier::Vector,
                                 VectorTypeModifier::NoModifier,
                                 TypeModifier::UnsignedInteger));
-        printType(UT.value());
+        printType(*UT);
       }
     }
   }
@@ -376,7 +376,7 @@ void RVVEmitter::createHeader(raw_ostream &OS) {
     auto T = TypeCache.computeType(BasicType::Float16, Log2LMUL,
                                    PrototypeDescriptor::Vector);
     if (T)
-      printType(T.value());
+      printType(*T);
   }
   OS << "#endif\n";
 
@@ -385,7 +385,7 @@ void RVVEmitter::createHeader(raw_ostream &OS) {
     auto T = TypeCache.computeType(BasicType::Float32, Log2LMUL,
                                    PrototypeDescriptor::Vector);
     if (T)
-      printType(T.value());
+      printType(*T);
   }
   OS << "#endif\n";
 
@@ -394,7 +394,7 @@ void RVVEmitter::createHeader(raw_ostream &OS) {
     auto T = TypeCache.computeType(BasicType::Float64, Log2LMUL,
                                    PrototypeDescriptor::Vector);
     if (T)
-      printType(T.value());
+      printType(*T);
   }
   OS << "#endif\n\n";
 
@@ -583,7 +583,7 @@ void RVVEmitter::createRVVIntrinsics(
                 Name, SuffixStr, OverloadedName, OverloadedSuffixStr, IRName,
                 /*IsMask=*/false, /*HasMaskedOffOperand=*/false, HasVL,
                 UnMaskedPolicyScheme, SupportOverloading, HasBuiltinAlias,
-                ManualCodegen, PolicyTypes.value(), IntrinsicTypes,
+                ManualCodegen, *PolicyTypes, IntrinsicTypes,
                 RequiredFeatures, NF, P, IsPrototypeDefaultTU));
           }
         if (!HasMasked)
@@ -595,7 +595,7 @@ void RVVEmitter::createRVVIntrinsics(
             Name, SuffixStr, OverloadedName, OverloadedSuffixStr, MaskedIRName,
             /*IsMasked=*/true, HasMaskedOffOperand, HasVL, MaskedPolicyScheme,
             SupportOverloading, HasBuiltinAlias, MaskedManualCodegen,
-            MaskTypes.value(), IntrinsicTypes, RequiredFeatures, NF,
+            *MaskTypes, IntrinsicTypes, RequiredFeatures, NF,
             Policy::PolicyNone, IsPrototypeDefaultTU));
         if (MaskedPolicyScheme == PolicyScheme::SchemeNone)
           continue;
@@ -610,7 +610,7 @@ void RVVEmitter::createRVVIntrinsics(
               Name, SuffixStr, OverloadedName, OverloadedSuffixStr,
               MaskedIRName, /*IsMasked=*/true, HasMaskedOffOperand, HasVL,
               MaskedPolicyScheme, SupportOverloading, HasBuiltinAlias,
-              MaskedManualCodegen, PolicyTypes.value(), IntrinsicTypes,
+              MaskedManualCodegen, *PolicyTypes, IntrinsicTypes,
               RequiredFeatures, NF, P, IsPrototypeDefaultTU));
         }
       } // End for Log2LMULList


        


More information about the cfe-commits mailing list