[clang] [clang] Use StringRef::consume_front (NFC) (PR #139472)
via cfe-commits
cfe-commits at lists.llvm.org
Sun May 11 13:58:44 PDT 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang
Author: Kazu Hirata (kazutakahirata)
<details>
<summary>Changes</summary>
---
Full diff: https://github.com/llvm/llvm-project/pull/139472.diff
4 Files Affected:
- (modified) clang/lib/CodeGen/CGBlocks.cpp (+1-2)
- (modified) clang/lib/CodeGen/CGDebugInfo.cpp (+2-4)
- (modified) clang/lib/CodeGen/CGExpr.cpp (+1-2)
- (modified) clang/lib/CodeGen/CodeGenModule.cpp (+1-5)
``````````diff
diff --git a/clang/lib/CodeGen/CGBlocks.cpp b/clang/lib/CodeGen/CGBlocks.cpp
index ba0d87fdc5d43..40627d6ffd3c9 100644
--- a/clang/lib/CodeGen/CGBlocks.cpp
+++ b/clang/lib/CodeGen/CGBlocks.cpp
@@ -40,8 +40,7 @@ CGBlockInfo::CGBlockInfo(const BlockDecl *block, StringRef name)
// Skip asm prefix, if any. 'name' is usually taken directly from
// the mangled name of the enclosing function.
- if (!name.empty() && name[0] == '\01')
- name = name.substr(1);
+ name.consume_front("\01");
}
// Anchor the vtable to this translation unit.
diff --git a/clang/lib/CodeGen/CGDebugInfo.cpp b/clang/lib/CodeGen/CGDebugInfo.cpp
index 3513175b8b8ad..2a11eebf1b682 100644
--- a/clang/lib/CodeGen/CGDebugInfo.cpp
+++ b/clang/lib/CodeGen/CGDebugInfo.cpp
@@ -4500,8 +4500,7 @@ void CGDebugInfo::emitFunctionStart(GlobalDecl GD, SourceLocation Loc,
Flags |= llvm::DINode::FlagPrototyped;
}
- if (Name.starts_with("\01"))
- Name = Name.substr(1);
+ Name.consume_front("\01");
assert((!D || !isa<VarDecl>(D) ||
GD.getDynamicInitKind() != DynamicInitKind::NoStub) &&
@@ -4590,8 +4589,7 @@ void CGDebugInfo::EmitFunctionDecl(GlobalDecl GD, SourceLocation Loc,
} else {
llvm_unreachable("not a function or ObjC method");
}
- if (!Name.empty() && Name[0] == '\01')
- Name = Name.substr(1);
+ Name.consume_front("\01");
if (D->isImplicit()) {
Flags |= llvm::DINode::FlagArtificial;
diff --git a/clang/lib/CodeGen/CGExpr.cpp b/clang/lib/CodeGen/CGExpr.cpp
index 49c2bef20925a..0d03923951a16 100644
--- a/clang/lib/CodeGen/CGExpr.cpp
+++ b/clang/lib/CodeGen/CGExpr.cpp
@@ -3388,8 +3388,7 @@ LValue CodeGenFunction::EmitPredefinedLValue(const PredefinedExpr *E) {
auto SL = E->getFunctionName();
assert(SL != nullptr && "No StringLiteral name in PredefinedExpr");
StringRef FnName = CurFn->getName();
- if (FnName.starts_with("\01"))
- FnName = FnName.substr(1);
+ FnName.consume_front("\01");
StringRef NameItems[] = {
PredefinedExpr::getIdentKindName(E->getIdentKind()), FnName};
std::string GVName = llvm::join(NameItems, NameItems + 2, ".");
diff --git a/clang/lib/CodeGen/CodeGenModule.cpp b/clang/lib/CodeGen/CodeGenModule.cpp
index 3469676b74bc8..428a4b8335524 100644
--- a/clang/lib/CodeGen/CodeGenModule.cpp
+++ b/clang/lib/CodeGen/CodeGenModule.cpp
@@ -4061,11 +4061,7 @@ namespace {
return false;
std::string BuiltinNameStr = BI.getName(BuiltinID);
StringRef BuiltinName = BuiltinNameStr;
- if (BuiltinName.starts_with("__builtin_") &&
- Name == BuiltinName.slice(strlen("__builtin_"), StringRef::npos)) {
- return true;
- }
- return false;
+ return BuiltinName.consume_front("__builtin_") && Name == BuiltinName;
}
bool VisitStmt(const Stmt *S) {
``````````
</details>
https://github.com/llvm/llvm-project/pull/139472
More information about the cfe-commits
mailing list