[llvm-dev] [RFC] A new intrinsic, `llvm.blackbox`, to explicitly prevent constprop, die, etc optimizations

Daniel Berlin via llvm-dev llvm-dev at lists.llvm.org
Mon Nov 9 20:58:38 PST 2015


On Mon, Nov 9, 2015 at 7:46 PM, Reid Kleckner <rnk at google.com> wrote:

> One thing that volatile doesn't do is escape results that have been
> written to memory.
>
>
Honestly, i'd probably rather see attributes or something than this
intrinsic.

That said ....



> The proposed blackbox intrinsic is modeled as reading and writing any
> pointed to memory, which is useful.
>
>
The proposed intrinsic does not have a really well defined exact set of
semantics.
If it did, and those semantics made sense, i think you'd see a lot less
pushback.


> I also think blackbox will be a lot easier for people to use than empty
> volatile inline asm and volatile loads and stores. That alone seems worth
> something. :)
>
>
Yes, but at the same time, it seems very "Do What I Mean".

Those kinds of intrinsics rarely turn out to be sane and maintainable ;-)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151109/ae27f7d6/attachment.html>


More information about the llvm-dev mailing list