Am 02.07.2013 21:59, schrieb Richard Henderson: > On 07/02/2013 12:31 PM, Andreas Färber wrote: >> Hello, >> >> As Richard explained, the purpose of having separate gen_intermediate_code() >> and gen_intermediate_code_pc() functions per target is to compile-optimize >> gen_intermediate_code_internal() for the non-_pc case. >> >> Multiple targets were using static rather than static inline though, fix >> this. >> >> I've split these off from my refactorings so that we can backport them to >> stable, >> and I'm rebasing my argument refactoring patches on top. >> >> No actual performance changes have been benchmarked, these changes serve more >> to align our targets as clear examples for new targets such as rl78 and bfin. > > All: > Reviewed-by: Richard Henderson <r...@twiddle.net> > > Although we should probably do some benchmarking at some point to see if > the duplicated code paths really do improve things over, say, unlikely().
I did wonder about unlikely() last night, but I thought that's just a branch optimization whereas inline might avoid some branches in the first place. > But failing that we should at least have conformity of implementation. Thanks, applied to qom-cpu (moving log_cpu_state to qom-cpu-next): https://github.com/afaerber/qemu-cpu/commits/qom-cpu (If maintainers want to ack/nack, please do.) Andreas -- SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg