diff options
| author | Guy David <guyda96@gmail.com> | 2025-04-23 02:24:41 +0300 |
|---|---|---|
| committer | Guy David <guyda96@gmail.com> | 2025-08-31 14:54:01 +0300 |
| commit | fe2994d3638751b15acca112505a23f3e7ab7e98 (patch) | |
| tree | 8c430e053016d76839bab5d032763c0557819283 /clang/lib/CodeGen/CodeGenFunction.cpp | |
| parent | b369237c98906891f9e56fd4be4109a25b79e3e9 (diff) | |
[Clang] Add `noalias` to `this` pointer in C++ constructorsusers/guy-david/clang-cpp-ctor-noalias-this-v2
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.cpp')
| -rw-r--r-- | clang/lib/CodeGen/CodeGenFunction.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenFunction.cpp b/clang/lib/CodeGen/CodeGenFunction.cpp index b2fe9171372d..a661a5d9578d 100644 --- a/clang/lib/CodeGen/CodeGenFunction.cpp +++ b/clang/lib/CodeGen/CodeGenFunction.cpp @@ -1560,6 +1560,9 @@ void CodeGenFunction::GenerateCode(GlobalDecl GD, llvm::Function *Fn, // Emit the standard function prologue. StartFunction(GD, ResTy, Fn, FnInfo, Args, Loc, BodyRange.getBegin()); + if (isa<CXXConstructorDecl>(FD)) + Fn->addParamAttr(0, llvm::Attribute::NoAlias); + // Save parameters for coroutine function. if (Body && isa_and_nonnull<CoroutineBodyStmt>(Body)) llvm::append_range(FnArgs, FD->parameters()); |
