[optnone] Make the optnone attribute effective at suppressing function
authorChandler Carruth <chandlerc@gmail.com>
Wed, 13 Aug 2014 10:49:33 +0000 (10:49 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Wed, 13 Aug 2014 10:49:33 +0000 (10:49 +0000)
commit701073e58ee098e64cd7ef6c7cdc953a067706ee
tree9a9068eee42533a8dbcea97591555ee11238599f
parent8b77c00bbf62d42c7a0651e36ea3cc8317f5d404
[optnone] Make the optnone attribute effective at suppressing function
attribute and function argument attribute synthesizing and propagating.

As with the other uses of this attribute, the goal remains a best-effort
(no guarantees) attempt to not optimize the function or assume things
about the function when optimizing. This is particularly useful for
compiler testing, bisecting miscompiles, triaging things, etc. I was
hitting specific issues using optnone to isolate test code from a test
driver for my fuzz testing, and this is one step of fixing that.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@215538 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/IPO/FunctionAttrs.cpp
test/Transforms/FunctionAttrs/optnone.ll [new file with mode: 0644]