On 11 January 2016 at 20:16, Lluís Vilanova <vilan...@ac.upc.edu> wrote:
> Great! I implemented a similar thing long time ago. In my case the machinery 
> is
> completely hidden under the concept of "value promises" in TCG (i.e., the user
> does not need to know about TCG internals like tcg_op_buf_count):
>
>    // create promise
>    TCGv_promise_i32 imm_p;
>    TCGv_i32 imm = tcg_const_promise_i32(&imm_p); // akin to tcg_const_i32()
>    ...
>    // operate with promised immediate 'imm'
>    ...
>    // resolve promised value
>    tcg_set_promise_i32(imm_p, resolved_value);

I think this is definitely a nicer API if we're going to
have more than a very few uses -- gen_icount kind of gets
away with looking under the hood of the tcg data structures
because it's a sort of internal thing itself, but wider
use would definitely benefit from a more formal API.

thanks
-- PMM

Reply via email to