[llvm-dev] Inline assembly and poison values

Leo Gaspard via llvm-dev llvm-dev at lists.llvm.org
Mon Dec 13 16:19:23 PST 2021


Johannes Doerfert <johannesdoerfert at gmail.com> writes:
>> It totally makes sense to me! Out of curiosity, what is the process for
>> adding a clause like the below in the reference? (eg. waiting some delay
>> then submitting a formal change, getting it reviewed and landing it?)
>
> "like the below"? I'm confused. Adding an IR extensions requires
> a RFC on the mailing list, look for recent ones to see what format
> they can have. Motivation, semantics, etc. Then (or together) a
> patch for the LangRef and the IR reader/writer etc. Then preferably
> some users in the code base so it's not just pretty but useful ;)
>
> Does that answer the question?

Hmm so just to confirm, the thing I was thinking of adding was just the
following paragraph (which maybe formatted poorly over email?). To the
best of my understanding it's not actually an IR extension, just
explicitly stating in the reference the conclusion of the current
discussion about the wanted semantics of freezing and inline assembly.
Does that still need an RFC, or is there a lighter process for such
documentation changes? (especially as this paragraph doesn't actually
specify anything new to the best of my knowledge, it's just explicitly
stating the absence of guarantees that before that were implicitly not
there)

Said paragraph:
----------8<----------
What exactly ‘poison’ means is backend-specific, and the outputs of an
assembly block handling poisoned data can be, or not, poisoned depending
on each backend and the exact contents of the assembly block. In
particular, the backend is allowed to peer into the assembly block and
optimize depending on that.
---------->8----------


More information about the llvm-dev mailing list