1. 25 9月, 2015 1 次提交
  2. 17 9月, 2015 1 次提交
    • J
      target-cris: update CPU state save/load to use VMStateDescription · 16a1b6e9
      Juan Quintela 提交于
      Update the CRIS CPU state save/load to use a VMStateDescription struct
      rather than cpu_save/cpu_load functions.
      
      Have to define TLBSet struct.
      Multidimensional arrays in C are a mess, just unroll them.
      Signed-off-by: NJuan Quintela <quintela@redhat.com>
      [PMM:
       * expand commit message a little since it's no longer one patch in
         a 35-patch series
       * add header/copyright comment to machine.c; credited copyright is
         Red Hat and author is Juan, since this commit gives the file all-new
         contents; license is LGPL-2-or-later, to match other target-cris code
       * remove hardcoded tab
       * add fields for locked_irq, interrupt_vector, fault_vector, trap_vector
       * drop minimum_version_id_old fields
       * bump version_id to 2 as we are not compatible with old state format
       * remove unnecessary hw/boards.h include
       * update to register via dc->vmsd]
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Acked-by: NEdgar E. Iglesias <edgar.iglesias@xilinx.com>
      16a1b6e9
  3. 11 9月, 2015 2 次提交
  4. 09 7月, 2015 1 次提交
  5. 11 3月, 2015 1 次提交
    • E
      cpu: Make cpu_init() return QOM CPUState object · 2994fd96
      Eduardo Habkost 提交于
      Instead of making cpu_init() return CPUArchState, return CPUState.
      
      Changes were made using the Coccinelle semantic patch below.
      
        @@
        typedef CPUState;
        identifier e;
        expression args;
        type CPUArchState;
        @@
        -   e =
        +   cpu =
                cpu_init(args);
        -   if (!e) {
        +   if (!cpu) {
                ...
            }
        -   cpu = ENV_GET_CPU(env);
        +   e = cpu->env_ptr;
      
        @@
        identifier new_env, new_cpu, env, cpu;
        type CPUArchState;
        expression args;
        @@
        -{
        -   CPUState *cpu = ENV_GET_CPU(env);
        -   CPUArchState *new_env = cpu_init(args);
        -   CPUState *new_cpu = ENV_GET_CPU(new_env);
        +{
        +   CPUState *cpu = ENV_GET_CPU(env);
        +   CPUState *new_cpu = cpu_init(args);
        +   CPUArchState *new_env = new_cpu->env_ptr;
            ...
        }
      
        @@
        identifier c, cpu_init_func, cpu_model;
        type StateType, CPUType;
        @@
        -static inline StateType* cpu_init(const char *cpu_model)
        -{
        -   CPUType *c = cpu_init_func(cpu_model);
        (
        -   if (c == NULL) {
        -       return NULL;
        -   }
        -   return &c->env;
        |
        -   if (c) {
        -       return &c->env;
        -   }
        -   return NULL;
        )
        -}
        +#define cpu_init(cpu_model) CPU(cpu_init_func(cpu_model))
      
        @@
        identifier cpu_init_func;
        identifier model;
        @@
        -#define cpu_init(model) (&cpu_init_func(model)->env)
        +#define cpu_init(model) CPU(cpu_init_func(model))
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Cc: Blue Swirl <blauwirbel@gmail.com>
      Cc: Guan Xuetao <gxt@mprc.pku.edu.cn>
      Cc: Riku Voipio <riku.voipio@iki.fi>
      Cc: Richard Henderson <rth@twiddle.net>
      Cc: Peter Maydell <peter.maydell@linaro.org>
      Cc: "Edgar E. Iglesias" <edgar.iglesias@gmail.com>
      Cc: Paolo Bonzini <pbonzini@redhat.com>
      Cc: Michael Walle <michael@walle.cc>
      Cc: Aurelien Jarno <aurelien@aurel32.net>
      Cc: Leon Alrae <leon.alrae@imgtec.com>
      Cc: Anthony Green <green@moxielogic.com>
      Cc: Jia Liu <proljc@gmail.com>
      Cc: Alexander Graf <agraf@suse.de>
      Cc: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
      Cc: Max Filippov <jcmvbkbc@gmail.com>
      [AF: Fixed up cpu_copy() manually]
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      2994fd96
  6. 20 1月, 2015 1 次提交
    • P
      exec.c: Drop TARGET_HAS_ICE define and checks · ec53b45b
      Peter Maydell 提交于
      The TARGET_HAS_ICE #define is intended to indicate whether a target-*
      guest CPU implementation supports the breakpoint handling. However,
      all our guest CPUs have that support (the only two which do not
      define TARGET_HAS_ICE are unicore32 and openrisc, and in both those
      cases the bp support is present and the lack of the #define is just
      a bug). So remove the #define entirely: all new guest CPU support
      should include breakpoint handling as part of the basic implementation.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Reviewed-by: NRichard Henderson <rth@twiddle.net>
      Message-id: 1420484960-32365-1-git-send-email-peter.maydell@linaro.org
      ec53b45b
  7. 14 3月, 2014 3 次提交
  8. 03 2月, 2014 1 次提交
  9. 23 7月, 2013 1 次提交
  10. 10 7月, 2013 1 次提交
  11. 12 3月, 2013 2 次提交
  12. 16 2月, 2013 1 次提交
  13. 21 1月, 2013 1 次提交
  14. 19 12月, 2012 1 次提交
  15. 31 10月, 2012 1 次提交
  16. 15 6月, 2012 1 次提交
  17. 14 6月, 2012 1 次提交
  18. 05 6月, 2012 1 次提交
  19. 24 4月, 2012 1 次提交
  20. 15 3月, 2012 2 次提交
  21. 29 2月, 2012 1 次提交
  22. 12 12月, 2011 1 次提交
  23. 07 8月, 2011 1 次提交
  24. 27 6月, 2011 1 次提交
  25. 09 5月, 2011 1 次提交
  26. 08 5月, 2011 1 次提交
  27. 30 10月, 2010 1 次提交
  28. 19 9月, 2010 1 次提交
  29. 03 7月, 2010 2 次提交
  30. 10 6月, 2010 1 次提交
  31. 13 3月, 2010 1 次提交
  32. 15 2月, 2010 2 次提交
  33. 24 8月, 2009 1 次提交
    • N
      cleanup cpu-exec.c, part 0/N: consolidate handle_cpu_signal · 0b5c1ce8
      Nathan Froyd 提交于
      handle_cpu_signal is very nearly copy-paste code for each target, with a
      few minor variations.  This patch sets up appropriate defaults for a
      generic handle_cpu_signal and provides overrides for particular targets
      that did things differently.  Fixing things like the persistent (XXX:
      use sigsetjmp) should now become somewhat easier.
      
      Previous comments on this patch suggest that the "activate soft MMU for
      this block" comments refer to defunct functionality.  I have removed
      such blocks for the appropriate targets in this patch.
      Signed-off-by: NNathan Froyd <froydnj@codesourcery.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      0b5c1ce8