• E
    target/riscv: call gen_goto_tb on DISAS_TOO_MANY · ccf08e40
    Emilio G. Cota 提交于
    Performance impact of this and the previous commits, measured with
    the very-easy-to-cross-compile rv8-bench:
      https://github.com/rv8-io/rv8-bench
    
    Host: Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz
    
    - Key:
      before: master
      after1,2,3: the 3 commits in this series (i.e. 3 is this commit)
    
    - User-mode:
    
     bench      before  after1  after2  after3  final speedup
    ---------------------------------------------------------
     aes        1.12s   1.12s   1.10s   1.00s   1.12
     bigint     0.78s   0.78s   0.78s   0.78s   1
     dhrystone  0.96s   0.97s   0.49s   0.49s   1.9591837
     miniz      1.94s   1.94s   1.88s   1.86s   1.0430108
     norx       0.51s   0.51s   0.49s   0.48s   1.0625
     primes     0.85s   0.85s   0.84s   0.84s   1.0119048
     qsort      4.87s   4.88s   1.86s   1.86s   2.6182796
     sha512     0.76s   0.77s   0.64s   0.64s   1.1875
    
    (after1 only applies to softmmu, so no surprises here)
    
    - Full-system (fedora):
    
     bench      before  after1  after2  after3  final speedup
    ---------------------------------------------------------
     aes        2.68s   2.54s   2.60s   2.34s   1.1452991
     bigint     1.61s   1.56s   1.55s   1.64s   0.98170732
     dhrystone  1.78s   1.67s   1.25s   1.24s   1.4354839
     miniz      3.53s   3.35s   3.28s   3.35s   1.0537313
     norx       1.13s   1.09s   1.07s   1.06s   1.0660377
     primes     15.37s  15.41s  15.20s  15.37s  1
     qsort      7.20s   6.71s   3.85s   3.96s   1.8181818
     sha512     1.07s   1.04s   0.90s   0.90s   1.1888889
    
    SoftMMU slows things down, so the numbers are less sensitive.
    Cross-page jumps improve things a little bit, though.
    
    Note that I'm not showing here averages, just results from a
    single run, so with primes there isn't much to worry about.
    Signed-off-by: NEmilio G. Cota <cota@braap.org>
    Reviewed-by: NRichard Henderson <richard.henderson@linaro.org>
    Signed-off-by: NAlistair Francis <alistair.francis@wdc.com>
    ccf08e40
translate.c 57.7 KB