On Fri, Oct 30, 2026 at 2:56 PM Richard Henderson
<[email protected]> wrote:
> +   * - goto_jc *jc*, *pc*, *cs_base*, *flags*, *label*
> +
> +     - | *jc* is a CPUJumpCache pointer.  Generate code for:
> +       |
> +       | if (jc->pc != pc) goto label;
> +       | tb = jc->tb;
> +       | if (tb == NULL) goto label;
> +       | if (tb->flags != flags) goto label;

*flags* is the 64-bit flags:cflags pair, not tb->flags, and the backends
load it as one word. Please say so here, along with the host-endian
layout. *jc* also isn't a plain CPUJumpCache pointer: it's biased by
hash * 16, and the backends use array[0] offsets from it. It also needs
the "This operation is optional" line that goto_ptr has.

Reply via email to