]> granicus.if.org Git - llvm/commitdiff
Fix some accidental global initializers by using StringLiteral instead of StringRef
authorBenjamin Kramer <benny.kra@googlemail.com>
Sat, 24 Aug 2019 15:24:25 +0000 (15:24 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Sat, 24 Aug 2019 15:24:25 +0000 (15:24 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@369850 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Analysis/TargetLibraryInfo.h
lib/Analysis/TargetLibraryInfo.cpp
lib/Target/AMDGPU/AMDGPULibFunc.cpp

index 4b5200f5a838a1f4f0fcf9f43c73c166e6d3cc7c..829bd12c7380d3509f835dbda5c8541589587641 100644 (file)
@@ -48,7 +48,7 @@ class TargetLibraryInfoImpl {
 
   unsigned char AvailableArray[(NumLibFuncs+3)/4];
   llvm::DenseMap<unsigned, std::string> CustomNames;
-  static StringRef const StandardNames[NumLibFuncs];
+  static StringLiteral const StandardNames[NumLibFuncs];
   bool ShouldExtI32Param, ShouldExtI32Return, ShouldSignExtI32Param;
 
   enum AvailabilityState {
index 24ca57f3a94a698a14ffdc8e979781189e0499cf..8114a50a8c77cb0f5857052da10d79e2999aee47 100644 (file)
@@ -28,7 +28,8 @@ static cl::opt<TargetLibraryInfoImpl::VectorLibrary> ClVectorLibrary(
                clEnumValN(TargetLibraryInfoImpl::SVML, "SVML",
                           "Intel SVML library")));
 
-StringRef const TargetLibraryInfoImpl::StandardNames[LibFunc::NumLibFuncs] = {
+StringLiteral const TargetLibraryInfoImpl::StandardNames[LibFunc::NumLibFuncs] =
+    {
 #define TLI_DEFINE_STRING
 #include "llvm/Analysis/TargetLibraryInfo.def"
 };
@@ -65,7 +66,7 @@ static bool hasBcmp(const Triple &TT) {
 /// target triple. This should be carefully written so that a missing target
 /// triple gets a sane set of defaults.
 static void initialize(TargetLibraryInfoImpl &TLI, const Triple &T,
-                       ArrayRef<StringRef> StandardNames) {
+                       ArrayRef<StringLiteral> StandardNames) {
   // Verify that the StandardNames array is in alphabetical order.
   assert(std::is_sorted(StandardNames.begin(), StandardNames.end(),
                         [](StringRef LHS, StringRef RHS) {
index ec2257f32f3fdf821d3b899f0f8c47920eddb95c..3166e6edd337ab1ad8d6dd1e8689f82fa1f664ff 100644 (file)
@@ -55,7 +55,7 @@ enum EManglingParam {
 };
 
 struct ManglingRule {
-   StringRef const Name;
+   StringLiteral const Name;
    unsigned char Lead[2];
    unsigned char Param[5];
 
@@ -133,8 +133,8 @@ unsigned ManglingRule::getNumArgs() const {
 //    E_ANY - use prev lead type, E_CONSTPTR_ANY - make const pointer out of
 //    prev lead type, etc. see ParamIterator::getNextParam() for details.
 
-static const ManglingRule manglingRules[] = {
-{ StringRef(), {0}, {0} },
+static constexpr ManglingRule manglingRules[] = {
+{ "", {0}, {0} },
 { "abs"                             , {1},   {E_ANY}},
 { "abs_diff"                        , {1},   {E_ANY,E_COPY}},
 { "acos"                            , {1},   {E_ANY}},