[PATCH] D20116: Add nosideeffects function attribute

Tom Stellard via llvm-commits llvm-commits at lists.llvm.org
Tue May 10 10:42:26 PDT 2016


tstellarAMD created this revision.
tstellarAMD added a reviewer: majnemer.
tstellarAMD added a subscriber: llvm-commits.
Herald added a subscriber: joker.eph.

nosideeffects tells the optimizer that the function has no possible side effects,
like divide by zero for example.

This patch also slightly modifies the definition of the IntrNoMem
intrinsic property in TableGen so that IntrNoMem no longer indicates
the intrinsic has no side effects.  This change was made so that it
would be possible to specify that an intrinsic read no memory, but
did have other potential side effects.

http://reviews.llvm.org/D20116

Files:
  docs/LangRef.rst
  include/llvm/Bitcode/LLVMBitCodes.h
  include/llvm/IR/Attributes.td
  include/llvm/IR/Function.h
  include/llvm/IR/Intrinsics.td
  lib/AsmParser/LLLexer.cpp
  lib/AsmParser/LLParser.cpp
  lib/AsmParser/LLToken.h
  lib/Bitcode/Reader/BitcodeReader.cpp
  lib/Bitcode/Writer/BitcodeWriter.cpp
  lib/IR/Attributes.cpp
  lib/IR/Verifier.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/LTO/X86/Inputs/invalid.ll.bc
  test/LTO/X86/invalid.ll
  utils/TableGen/CodeGenInstruction.h
  utils/TableGen/CodeGenIntrinsics.h
  utils/TableGen/CodeGenTarget.cpp
  utils/TableGen/IntrinsicEmitter.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20116.56749.patch
Type: text/x-patch
Size: 12805 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160510/bfab54f0/attachment.bin>


More information about the llvm-commits mailing list