[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PULL 18/26] target-hppa: Add framework and enable comp
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] [PULL 18/26] target-hppa: Add framework and enable compilation |
Date: |
Mon, 30 Jan 2017 13:49:34 +0000 |
On 23 January 2017 at 02:17, Richard Henderson <address@hidden> wrote:
> This is just about the minimum required to enable compilation
> without actually executing any instructions. This contains the
> HPPACPU structure and the required callbacks, the gdbstub, the
> basic translation loop, and a translate_one function that always
> results in an illegal instruction.
>
> Signed-off-by: Richard Henderson <address@hidden>
> --- /dev/null
> +++ b/target/hppa/gdbstub.c
> @@ -0,0 +1,111 @@
> +/*
> + * HPPA gdb server stub
> +int hppa_cpu_gdb_write_register(CPUState *cs, uint8_t *mem_buf, int n)
> +{
> + HPPACPU *cpu = HPPA_CPU(cs);
> + CPUHPPAState *env = &cpu->env;
> + target_ulong val = ldtul_p(mem_buf);
> +
> + switch (n) {
> + case 0:
> + cpu_hppa_put_psw(env, val);
> + break;
> + case 1 ... 31:
> + env->gr[n] = val;
> + break;
> + case 32:
> + env->sar = val;
> + break;
> + case 33:
> + env->iaoq_f = val;
> + break;
> + case 35:
> + env->iaoq_b = val;
Is this a missing "break;" or a missing "/* fall through */" ?
(spotted by Coverity, CID 1369420.)
> + case 59:
> + env->cr26 = val;
> + break;
> + case 60:
> + env->cr27 = val;
> + break;
> + case 64:
> + env->fr[0] = deposit64(env->fr[0], 32, 32, val);
> + cpu_hppa_loaded_fr0(env);
> + break;
> + case 65 ... 127:
> + {
> + uint64_t *fr = &env->fr[(n - 64) / 2];
> + *fr = deposit64(*fr, val, (n & 1 ? 0 : 32), 32);
> + }
> + break;
> + default:
> + if (n >= 128) {
> + return 0;
> + }
> + break;
> + }
> + return sizeof(target_ulong);
> +})
thanks
-- PMM
- [Qemu-devel] [PULL 13/26] linux-user: Add HPPA target_structs.h, (continued)
- [Qemu-devel] [PULL 13/26] linux-user: Add HPPA target_structs.h, Richard Henderson, 2017/01/22
- [Qemu-devel] [PULL 14/26] linux-user: Add HPPA target_signal.h and target_cpu.h, Richard Henderson, 2017/01/22
- [Qemu-devel] [PULL 15/26] linux-user: Add HPPA signal handling, Richard Henderson, 2017/01/22
- [Qemu-devel] [PULL 17/26] target-hppa: Add softfloat specializations, Richard Henderson, 2017/01/22
- [Qemu-devel] [PULL 01/26] Revert "Remove remainders of HPPA backend", Richard Henderson, 2017/01/22
- [Qemu-devel] [PULL 16/26] linux-user: Add HPPA startup and main loop, Richard Henderson, 2017/01/22
- [Qemu-devel] [PULL 22/26] target-hppa: Implement linux-user gateway page, Richard Henderson, 2017/01/22
- [Qemu-devel] [PULL 20/26] target-hppa: Implement basic arithmetic, Richard Henderson, 2017/01/22
- [Qemu-devel] [PULL 19/26] target-hppa: Add nullification framework, Richard Henderson, 2017/01/22
- [Qemu-devel] [PULL 18/26] target-hppa: Add framework and enable compilation, Richard Henderson, 2017/01/22
- Re: [Qemu-devel] [PULL 18/26] target-hppa: Add framework and enable compilation,
Peter Maydell <=
- [Qemu-devel] [PULL 21/26] target-hppa: Implement branches, Richard Henderson, 2017/01/22
- [Qemu-devel] [PULL 23/26] target-hppa: Implement shifts and deposits, Richard Henderson, 2017/01/22
- [Qemu-devel] [PULL 25/26] target-hppa: Implement system and memory-management insns, Richard Henderson, 2017/01/22
- [Qemu-devel] [PULL 24/26] target-hppa: Implement loads and stores, Richard Henderson, 2017/01/22
- [Qemu-devel] [PULL 26/26] target-hppa: Implement floating-point insns, Richard Henderson, 2017/01/22
- Re: [Qemu-devel] [PULL 00/26] New hppa-linux target support, Peter Maydell, 2017/01/23