~ubuntu-branches/ubuntu/trusty/qemu/trusty

« back to all changes in this revision

Viewing changes to target-sh4/translate.c

  • Committer: Package Import Robot
  • Author(s): Serge Hallyn
  • Date: 2013-10-22 22:47:07 UTC
  • mfrom: (1.8.3) (10.1.42 sid)
  • Revision ID: package-import@ubuntu.com-20131022224707-1lya34fw3k3f24tv
Tags: 1.6.0+dfsg-2ubuntu1
* Merge 1.6.0~rc0+dfsg-2exp from debian experimental.  Remaining changes:
  - debian/control
    * update maintainer
    * remove libiscsi, usb-redir, vde, vnc-jpeg, and libssh2-1-dev
      from build-deps
    * enable rbd
    * add qemu-system and qemu-common B/R to qemu-keymaps
    * add D:udev, R:qemu, R:qemu-common and B:qemu-common to
      qemu-system-common
    * qemu-system-arm, qemu-system-ppc, qemu-system-sparc:
      - add qemu-kvm to Provides
      - add qemu-common, qemu-kvm, kvm to B/R
      - remove openbios-sparc from qemu-system-sparc D
      - drop openbios-ppc and openhackware Depends to Suggests (for now)
    * qemu-system-x86:
      - add qemu-common to Breaks/Replaces.
      - add cpu-checker to Recommends.
    * qemu-user: add B/R:qemu-kvm
    * qemu-kvm:
      - add armhf armel powerpc sparc to Architecture
      - C/R/P: qemu-kvm-spice
    * add qemu-common package
    * drop qemu-slof which is not packaged in ubuntu
  - add qemu-system-common.links for tap ifup/down scripts and OVMF link.
  - qemu-system-x86.links:
    * remove pxe rom links which are in kvm-ipxe
    * add symlink for kvm.1 manpage
  - debian/rules
    * add kvm-spice symlink to qemu-kvm
    * call dh_installmodules for qemu-system-x86
    * update dh_installinit to install upstart script
    * run dh_installman (Closes: #709241) (cherrypicked from 1.5.0+dfsg-2)
  - Add qemu-utils.links for kvm-* symlinks.
  - Add qemu-system-x86.qemu-kvm.upstart and .default
  - Add qemu-system-x86.modprobe to set nesting=1
  - Add qemu-system-common.preinst to add kvm group
  - qemu-system-common.postinst: remove bad group acl if there, then have
    udev relabel /dev/kvm.
  - New linaro patches from qemu-linaro rebasing branch
  - Dropped patches:
    * xen-simplify-xen_enabled.patch
    * sparc-linux-user-fix-missing-symbols-in-.rel-.rela.plt-sections.patch
    * main_loop-do-not-set-nonblocking-if-xen_enabled.patch
    * xen_machine_pv-do-not-create-a-dummy-CPU-in-machine-.patch
    * virtio-rng-fix-crash
  - Kept patches:
    * expose_vms_qemu64cpu.patch - updated
    * linaro arm patches from qemu-linaro rebasing branch
  - New patches:
    * fix-pci-add: change CONFIG variable in ifdef to make sure that
      pci_add is defined.
* Add linaro patches
* Add experimental mach-virt patches for arm virtualization.
* qemu-system-common.install: add debian/tmp/usr/lib to install the
  qemu-bridge-helper

Show diffs side-by-side

added added

removed removed

Lines of Context:
150
150
    done_init = 1;
151
151
}
152
152
 
153
 
void cpu_dump_state(CPUSH4State * env, FILE * f,
154
 
                    int (*cpu_fprintf) (FILE * f, const char *fmt, ...),
155
 
                    int flags)
 
153
void superh_cpu_dump_state(CPUState *cs, FILE *f,
 
154
                           fprintf_function cpu_fprintf, int flags)
156
155
{
 
156
    SuperHCPU *cpu = SUPERH_CPU(cs);
 
157
    CPUSH4State *env = &cpu->env;
157
158
    int i;
158
159
    cpu_fprintf(f, "pc=0x%08x sr=0x%08x pr=0x%08x fpscr=0x%08x\n",
159
160
                env->pc, env->sr, env->pr, env->fpscr);
1845
1846
}
1846
1847
 
1847
1848
static inline void
1848
 
gen_intermediate_code_internal(CPUSH4State * env, TranslationBlock * tb,
1849
 
                               int search_pc)
 
1849
gen_intermediate_code_internal(SuperHCPU *cpu, TranslationBlock *tb,
 
1850
                               bool search_pc)
1850
1851
{
 
1852
    CPUState *cs = CPU(cpu);
 
1853
    CPUSH4State *env = &cpu->env;
1851
1854
    DisasContext ctx;
1852
1855
    target_ulong pc_start;
1853
1856
    static uint16_t *gen_opc_end;
1866
1869
       so assume it is a dynamic branch.  */
1867
1870
    ctx.delayed_pc = -1; /* use delayed pc from env pointer */
1868
1871
    ctx.tb = tb;
1869
 
    ctx.singlestep_enabled = env->singlestep_enabled;
 
1872
    ctx.singlestep_enabled = cs->singlestep_enabled;
1870
1873
    ctx.features = env->features;
1871
1874
    ctx.has_movcal = (ctx.flags & TB_FLAG_PENDING_MOVCA);
1872
1875
 
1912
1915
        ctx.pc += 2;
1913
1916
        if ((ctx.pc & (TARGET_PAGE_SIZE - 1)) == 0)
1914
1917
            break;
1915
 
        if (env->singlestep_enabled)
 
1918
        if (cs->singlestep_enabled) {
1916
1919
            break;
 
1920
        }
1917
1921
        if (num_insns >= max_insns)
1918
1922
            break;
1919
1923
        if (singlestep)
1921
1925
    }
1922
1926
    if (tb->cflags & CF_LAST_IO)
1923
1927
        gen_io_end();
1924
 
    if (env->singlestep_enabled) {
 
1928
    if (cs->singlestep_enabled) {
1925
1929
        tcg_gen_movi_i32(cpu_pc, ctx.pc);
1926
1930
        gen_helper_debug(cpu_env);
1927
1931
    } else {
1968
1972
 
1969
1973
void gen_intermediate_code(CPUSH4State * env, struct TranslationBlock *tb)
1970
1974
{
1971
 
    gen_intermediate_code_internal(env, tb, 0);
 
1975
    gen_intermediate_code_internal(sh_env_get_cpu(env), tb, false);
1972
1976
}
1973
1977
 
1974
1978
void gen_intermediate_code_pc(CPUSH4State * env, struct TranslationBlock *tb)
1975
1979
{
1976
 
    gen_intermediate_code_internal(env, tb, 1);
 
1980
    gen_intermediate_code_internal(sh_env_get_cpu(env), tb, true);
1977
1981
}
1978
1982
 
1979
1983
void restore_state_to_opc(CPUSH4State *env, TranslationBlock *tb, int pc_pos)