[llvm] 5f2c53b - Pass some DataLayout arguments by const-ref
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 23 07:51:11 PDT 2021
Author: Simon Pilgrim
Date: 2021-09-23T15:50:31+01:00
New Revision: 5f2c53bdf4c58a488c098ed42c26dfcd369dd15e
URL: https://github.com/llvm/llvm-project/commit/5f2c53bdf4c58a488c098ed42c26dfcd369dd15e
DIFF: https://github.com/llvm/llvm-project/commit/5f2c53bdf4c58a488c098ed42c26dfcd369dd15e.diff
LOG: Pass some DataLayout arguments by const-ref
Avoid unnecessary copies, reported by MSVC static analyzer.
Added:
Modified:
llvm/lib/Transforms/Coroutines/CoroFrame.cpp
llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
llvm/tools/llvm-exegesis/lib/Assembler.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Transforms/Coroutines/CoroFrame.cpp b/llvm/lib/Transforms/Coroutines/CoroFrame.cpp
index add3fe7a50f82..6184ee524204a 100644
--- a/llvm/lib/Transforms/Coroutines/CoroFrame.cpp
+++ b/llvm/lib/Transforms/Coroutines/CoroFrame.cpp
@@ -435,7 +435,7 @@ class FrameTypeBuilder {
DenseMap<Value*, unsigned> FieldIndexByKey;
public:
- FrameTypeBuilder(LLVMContext &Context, DataLayout const &DL,
+ FrameTypeBuilder(LLVMContext &Context, const DataLayout &DL,
Optional<Align> MaxFrameAlignment)
: DL(DL), Context(Context), MaxFrameAlignment(MaxFrameAlignment) {}
@@ -840,8 +840,9 @@ static StringRef solveTypeName(Type *Ty) {
return "UnknownType";
}
-static DIType *solveDIType(DIBuilder &Builder, Type *Ty, DataLayout &Layout,
- DIScope *Scope, unsigned LineNum,
+static DIType *solveDIType(DIBuilder &Builder, Type *Ty,
+ const DataLayout &Layout, DIScope *Scope,
+ unsigned LineNum,
DenseMap<Type *, DIType *> &DITypeCache) {
if (DIType *DT = DITypeCache.lookup(Ty))
return DT;
diff --git a/llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp b/llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
index 259b802bda63b..fb1940a6d0df9 100644
--- a/llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
+++ b/llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
@@ -67,7 +67,8 @@ bool isUsefullToPreserve(Attribute::AttrKind Kind) {
/// This function will try to transform the given knowledge into a more
/// canonical one. the canonical knowledge maybe the given one.
-RetainedKnowledge canonicalizedKnowledge(RetainedKnowledge RK, DataLayout DL) {
+RetainedKnowledge canonicalizedKnowledge(RetainedKnowledge RK,
+ const DataLayout &DL) {
switch (RK.AttrKind) {
default:
return RK;
diff --git a/llvm/tools/llvm-exegesis/lib/Assembler.cpp b/llvm/tools/llvm-exegesis/lib/Assembler.cpp
index c5be3bfd3eb73..982f35fe6a127 100644
--- a/llvm/tools/llvm-exegesis/lib/Assembler.cpp
+++ b/llvm/tools/llvm-exegesis/lib/Assembler.cpp
@@ -153,7 +153,7 @@ ArrayRef<unsigned> FunctionFiller::getRegistersSetUp() const {
}
static std::unique_ptr<Module>
-createModule(const std::unique_ptr<LLVMContext> &Context, const DataLayout DL) {
+createModule(const std::unique_ptr<LLVMContext> &Context, const DataLayout &DL) {
auto Mod = std::make_unique<Module>(ModuleID, *Context);
Mod->setDataLayout(DL);
return Mod;
More information about the llvm-commits
mailing list