qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] 199fc8: cpu: No need to zero-initialize CPUSt


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 199fc8: cpu: No need to zero-initialize CPUState::numa_nod...
Date: Thu, 09 Jul 2015 08:30:04 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 199fc85acd0571902eeefef6ea861b8ba4c8201f
      
https://github.com/qemu/qemu/commit/199fc85acd0571902eeefef6ea861b8ba4c8201f
  Author: Eduardo Habkost <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M exec.c

  Log Message:
  -----------
  cpu: No need to zero-initialize CPUState::numa_node

QOM objects are already zero-filled when instantiated, there's no need
to explicitly set numa_node to 0.

Reviewed-by: Igor Mammedov <address@hidden>
Signed-off-by: Eduardo Habkost <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 7c39163e389e6e6e16965606fb5a26abcdb6ad73
      
https://github.com/qemu/qemu/commit/7c39163e389e6e6e16965606fb5a26abcdb6ad73
  Author: Eduardo Habkost <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M exec.c
    M qom/cpu.c

  Log Message:
  -----------
  cpu: Initialize breakpoint/watchpoint lists in cpu_common_initfn()

One small step in the simplification of cpu_exec_init().

Reviewed-by: Igor Mammedov <address@hidden>
Signed-off-by: Eduardo Habkost <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 291135b5da228e58900c120e12354cc0a23608e3
      
https://github.com/qemu/qemu/commit/291135b5da228e58900c120e12354cc0a23608e3
  Author: Eduardo Habkost <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M exec.c

  Log Message:
  -----------
  cpu: Reorder cpu->as, cpu->thread_id, cpu->memory_dispatch init

Instead of initializing cpu->as, cpu->thread_id, and reloading memory
map while holding cpu_list_lock(), do it earlier, before locking the CPU
list and initializing cpu_index.

This allows the code handling cpu_index and global CPU list to be
isolated from the rest.

Cc: Paolo Bonzini <address@hidden>
Signed-off-by: Eduardo Habkost <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 5a790cc4b942e651fec7edc597c19b637fad5a76
      
https://github.com/qemu/qemu/commit/5a790cc4b942e651fec7edc597c19b637fad5a76
  Author: Bharata B Rao <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M exec.c
    M include/exec/exec-all.h
    M target-alpha/cpu.c
    M target-arm/cpu.c
    M target-cris/cpu.c
    M target-i386/cpu.c
    M target-lm32/cpu.c
    M target-m68k/cpu.c
    M target-microblaze/cpu.c
    M target-mips/cpu.c
    M target-moxie/cpu.c
    M target-openrisc/cpu.c
    M target-ppc/translate_init.c
    M target-s390x/cpu.c
    M target-sh4/cpu.c
    M target-sparc/cpu.c
    M target-tricore/cpu.c
    M target-unicore32/cpu.c
    M target-xtensa/cpu.c

  Log Message:
  -----------
  cpu: Add Error argument to cpu_exec_init()

Add an Error argument to cpu_exec_init() to let users collect the
error. This is in preparation to change the CPU enumeration logic
in cpu_exec_init(). With the new enumeration logic, cpu_exec_init()
can fail if cpu_index values corresponding to max_cpus have already
been handed out.

Since all current callers of cpu_exec_init() are from instance_init,
use error_abort Error argument to abort in case of an error.

Signed-off-by: Bharata B Rao <address@hidden>
Reviewed-by: Eduardo Habkost <address@hidden>
Reviewed-by: Igor Mammedov <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
Acked-by: Paolo Bonzini <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: b7bca7333411bd19c449147e8202ae6b0e4a8e09
      
https://github.com/qemu/qemu/commit/b7bca7333411bd19c449147e8202ae6b0e4a8e09
  Author: Bharata B Rao <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M exec.c
    M include/qom/cpu.h
    M qom/cpu.c

  Log Message:
  -----------
  cpu: Convert cpu_index into a bitmap

Currently CPUState::cpu_index is monotonically increasing and a newly
created CPU always gets the next higher index. The next available
index is calculated by counting the existing number of CPUs. This is
fine as long as we only add CPUs, but there are architectures which
are starting to support CPU removal, too. For an architecture like PowerPC
which derives its CPU identifier (device tree ID) from cpu_index, the
existing logic of generating cpu_index values causes problems.

With the currently proposed method of handling vCPU removal by parking
the vCPU fd in QEMU
(Ref: http://lists.gnu.org/archive/html/qemu-devel/2015-02/msg02604.html),
generating cpu_index this way will not work for PowerPC.

This patch changes the way cpu_index is handed out by maintaining
a bit map of the CPUs that tracks both addition and removal of CPUs.

The CPU bitmap allocation logic is part of cpu_exec_init(), which is
called by instance_init routines of various CPU targets. Newly added
cpu_exec_exit() API handles the deallocation part and this routine is
called from generic CPU instance_finalize.

Note: This new CPU enumeration is for !CONFIG_USER_ONLY only.
CONFIG_USER_ONLY continues to have the old enumeration logic.

Signed-off-by: Bharata B Rao <address@hidden>
Reviewed-by: Eduardo Habkost <address@hidden>
Reviewed-by: Igor Mammedov <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
Acked-by: Paolo Bonzini <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
[AF: max_cpus -> MAX_CPUMASK_BITS]
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 6dd0f8342ddfbd8db3e3de1a17686cedbc14e9f1
      
https://github.com/qemu/qemu/commit/6dd0f8342ddfbd8db3e3de1a17686cedbc14e9f1
  Author: Bharata B Rao <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M target-ppc/translate_init.c

  Log Message:
  -----------
  target-ppc: Move cpu_exec_init() call to realize function

Move cpu_exec_init() call from instance_init to realize. This allows
any failures from cpu_exec_init() to be handled appropriately.
Also add corresponding cpu_exec_exit() call from unrealize.

cpu_dt_id assignment from instance_init is no longer needed since
correct assignment for cpu_dt_id is already present in realizefn.

Signed-off-by: Bharata B Rao <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
Acked-by: Paolo Bonzini <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
[AF: Keep calling cpu_exec_init() for CONFIG_USER_ONLY]
Signed-off-by: Andreas Färber <address@hidden>


  Commit: bbd77c180d7ff1b04a7661bb878939b2e1d23798
      
https://github.com/qemu/qemu/commit/bbd77c180d7ff1b04a7661bb878939b2e1d23798
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M exec.c
    M gdbstub.c
    M include/exec/exec-all.h
    M linux-user/signal.c
    M target-alpha/sys_helper.c
    M target-i386/translate.c
    M translate-all.c

  Log Message:
  -----------
  translate-all: Change tb_flush() env argument to cpu

All of the core-code usages of this API have the cpu pointer handy so
pass it in. There are only 3 architecture specific usages (2 of which
are commented out) which can just use ENV_GET_CPU() locally to get the
cpu pointer. The reduces core code usage of the CPU env, which brings
us closer to common-obj'ing these core files.

Cc: Riku Voipio <address@hidden>
Cc: Paolo Bonzini <address@hidden>
Reviewed-by: Eduardo Habkost <address@hidden>
Acked-by: Eduardo Habkost <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: f7ec7f7b269813603b1d64bb9833f9e711f0115c
      
https://github.com/qemu/qemu/commit/f7ec7f7b269813603b1d64bb9833f9e711f0115c
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M bsd-user/main.c
    M gdbstub.c
    M include/exec/gdbstub.h
    M linux-user/main.c

  Log Message:
  -----------
  gdbstub: Change gdbserver_fork() to accept cpu instead of env

All callsites to this function navigate the cpu->env_ptr only for the
function to take the env ptr back to the original cpu ptr. Change the
function to just pass in the CPU pointer instead. Removes a core code
usage of ENV_GET_CPU() (in gdbstub.c).

Cc: Riku Voipio <address@hidden>
Reviewed-by: Andreas Färber <address@hidden>
Reviewed-by: Eduardo Habkost <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 3d57f7893c90d911d786cb2c622b0926fc808b57
      
https://github.com/qemu/qemu/commit/3d57f7893c90d911d786cb2c622b0926fc808b57
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  cpu: Change tcg_cpu_exec() arg to cpu, not env

The sole caller of this function navigates the cpu->env_ptr only for
this function to take it back the cpu pointer straight away. Pass in
cpu pointer instead and grab the env pointer locally in the function.
Removes a core code usage of ENV_GET_CPU().

Reviewed-by: Andreas Färber <address@hidden>
Reviewed-by: Eduardo Habkost <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 4bad9e392e788a218967167a38ce2ae7a32a6231
      
https://github.com/qemu/qemu/commit/4bad9e392e788a218967167a38ce2ae7a32a6231
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M exec.c
    M include/exec/exec-all.h
    M target-alpha/cpu.c
    M target-arm/cpu.c
    M target-cris/cpu.c
    M target-i386/cpu.c
    M target-lm32/cpu.c
    M target-m68k/cpu.c
    M target-microblaze/cpu.c
    M target-mips/cpu.c
    M target-moxie/cpu.c
    M target-openrisc/cpu.c
    M target-ppc/translate_init.c
    M target-s390x/cpu.c
    M target-sh4/cpu.c
    M target-sparc/cpu.c
    M target-tricore/cpu.c
    M target-unicore32/cpu.c
    M target-xtensa/cpu.c

  Log Message:
  -----------
  cpu: Change cpu_exec_init() arg to cpu, not env

The callers (most of them in target-foo/cpu.c) to this function all
have the cpu pointer handy. Just pass it to avoid an ENV_GET_CPU() from
core code (in exec.c).

Cc: Paolo Bonzini <address@hidden>
Cc: Richard Henderson <address@hidden>
Cc: Peter Maydell <address@hidden>
Cc: "Edgar E. Iglesias" <address@hidden>
Cc: Eduardo Habkost <address@hidden>
Cc: Michael Walle <address@hidden>
Cc: Leon Alrae <address@hidden>
Cc: Anthony Green <address@hidden>
Cc: Jia Liu <address@hidden>
Cc: Alexander Graf <address@hidden>
Cc: Blue Swirl <address@hidden>
Cc: Mark Cave-Ayland <address@hidden>
Cc: Bastian Koppelmann <address@hidden>
Cc: Guan Xuetao <address@hidden>
Cc: Max Filippov <address@hidden>
Reviewed-by: Andreas Färber <address@hidden>
Reviewed-by: Aurelien Jarno <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: ea3e9847408131abc840240bd61e892d28459452
      
https://github.com/qemu/qemu/commit/ea3e9847408131abc840240bd61e892d28459452
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M bsd-user/main.c
    M cpu-exec.c
    M cpus.c
    M linux-user/main.c
    M target-alpha/cpu.h
    M target-arm/cpu.h
    M target-cris/cpu.h
    M target-i386/cpu.h
    M target-lm32/cpu.h
    M target-m68k/cpu.h
    M target-microblaze/cpu.h
    M target-mips/cpu.h
    M target-moxie/cpu.h
    M target-openrisc/cpu.h
    M target-ppc/cpu.h
    M target-s390x/cpu.h
    M target-sh4/cpu.h
    M target-sparc/cpu.h
    M target-tricore/cpu.h
    M target-unicore32/cpu.h
    M target-xtensa/cpu.h

  Log Message:
  -----------
  cpu-exec: Purge all uses of ENV_GET_CPU()

Remove un-needed usages of ENV_GET_CPU() by converting the APIs to use
CPUState pointers and retrieving the env_ptr as minimally needed.

Scripted conversion for target-* change:

for I in target-*/cpu.h; do
    sed -i \
    's/\(^int cpu_[^_]*_exec(\)[^ ][^ ]* \*s);$/\1CPUState *cpu);/' \
    $I;
done

Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 2991b8904730d663f12ad42e35798ecc22fe151c
      
https://github.com/qemu/qemu/commit/2991b8904730d663f12ad42e35798ecc22fe151c
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M include/qom/cpu.h

  Log Message:
  -----------
  cpu: Add wrapper for the set_pc() hook

Add a wrapper around the CPUClass::set_pc() hook.

Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 4a2b24edb73f98fa58fd8965db5b312617de7a02
      
https://github.com/qemu/qemu/commit/4a2b24edb73f98fa58fd8965db5b312617de7a02
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M gdbstub.c

  Log Message:
  -----------
  gdbstub: Use cpu_set_pc() helper

Use the cpu_set_pc() helper which will take care of CPUClass retrieval
for us.

Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 4df81c6ed1eddcbbb920a977e76f599e05b39b77
      
https://github.com/qemu/qemu/commit/4df81c6ed1eddcbbb920a977e76f599e05b39b77
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M hw/arm/boot.c

  Log Message:
  -----------
  hw/arm/boot: Use cpu_set_pc()

Use cpu_set_pc() across the board for setting program counters. This
removes instances of system level code having to reach into the CPU
env.

Reviewed-by: Peter Maydell <address@hidden>
Reviewed-by: Andreas Färber <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
[AF: Avoid repeated casts with local variables]
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 691b9572e337f2d74b4b527c3dc76f542c6a5734
      
https://github.com/qemu/qemu/commit/691b9572e337f2d74b4b527c3dc76f542c6a5734
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M hw/microblaze/boot.c

  Log Message:
  -----------
  microblaze: boot: Use cpu_set_pc()

Use cpu_set_pc() for setting program counters when bootloading. This
removes an instance of system level code having to reach into the CPU
env.

Reviewed-by: Andreas Färber <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
[AF: Avoid duplicated CPU() casts through local variable]
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 2de295c544dda8680a82fe465c92d236d49c4d4f
      
https://github.com/qemu/qemu/commit/2de295c544dda8680a82fe465c92d236d49c4d4f
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M disas.c
    M include/disas/bfd.h

  Log Message:
  -----------
  disas: Add print_insn to disassemble info

Add the print_insn pointer to the disassemble info structure. This is
to prepare for QOMification support, where a QOM CPU hook function will
be responsible for setting the print_insn() function. Add this function
to the existing struct to consolidate such that only the one struct
needs to be passed to the new QOM API.

Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 37b9de463bff4fc786bb5f0778829e68d2c97bd0
      
https://github.com/qemu/qemu/commit/37b9de463bff4fc786bb5f0778829e68d2c97bd0
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M disas.c
    M include/qom/cpu.h

  Log Message:
  -----------
  disas: QOMify target specific setup

Add a QOM function hook for target-specific disassembly setup. This
allows removal of the #ifdeffery currently implementing target specific
disas setup from disas.c.

Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: fb200d5f003118f63205f34bbe553efcf3a66a81
      
https://github.com/qemu/qemu/commit/fb200d5f003118f63205f34bbe553efcf3a66a81
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M disas/arm-a64.cc

  Log Message:
  -----------
  disas: arm-a64: Make printfer and stream variable

In a normal disassembly flow, the printf() and stream being used varies
from disas job to job. In particular it varies if mixing monitor_disas
and target_disas.

Make both the printf() function and target stream settable in the
QEMUDisassmbler class.

Reviewed-by: Claudio Fontana <address@hidden>
Tested-by: Claudio Fontana <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 484406200e51eac023b346fdf987f86af1f6fe75
      
https://github.com/qemu/qemu/commit/484406200e51eac023b346fdf987f86af1f6fe75
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M disas.c
    M target-arm/cpu.c

  Log Message:
  -----------
  disas: arm: QOMify target specific disas setup

Move the target_disas() ARM specifics to the QOM disas_set_info hook
and delete the ARM specific code in disas.c.

This has the extra advantage of the more fully featured target_disas()
implementation now applying to monitor_disas().

Currently, target_disas() has multi-endian, thumb and AArch64
support whereas the existing monitor_disas() support only has vanilla
AA32 support.

E.G. Running an AA64 linux kernel the following -d in_asm disas happens
(taget_disas()):

IN:
0x0000000040000000:  580000c0      ldr x0, pc+24 (addr 0x40000018)
0x0000000040000004:  aa1f03e1      mov x1, xzr

However before this patch, disasing the same from the monitor:

(qemu) xp/i 0x40000000
0x0000000040000000:  580000c0      stmdapl  r0, {r6, r7}

After this patch:
(qemu) xp/i 0x40000000
0x0000000040000000:  580000c0      ldr x0, pc+24 (addr 0x40000018)

Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: efc6674be845e40d443b62e80eb9ea9a9adfee3c
      
https://github.com/qemu/qemu/commit/efc6674be845e40d443b62e80eb9ea9a9adfee3c
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M disas.c
    M target-microblaze/cpu.c

  Log Message:
  -----------
  disas: microblaze: QOMify target specific disas setup

Move the target_disas() MB specifics to the QOM disas_set_info hook
and delete the MB specific code in disas.c.

This also now adds support for monitor_disas() to Microblaze.

E.g.
(qemu) xp 0x90000000
0000000090000000: 0x94208001

And before this patch:
(qemu) xp/i 0x90000000
0x90000000: Asm output not supported on this arch

After:
(qemu) xp/i 0x90000000
0x90000000:  mfs    r1, rmsr

Reviewed-by: Edgar E. Iglesias <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 51d373cf5f5a39fa315342d12ec910fe59d87090
      
https://github.com/qemu/qemu/commit/51d373cf5f5a39fa315342d12ec910fe59d87090
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M disas/cris.c

  Log Message:
  -----------
  disas: cris: Fix 0 buffer length case

Cris has the complication of variable length instructions and has
a check in place to clamp memory reads in case the disas request
doesn't have enough bytes for the instruction being disas'd. This
breaks down in the case where disassembling for the monitor where
the buffer length is defaulted to 0.

The buffer length should never be zero for a regular target_disas,
so we can safely assume the 0 case is for the monitor in which case
consider the buffer length to be the max for cris instructions.

Reviewed-by: Edgar E. Iglesias <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 6b625fde5eb8d1c969969392f1c92b58beed2183
      
https://github.com/qemu/qemu/commit/6b625fde5eb8d1c969969392f1c92b58beed2183
  Author: Peter Crosthwaite <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M disas.c
    M target-cris/cpu.c

  Log Message:
  -----------
  disas: cris: QOMify target specific disas setup

Move the target_disas() cris specifics to the QOM disas_set_info() hook
and delete the cris specific code in disas.c.

This also now adds support for monitor_disas() to cris.

E.g.
(qemu) xp 0x40004000
0000000040004000: 0x1e6f25f0

And before this patch:
(qemu) xp/i 0x40004000
0x40004000: Asm output not supported on this arch

After:
(qemu) xp/i 0x40004000
0x40004000:  di
(qemu) xp/i 0x40004002
0x40004002:  move.d 0xb003c004,$r1

Note: second example is 6-byte misaligned instruction!

Reviewed-by: Edgar E. Iglesias <address@hidden>
Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>


  Commit: 032624868df264d395ee9900331f08bad1431022
      
https://github.com/qemu/qemu/commit/032624868df264d395ee9900331f08bad1431022
  Author: Peter Maydell <address@hidden>
  Date:   2015-07-09 (Thu, 09 Jul 2015)

  Changed paths:
    M bsd-user/main.c
    M cpu-exec.c
    M cpus.c
    M disas.c
    M disas/arm-a64.cc
    M disas/cris.c
    M exec.c
    M gdbstub.c
    M hw/arm/boot.c
    M hw/microblaze/boot.c
    M include/disas/bfd.h
    M include/exec/exec-all.h
    M include/exec/gdbstub.h
    M include/qom/cpu.h
    M linux-user/main.c
    M linux-user/signal.c
    M qom/cpu.c
    M target-alpha/cpu.c
    M target-alpha/cpu.h
    M target-alpha/sys_helper.c
    M target-arm/cpu.c
    M target-arm/cpu.h
    M target-cris/cpu.c
    M target-cris/cpu.h
    M target-i386/cpu.c
    M target-i386/cpu.h
    M target-i386/translate.c
    M target-lm32/cpu.c
    M target-lm32/cpu.h
    M target-m68k/cpu.c
    M target-m68k/cpu.h
    M target-microblaze/cpu.c
    M target-microblaze/cpu.h
    M target-mips/cpu.c
    M target-mips/cpu.h
    M target-moxie/cpu.c
    M target-moxie/cpu.h
    M target-openrisc/cpu.c
    M target-openrisc/cpu.h
    M target-ppc/cpu.h
    M target-ppc/translate_init.c
    M target-s390x/cpu.c
    M target-s390x/cpu.h
    M target-sh4/cpu.c
    M target-sh4/cpu.h
    M target-sparc/cpu.c
    M target-sparc/cpu.h
    M target-tricore/cpu.c
    M target-tricore/cpu.h
    M target-unicore32/cpu.c
    M target-unicore32/cpu.h
    M target-xtensa/cpu.c
    M target-xtensa/cpu.h
    M translate-all.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/afaerber/tags/qom-cpu-for-peter' into 
staging

QOM CPUState and X86CPU

* Further QOM'ification of CPU initialization
* Propagation of CPUState arguments and elimination of ENV_GET_CPU() usage
* cpu_set_pc() abstraction
* CPUClass::disas_set_info() hook

# gpg: Signature made Thu Jul  9 14:23:12 2015 BST using RSA key ID 3E7E013F
# gpg: Good signature from "Andreas Färber <address@hidden>"
# gpg:                 aka "Andreas Färber <address@hidden>"

* remotes/afaerber/tags/qom-cpu-for-peter: (22 commits)
  disas: cris: QOMify target specific disas setup
  disas: cris: Fix 0 buffer length case
  disas: microblaze: QOMify target specific disas setup
  disas: arm: QOMify target specific disas setup
  disas: arm-a64: Make printfer and stream variable
  disas: QOMify target specific setup
  disas: Add print_insn to disassemble info
  microblaze: boot: Use cpu_set_pc()
  hw/arm/boot: Use cpu_set_pc()
  gdbstub: Use cpu_set_pc() helper
  cpu: Add wrapper for the set_pc() hook
  cpu-exec: Purge all uses of ENV_GET_CPU()
  cpu: Change cpu_exec_init() arg to cpu, not env
  cpu: Change tcg_cpu_exec() arg to cpu, not env
  gdbstub: Change gdbserver_fork() to accept cpu instead of env
  translate-all: Change tb_flush() env argument to cpu
  target-ppc: Move cpu_exec_init() call to realize function
  cpu: Convert cpu_index into a bitmap
  cpu: Add Error argument to cpu_exec_init()
  cpu: Reorder cpu->as, cpu->thread_id, cpu->memory_dispatch init
  ...

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/5a2db89615c8...032624868df2

reply via email to

[Prev in Thread] Current Thread [Next in Thread]