projects
/
deliverable
/
binutils-gdb.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Skip gdb.base/branch-to-self.exp if gdb,nosignals exists
[deliverable/binutils-gdb.git]
/
gdb
/
msp430-tdep.c
diff --git
a/gdb/msp430-tdep.c
b/gdb/msp430-tdep.c
index 66ce9cbc678ef8e53eb6dc621a4b2866c2358dcb..4042ec3e32e7a9f8024fa44bf5f9b19822eca31b 100644
(file)
--- a/
gdb/msp430-tdep.c
+++ b/
gdb/msp430-tdep.c
@@
-1,7
+1,7
@@
/* Target-dependent code for the Texas Instruments MSP430 for GDB, the
GNU debugger.
/* Target-dependent code for the Texas Instruments MSP430 for GDB, the
GNU debugger.
- Copyright (C) 2012-201
4
Free Software Foundation, Inc.
+ Copyright (C) 2012-201
6
Free Software Foundation, Inc.
Contributed by Red Hat, Inc.
Contributed by Red Hat, Inc.
@@
-306,7
+306,8
@@
struct msp430_get_opcode_byte_handle
static int
msp430_get_opcode_byte (void *handle)
{
static int
msp430_get_opcode_byte (void *handle)
{
- struct msp430_get_opcode_byte_handle *opcdata = handle;
+ struct msp430_get_opcode_byte_handle *opcdata
+ = (struct msp430_get_opcode_byte_handle *) handle;
int status;
gdb_byte byte;
int status;
gdb_byte byte;
@@
-502,10
+503,11
@@
msp430_analyze_frame_prologue (struct frame_info *this_frame,
stop_addr = func_start;
msp430_analyze_prologue (get_frame_arch (this_frame), func_start,
stop_addr = func_start;
msp430_analyze_prologue (get_frame_arch (this_frame), func_start,
- stop_addr, *this_prologue_cache);
+ stop_addr,
+ (struct msp430_prologue *) *this_prologue_cache);
}
}
- return *this_prologue_cache;
+ return
(struct msp430_prologue *)
*this_prologue_cache;
}
/* Given a frame and a prologue cache, return this frame's base. */
}
/* Given a frame and a prologue cache, return this frame's base. */
@@
-581,13
+583,9
@@
static const struct frame_unwind msp430_unwind = {
static int
msp430_dwarf2_reg_to_regnum (struct gdbarch *gdbarch, int reg)
{
static int
msp430_dwarf2_reg_to_regnum (struct gdbarch *gdbarch, int reg)
{
- if (reg < MSP430_NUM_REGS)
+ if (reg
>= 0 && reg
< MSP430_NUM_REGS)
return reg + MSP430_NUM_REGS;
return reg + MSP430_NUM_REGS;
- else
- {
- warning (_("Unmapped DWARF Register #%d encountered."), reg);
- return -1;
- }
+ return -1;
}
/* Implement the "return_value" gdbarch method. */
}
/* Implement the "return_value" gdbarch method. */
@@
-770,10
+768,16
@@
msp430_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
int size = 2;
if (code_model == MSP_LARGE_CODE_MODEL
int size = 2;
if (code_model == MSP_LARGE_CODE_MODEL
- && TYPE_CODE (arg_type) == TYPE_CODE_PTR)
+ && (TYPE_CODE (arg_type) == TYPE_CODE_PTR
+ || TYPE_CODE (arg_type) == TYPE_CODE_REF
+ || TYPE_CODE (arg_type) == TYPE_CODE_STRUCT
+ || TYPE_CODE (arg_type) == TYPE_CODE_UNION))
{
{
- /* Pointer arguments using large memory model are passed
- using entire register. */
+ /* When using the large memory model, pointer,
+ reference, struct, and union arguments are
+ passed using the entire register. (As noted
+ earlier, aggregates are always passed by
+ reference.) */
if (offset != 0)
continue;
size = 4;
if (offset != 0)
continue;
size = 4;
@@
-834,8
+838,7
@@
msp430_in_return_stub (struct gdbarch *gdbarch, CORE_ADDR pc,
const char *name)
{
return (name != NULL
const char *name)
{
return (name != NULL
- && strncmp (msp430_epilog_name_prefix, name,
- strlen (msp430_epilog_name_prefix)) == 0);
+ && startswith (name, msp430_epilog_name_prefix));
}
/* Implement the "skip_trampoline_code" gdbarch method. */
}
/* Implement the "skip_trampoline_code" gdbarch method. */
@@
-850,7
+853,7
@@
msp430_skip_trampoline_code (struct frame_info *frame, CORE_ADDR pc)
if (!bms.minsym)
return pc;
if (!bms.minsym)
return pc;
- stub_name = SYMBOL_LINKAGE_NAME (bms.minsym);
+ stub_name =
M
SYMBOL_LINKAGE_NAME (bms.minsym);
if (gdbarch_tdep (gdbarch)->code_model == MSP_SMALL_CODE_MODEL
&& msp430_in_return_stub (gdbarch, pc, stub_name))
if (gdbarch_tdep (gdbarch)->code_model == MSP_SMALL_CODE_MODEL
&& msp430_in_return_stub (gdbarch, pc, stub_name))
@@
-952,7
+955,7
@@
msp430_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
/* None found, create a new architecture from the information
provided. */
/* None found, create a new architecture from the information
provided. */
- tdep =
(struct gdbarch_tdep *) xmalloc (sizeof (struct gdbarch_tdep)
);
+ tdep =
XNEW (struct gdbarch_tdep
);
gdbarch = gdbarch_alloc (&info, tdep);
tdep->elf_flags = elf_flags;
tdep->isa = isa;
gdbarch = gdbarch_alloc (&info, tdep);
tdep->elf_flags = elf_flags;
tdep->isa = isa;
This page took
0.024671 seconds
and
4
git commands to generate.