On 1/27/2014 12:46 PM, Alexander Graf wrote: >> static inline void gen_bcond(DisasContext *ctx, int type) >> > { >> > @@ -3756,10 +3757,12 @@ static inline void gen_bcond(DisasContext *ctx, >> > int type) >> > TCGv target; >> > >> > ctx->exception = POWERPC_EXCP_BRANCH; >> > - if (type == BCOND_LR || type == BCOND_CTR) { >> > + if (type == BCOND_LR || type == BCOND_CTR || type == BCOND_TAR) { >> > target = tcg_temp_local_new(); >> > if (type == BCOND_CTR) >> > tcg_gen_mov_tl(target, cpu_ctr); >> > + else if (type == BCOND_TAR) >> > + gen_load_spr(target, SPR_TAR); > How frequently is this used in generated code? Would it make sense to make it > a global TCG variable? >
I have not yet seen a case of this being generated by the newer compilers. But it is certainly not difficult or much more code to make it be a global.