lkml.org 
[lkml]   [2014]   [Nov]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 3.16.y-ckt 028/170] ARC: Update order of registers in KGDB to match GDB 7.5
    Date
    3.16.7-ckt1 -stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Anton Kolesov <Anton.Kolesov@synopsys.com>

    commit ebc0c74e76cec9c4dd860eb0ca1c0b39dc63c482 upstream.

    Order of registers has changed in GDB moving from 6.8 to 7.5. This patch
    updates KGDB to work properly with GDB 7.5, though makes it incompatible
    with 6.8.

    Signed-off-by: Anton Kolesov <Anton.Kolesov@synopsys.com>
    Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
    Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
    ---
    arch/arc/include/asm/kgdb.h | 32 ++++++++++++++++++--------------
    1 file changed, 18 insertions(+), 14 deletions(-)

    diff --git a/arch/arc/include/asm/kgdb.h b/arch/arc/include/asm/kgdb.h
    index b65fca7ffeb5..fea931634136 100644
    --- a/arch/arc/include/asm/kgdb.h
    +++ b/arch/arc/include/asm/kgdb.h
    @@ -19,7 +19,7 @@
    * register API yet */
    #undef DBG_MAX_REG_NUM

    -#define GDB_MAX_REGS 39
    +#define GDB_MAX_REGS 87

    #define BREAK_INSTR_SIZE 2
    #define CACHE_FLUSH_IS_SAFE 1
    @@ -33,23 +33,27 @@ static inline void arch_kgdb_breakpoint(void)

    extern void kgdb_trap(struct pt_regs *regs);

    -enum arc700_linux_regnums {
    +/* This is the numbering of registers according to the GDB. See GDB's
    + * arc-tdep.h for details.
    + *
    + * Registers are ordered for GDB 7.5. It is incompatible with GDB 6.8. */
    +enum arc_linux_regnums {
    _R0 = 0,
    _R1, _R2, _R3, _R4, _R5, _R6, _R7, _R8, _R9, _R10, _R11, _R12, _R13,
    _R14, _R15, _R16, _R17, _R18, _R19, _R20, _R21, _R22, _R23, _R24,
    _R25, _R26,
    - _BTA = 27,
    - _LP_START = 28,
    - _LP_END = 29,
    - _LP_COUNT = 30,
    - _STATUS32 = 31,
    - _BLINK = 32,
    - _FP = 33,
    - __SP = 34,
    - _EFA = 35,
    - _RET = 36,
    - _ORIG_R8 = 37,
    - _STOP_PC = 38
    + _FP = 27,
    + __SP = 28,
    + _R30 = 30,
    + _BLINK = 31,
    + _LP_COUNT = 60,
    + _STOP_PC = 64,
    + _RET = 64,
    + _LP_START = 65,
    + _LP_END = 66,
    + _STATUS32 = 67,
    + _ECR = 76,
    + _BTA = 82,
    };

    #else
    --
    2.1.0


    \
     
     \ /
      Last update: 2014-11-11 13:41    [W:4.149 / U:0.184 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site