[PATCH] D12923: Add support for function attribute "notail"
Philip Reames via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 17 09:47:31 PDT 2015
+llvm-dev
Can you give a bit of background on what you're trying to address here?
After reading through the discussion and seeing that this is a best
effort flag, I'm not sure that a function attribute is the best way to
describe this. I'm open to being convinced it is, but I'd like to hear
a bit more about the use case and get broader visibility on the proposal
first.
Philip
On 09/16/2015 07:27 PM, Akira Hatanaka via llvm-commits wrote:
> ahatanak created this revision.
> ahatanak added a subscriber: llvm-commits.
>
> This patch adds support for a new IR function attribute "notail". The attribute is used to disable tail call optimization on calls to functions marked with the attribute.
>
> This attribute is different from the existing attribute "disable-tail-calls", which disables tail call optimizations on all call sites within the marked function.
>
> The patch to add support for the corresponding source-level function attribute is here:
> http://reviews.llvm.org/D12922
>
> http://reviews.llvm.org/D12923
>
> Files:
> docs/LangRef.rst
> include/llvm/Bitcode/LLVMBitCodes.h
> include/llvm/IR/Attributes.h
> include/llvm/IR/Instructions.h
> lib/AsmParser/LLLexer.cpp
> lib/AsmParser/LLParser.cpp
> lib/AsmParser/LLToken.h
> lib/Bitcode/Reader/BitcodeReader.cpp
> lib/Bitcode/Writer/BitcodeWriter.cpp
> lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
> lib/IR/Attributes.cpp
> lib/IR/Verifier.cpp
> lib/Transforms/Scalar/TailRecursionElimination.cpp
> test/Bindings/llvm-c/Inputs/invalid.ll.bc
> test/Bindings/llvm-c/invalid-bitcode.test
> test/Bitcode/attributes.ll
> test/Bitcode/invalid.ll
> test/Bitcode/invalid.ll.bc
> test/CodeGen/X86/attr-notail.ll
> test/Transforms/TailCallElim/notail.ll
>
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150917/a08f549e/attachment.html>
More information about the llvm-commits
mailing list