[clang] llvm::Optional::value => operator*/operator->
authorFangrui Song <i@maskray.me>
Sat, 17 Dec 2022 05:15:07 +0000 (05:15 +0000)
committerFangrui Song <i@maskray.me>
Sat, 17 Dec 2022 05:15:07 +0000 (05:15 +0000)
std::optional::value() has undesired exception checking semantics and is
unavailable in some older Xcode. The call sites block std::optional migration.

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

index 843cee3..b14cf2e 100644 (file)
@@ -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;
 }
index 253e9a7..1b58b7d 100644 (file)
@@ -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