<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">+llvm-dev<br>
      <br>
      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.<br>
      <br>
      Philip<br>
      <br>
      On 09/16/2015 07:27 PM, Akira Hatanaka via llvm-commits wrote:<br>
    </div>
    <blockquote
cite="mid:differential-rev-PHID-DREV-wwuagwwctfjewmhdbb4e-req@reviews.llvm.org"
      type="cite">
      <pre wrap="">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:
<a class="moz-txt-link-freetext" href="http://reviews.llvm.org/D12922">http://reviews.llvm.org/D12922</a>

<a class="moz-txt-link-freetext" href="http://reviews.llvm.org/D12923">http://reviews.llvm.org/D12923</a>

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

</pre>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
llvm-commits mailing list
<a class="moz-txt-link-abbreviated" href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a>
<a class="moz-txt-link-freetext" href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>