[llvm-dev] RFC: Add "operand bundles" to calls and invokes
Philip Reames via llvm-dev
llvm-dev at lists.llvm.org
Wed Aug 19 18:55:22 PDT 2015
On 08/19/2015 06:09 PM, Sanjoy Das wrote:
> A high level summary of the proposal as it stands right now (from my
> perspective), after
> incorporating Philip's suggestions:
>
> 1. Operand bundles are a way to associate a set of SSA values with a
> call or invoke.
>
> 2. Operand bundles are lowered in some arbitrary bundle-tag specific
> manner.
>
> 3. The optimizer can optimize around operand bundles with (roughly)
> the assumption that they're just extra arguments to the call /
> invoke. In particular, the optimizer does not have to assume that
> operand bundles imply any extra memory / IO effects than what is
> apparent from the call.
>
> 4. Through the discussion we came up with a re-ordering
> restriction we'll have to place on function calls / invokes that
> may deoptimize their caller. This is orthogonal to the operand
> bundles discussion, and will be implemented as a separate call
> attribute.
>
> Is everyone on the thread comfortable enough with the general idea
> that I can start writing patches and sending them in for review?
I am.
>
> -- Sanjoy
More information about the llvm-dev
mailing list