[clang] [clang][bytecode][NFC] Move local variable into closest scope (PR #186376)
via cfe-commits
cfe-commits at lists.llvm.org
Fri Mar 13 04:50:51 PDT 2026
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang
Author: Timm Baeder (tbaederr)
<details>
<summary>Changes</summary>
We don't need ElemLoc unless we have an element ctor func.
---
Full diff: https://github.com/llvm/llvm-project/pull/186376.diff
1 Files Affected:
- (modified) clang/lib/AST/ByteCode/Descriptor.cpp (+4-3)
``````````diff
diff --git a/clang/lib/AST/ByteCode/Descriptor.cpp b/clang/lib/AST/ByteCode/Descriptor.cpp
index 5ebc726328fb7..9cc79883474a0 100644
--- a/clang/lib/AST/ByteCode/Descriptor.cpp
+++ b/clang/lib/AST/ByteCode/Descriptor.cpp
@@ -83,10 +83,9 @@ static void ctorArrayDesc(Block *B, std::byte *Ptr, bool IsConst,
D->ElemDesc->getAllocSize() + sizeof(InlineDescriptor);
unsigned ElemOffset = 0;
- for (unsigned I = 0; I < NumElems; ++I, ElemOffset += ElemSize) {
+ for (unsigned I = 0; I != NumElems; ++I, ElemOffset += ElemSize) {
auto *ElemPtr = Ptr + ElemOffset;
auto *Desc = reinterpret_cast<InlineDescriptor *>(ElemPtr);
- auto *ElemLoc = reinterpret_cast<std::byte *>(Desc + 1);
auto *SD = D->ElemDesc;
Desc->Offset = ElemOffset + sizeof(InlineDescriptor);
@@ -100,9 +99,11 @@ static void ctorArrayDesc(Block *B, std::byte *Ptr, bool IsConst,
Desc->IsArrayElement = true;
Desc->IsVolatile = IsVolatile;
- if (auto Fn = D->ElemDesc->CtorFn)
+ if (auto Fn = D->ElemDesc->CtorFn) {
+ auto *ElemLoc = reinterpret_cast<std::byte *>(Desc + 1);
Fn(B, ElemLoc, Desc->IsConst, Desc->IsFieldMutable, IsVolatile, IsActive,
Desc->InUnion || SD->isUnion(), D->ElemDesc);
+ }
}
}
``````````
</details>
https://github.com/llvm/llvm-project/pull/186376
More information about the cfe-commits
mailing list