aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/InlineFunction.cpp
diff options
context:
space:
mode:
authorNick Desaulniers <ndesaulniers@google.com>2020-11-17 17:17:44 -0800
committerNick Desaulniers <ndesaulniers@google.com>2020-11-17 17:27:14 -0800
commitf4c6080ab820219c5bf78b0c2143e7fa194da296 (patch)
treef396fe0699171b36e03a76554abb301b558f46b9 /llvm/lib/Transforms/Utils/InlineFunction.cpp
parentdd6087cac087046b5cd29a21e7fff2732fb35997 (diff)
downloadllvm-f4c6080ab820219c5bf78b0c2143e7fa194da296.zip
llvm-f4c6080ab820219c5bf78b0c2143e7fa194da296.tar.gz
llvm-f4c6080ab820219c5bf78b0c2143e7fa194da296.tar.bz2
Revert "[IR] add fn attr for no_stack_protector; prevent inlining on mismatch"
This reverts commit b7926ce6d7a83cdf70c68d82bc3389c04009b841. Going with a simpler approach.
Diffstat (limited to 'llvm/lib/Transforms/Utils/InlineFunction.cpp')
-rw-r--r--llvm/lib/Transforms/Utils/InlineFunction.cpp16
1 files changed, 0 insertions, 16 deletions
diff --git a/llvm/lib/Transforms/Utils/InlineFunction.cpp b/llvm/lib/Transforms/Utils/InlineFunction.cpp
index 54c5825..05e6929 100644
--- a/llvm/lib/Transforms/Utils/InlineFunction.cpp
+++ b/llvm/lib/Transforms/Utils/InlineFunction.cpp
@@ -1667,22 +1667,6 @@ llvm::InlineResult llvm::InlineFunction(CallBase &CB, InlineFunctionInfo &IFI,
return InlineResult::failure("incompatible GC");
}
- // Inlining a function that explicitly should not have a stack protector may
- // break the code if inlined into a function that does have a stack
- // protector.
- if (LLVM_UNLIKELY(Caller->hasFnAttribute(Attribute::NoStackProtect)))
- if (CalledFunc->hasFnAttribute(Attribute::StackProtect) ||
- CalledFunc->hasFnAttribute(Attribute::StackProtectStrong) ||
- CalledFunc->hasFnAttribute(Attribute::StackProtectReq))
- return InlineResult::failure(
- "stack protected callee but caller requested no stack protector");
- if (LLVM_UNLIKELY(CalledFunc->hasFnAttribute(Attribute::NoStackProtect)))
- if (Caller->hasFnAttribute(Attribute::StackProtect) ||
- Caller->hasFnAttribute(Attribute::StackProtectStrong) ||
- Caller->hasFnAttribute(Attribute::StackProtectReq))
- return InlineResult::failure(
- "stack protected caller but callee requested no stack protector");
-
// Get the personality function from the callee if it contains a landing pad.
Constant *CalledPersonality =
CalledFunc->hasPersonalityFn()