Displaying 3 results from an estimated 3 matches for "expression_".
Did you mean:
expression
2019 Dec 16
7
[RFC] How to manifest information in LLVM-IR, or, revisiting llvm.assume
...structions, we can
outline the assumption expression code and tie it to the
`llvm.assume` via another operand bundle property. It could look
something like this:
`__builtin_assume(foo(i) == bar(j));`
will cause us to generate
```
/// Must return true!
static bool llvm.assume.expression_#27(int i, int j) {
return foo(i) == bar(j);
}
```
and a `llvm.assume` call like this:
`llvm.assume() ["assume_fn"(@llvm.assume.expression_#27, %i, %j))]
So we generate the expression in a new function which we (only) tie to
the `llvm.assume()` through the "ass...
2019 Dec 18
2
[RFC] How to manifest information in LLVM-IR, or, revisiting llvm.assume
...to the
> > `llvm.assume` via another operand bundle property. It could look
> > something like this:
> > `__builtin_assume(foo(i) == bar(j));`
> > will cause us to generate
> > ```
> > /// Must return true!
> > static bool llvm.assume.expression_#27(int i, int j) {
> > return foo(i) == bar(j);
> > }
> > ```
> > and a `llvm.assume` call like this:
> > `llvm.assume() ["assume_fn"(@llvm.assume.expression_#27, %i, %j))]
> > So we generate the expression in a new function which...
2019 Dec 18
2
[RFC] How to manifest information in LLVM-IR, or, revisiting llvm.assume
...erand bundle property. It could look
> >>> something like this:
> >>> `__builtin_assume(foo(i) == bar(j));`
> >>> will cause us to generate
> >>> ```
> >>> /// Must return true!
> >>> static bool llvm.assume.expression_#27(int i, int j) {
> >>> return foo(i) == bar(j);
> >>> }
> >>> ```
> >>> and a `llvm.assume` call like this:
> >>> `llvm.assume() ["assume_fn"(@llvm.assume.expression_#27, %i, %j))]
> >>> So we...