[PATCH] D85393: [WIP] [IR] Adding noprogress as a LLVM IR attribute

Atmn Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 5 20:43:57 PDT 2020


atmnpatel created this revision.
atmnpatel added a reviewer: jdoerfert.
Herald added subscribers: llvm-commits, dexonsmith, steven_wu, hiraditya.
Herald added a project: LLVM.
atmnpatel requested review of this revision.

This adds a new LLVM IR attribute ```noprogress``` that would be applied to functions where during the Frontend (probably Sema) we determine that there is no progress guaranteed. This would give us a way to formalize more deadcode for instance and hopefully optimize them away (when appropriate). This is related to the discussion in D65718 <https://reviews.llvm.org/D65718> about the undocumented ambigious status of the forward progress requirement in LLVM IR.

The changes in the frontend will be added soon, this only has the changes to the IR.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D85393

Files:
  llvm/include/llvm/Bitcode/LLVMBitCodes.h
  llvm/include/llvm/IR/Attributes.td
  llvm/include/llvm/IR/Function.h
  llvm/lib/AsmParser/LLLexer.cpp
  llvm/lib/AsmParser/LLParser.cpp
  llvm/lib/AsmParser/LLToken.h
  llvm/lib/Bitcode/Reader/BitcodeReader.cpp
  llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
  llvm/lib/IR/Attributes.cpp
  llvm/lib/IR/Verifier.cpp
  llvm/lib/Transforms/Utils/CodeExtractor.cpp
  llvm/test/Assembler/noprogress-parse-error-0.bc
  llvm/test/Assembler/noprogress-parse-error-0.ll
  llvm/test/Assembler/noprogress-parse-error-1.ll
  llvm/test/Assembler/noprogress-parse-error-2.ll
  llvm/test/Assembler/noprogress-parse-error-3.ll
  llvm/test/Bitcode/attributes.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D85393.283477.patch
Type: text/x-patch
Size: 7467 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200806/b64f0a81/attachment.bin>


More information about the llvm-commits mailing list