diff options
author | James Y Knight <jyknight@google.com> | 2023-01-06 10:11:44 -0500 |
---|---|---|
committer | James Y Knight <jyknight@google.com> | 2023-01-06 13:53:10 -0500 |
commit | 1ae36b1387e4d023cc00aaa6139bcd90b2e48ff4 (patch) | |
tree | dec2893890294a2b42666808b02f7728fcc25515 /llvm/lib/Transforms/Utils/InlineFunction.cpp | |
parent | 7ce53e31023dcf9d8fb95d172e20a35e60ebd821 (diff) | |
download | llvm-1ae36b1387e4d023cc00aaa6139bcd90b2e48ff4.zip llvm-1ae36b1387e4d023cc00aaa6139bcd90b2e48ff4.tar.gz llvm-1ae36b1387e4d023cc00aaa6139bcd90b2e48ff4.tar.bz2 |
Remove special cases for invoke of non-throwing inline-asm.
Non-throwing inline asm infers the nounwind attribute in
instcombine. Thus, it can be handled in the same manner as
non-throwing target functions are generally. Further special casing is
unnecessary complexity.
Diffstat (limited to 'llvm/lib/Transforms/Utils/InlineFunction.cpp')
-rw-r--r-- | llvm/lib/Transforms/Utils/InlineFunction.cpp | 7 |
1 files changed, 0 insertions, 7 deletions
diff --git a/llvm/lib/Transforms/Utils/InlineFunction.cpp b/llvm/lib/Transforms/Utils/InlineFunction.cpp index a429b0d..6aaaa33c 100644 --- a/llvm/lib/Transforms/Utils/InlineFunction.cpp +++ b/llvm/lib/Transforms/Utils/InlineFunction.cpp @@ -550,13 +550,6 @@ static BasicBlock *HandleCallsInBlockInlinedThroughInvoke( if (!CI || CI->doesNotThrow()) continue; - if (CI->isInlineAsm()) { - InlineAsm *IA = cast<InlineAsm>(CI->getCalledOperand()); - if (!IA->canThrow()) { - continue; - } - } - // We do not need to (and in fact, cannot) convert possibly throwing calls // to @llvm.experimental_deoptimize (resp. @llvm.experimental.guard) into // invokes. The caller's "segment" of the deoptimization continuation |