aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenFunction.cpp
diff options
context:
space:
mode:
authorNick Desaulniers <ndesaulniers@google.com>2021-06-21 15:09:23 -0700
committerNick Desaulniers <ndesaulniers@google.com>2021-06-21 15:09:25 -0700
commit8ace12130526f450c822ca232d1f865b247d7434 (patch)
tree4552bd2698f7a5e3a1b8148e8853106fc7d61770 /clang/lib/CodeGen/CodeGenFunction.cpp
parent759e7977679299296a0074bc3aba693d3386eb1c (diff)
downloadllvm-8ace12130526f450c822ca232d1f865b247d7434.zip
llvm-8ace12130526f450c822ca232d1f865b247d7434.tar.gz
llvm-8ace12130526f450c822ca232d1f865b247d7434.tar.bz2
[IR] convert warn-stack-size from module flag to fn attr
Otherwise, this causes issues when building with LTO for object files that use different values. Link: https://github.com/ClangBuiltLinux/linux/issues/1395 Reviewed By: dblaikie, MaskRay Differential Revision: https://reviews.llvm.org/D104342
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.cpp')
-rw-r--r--clang/lib/CodeGen/CodeGenFunction.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenFunction.cpp b/clang/lib/CodeGen/CodeGenFunction.cpp
index 97288d0..0ca9465 100644
--- a/clang/lib/CodeGen/CodeGenFunction.cpp
+++ b/clang/lib/CodeGen/CodeGenFunction.cpp
@@ -1053,6 +1053,10 @@ void CodeGenFunction::StartFunction(GlobalDecl GD, QualType RetTy,
Fn->addFnAttr("packed-stack");
}
+ if (CGM.getCodeGenOpts().WarnStackSize != UINT_MAX)
+ Fn->addFnAttr("warn-stack-size",
+ std::to_string(CGM.getCodeGenOpts().WarnStackSize));
+
if (RetTy->isVoidType()) {
// Void type; nothing to return.
ReturnValue = Address::invalid();