diff options
Diffstat (limited to 'gdb/config')
32 files changed, 52 insertions, 156 deletions
diff --git a/gdb/config/a29k/tm-a29k.h b/gdb/config/a29k/tm-a29k.h index 0936e83..cef9345 100644 --- a/gdb/config/a29k/tm-a29k.h +++ b/gdb/config/a29k/tm-a29k.h @@ -43,9 +43,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(pc) \ - { pc = skip_prologue (pc); } -CORE_ADDR skip_prologue (); +#define SKIP_PROLOGUE(pc) (a29k_skip_prologue (pc)) +CORE_ADDR a29k_skip_prologue (); /* Immediately after a function call, return the saved pc. Can't go through the frames for this because on some machines diff --git a/gdb/config/alpha/tm-alpha.h b/gdb/config/alpha/tm-alpha.h index c079809..51c8dce 100644 --- a/gdb/config/alpha/tm-alpha.h +++ b/gdb/config/alpha/tm-alpha.h @@ -59,7 +59,7 @@ struct symbol; /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(pc) pc = alpha_skip_prologue(pc, 0) +#define SKIP_PROLOGUE(pc) (alpha_skip_prologue(pc, 0)) extern CORE_ADDR alpha_skip_prologue PARAMS ((CORE_ADDR addr, int lenient)); /* Immediately after a function call, return the saved pc. diff --git a/gdb/config/arc/tm-arc.h b/gdb/config/arc/tm-arc.h index e964bef..e170d2d 100644 --- a/gdb/config/arc/tm-arc.h +++ b/gdb/config/arc/tm-arc.h @@ -37,11 +37,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ knows that the function has a frame. Its result is equal to its input PC if the function is frameless, unequal otherwise. */ -#define SKIP_PROLOGUE(pc) \ - { pc = skip_prologue (pc, 0); } -#define SKIP_PROLOGUE_FRAMELESS_P(pc) \ - { pc = skip_prologue (pc, 1); } -extern CORE_ADDR skip_prologue PARAMS ((CORE_ADDR, int)); +#define SKIP_PROLOGUE(pc) (arc_skip_prologue (pc, 0)) +#define SKIP_PROLOGUE_FRAMELESS_P(pc) (arc_skip_prologue (pc, 1)) +extern CORE_ADDR arc_skip_prologue PARAMS ((CORE_ADDR, int)); /* Sequence of bytes for breakpoint instruction. ??? The current value is "sr -1,[-1]" and is for the simulator only. diff --git a/gdb/config/arm/tm-arm.h b/gdb/config/arm/tm-arm.h index 26bdf37..54e0954 100644 --- a/gdb/config/arm/tm-arm.h +++ b/gdb/config/arm/tm-arm.h @@ -56,7 +56,7 @@ CORE_ADDR arm_addr_bits_remove PARAMS ((CORE_ADDR)); extern CORE_ADDR arm_skip_prologue PARAMS ((CORE_ADDR pc)); -#define SKIP_PROLOGUE(pc) { pc = arm_skip_prologue (pc); } +#define SKIP_PROLOGUE(pc) (arm_skip_prologue (pc)) /* Immediately after a function call, return the saved pc. Can't always go through the frames for this because on some machines diff --git a/gdb/config/convex/tm-convex.h b/gdb/config/convex/tm-convex.h index 5eb9f6e..6558859 100644 --- a/gdb/config/convex/tm-convex.h +++ b/gdb/config/convex/tm-convex.h @@ -52,26 +52,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ [ld.- -(ap),-] pcc/gcc register arg loads */ -#define SKIP_PROLOGUE(pc) \ -{ int op, ix; \ - op = read_memory_integer (pc, 2); \ - if ((op & 0xffc7) == 0x5ac0) pc += 2; \ - else if (op == 0x1580) pc += 4; \ - else if (op == 0x15c0) pc += 6; \ - if ((read_memory_integer (pc, 2) & 0xfff8) == 0x7c40 \ - && (read_memory_integer (pc + 2, 2) & 0xfff8) == 0x1240 \ - && (read_memory_integer (pc + 8, 2) & 0xfff8) == 0x7c48) \ - pc += 10; \ - if (read_memory_integer (pc, 2) == 0x1240) pc += 6; \ - for (;;) { \ - op = read_memory_integer (pc, 2); \ - ix = (op >> 3) & 7; \ - if (ix != 6) break; \ - if ((op & 0xfcc0) == 0x3000) pc += 4; \ - else if ((op & 0xfcc0) == 0x3040) pc += 6; \ - else if ((op & 0xfcc0) == 0x2800) pc += 4; \ - else if ((op & 0xfcc0) == 0x2840) pc += 6; \ - else break;}} +extern CORE_ADDR convex_skip_prologue PARAMS ((CORE_ADDR pc)); +#define SKIP_PROLOGUE(pc) (convex_skip_prologue (pc)) /* Immediately after a function call, return the saved pc. (ignore frame and return *$sp so we can handle both calls and callq) */ diff --git a/gdb/config/d10v/tm-d10v.h b/gdb/config/d10v/tm-d10v.h index edfa62f..d0c1a50 100644 --- a/gdb/config/d10v/tm-d10v.h +++ b/gdb/config/d10v/tm-d10v.h @@ -48,8 +48,7 @@ struct value; to reach some "real" code. */ extern CORE_ADDR d10v_skip_prologue (); -#define SKIP_PROLOGUE(ip) \ - {(ip) = d10v_skip_prologue(ip);} +#define SKIP_PROLOGUE(ip) (d10v_skip_prologue (ip)) /* Stack grows downward. */ diff --git a/gdb/config/d30v/tm-d30v.h b/gdb/config/d30v/tm-d30v.h index 7a69ca3..1ce9ccc 100644 --- a/gdb/config/d30v/tm-d30v.h +++ b/gdb/config/d30v/tm-d30v.h @@ -46,9 +46,8 @@ struct value; /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -extern CORE_ADDR d30v_skip_prologue (); -#define SKIP_PROLOGUE(ip) \ - {(ip) = d30v_skip_prologue(ip);} +extern CORE_ADDR d30v_skip_prologue PARAMS ((CORE_ADDR)); +#define SKIP_PROLOGUE(ip) (d30v_skip_prologue (ip)) /* Stack grows downward. */ diff --git a/gdb/config/fr30/tm-fr30.h b/gdb/config/fr30/tm-fr30.h index 5478b93..d03f845 100644 --- a/gdb/config/fr30/tm-fr30.h +++ b/gdb/config/fr30/tm-fr30.h @@ -159,7 +159,7 @@ extern CORE_ADDR fr30_frame_saved_pc PARAMS ((struct frame_info *)); #define SAVED_PC_AFTER_CALL(fi) read_register (RP_REGNUM) extern CORE_ADDR fr30_skip_prologue PARAMS ((CORE_ADDR pc)); -#define SKIP_PROLOGUE(pc) pc = fr30_skip_prologue (pc) +#define SKIP_PROLOGUE(pc) (fr30_skip_prologue (pc)) /* Write into appropriate registers a function return value of type TYPE, given in virtual format. VALBUF is in the target byte order; @@ -199,7 +199,7 @@ extern void fr30_store_return_value PARAMS ((struct type *type, char *valbuf)); func_start = (get_pc_function_start ((FI)->pc) + \ FUNCTION_START_OFFSET); \ after_prologue = func_start; \ - SKIP_PROLOGUE (after_prologue); \ + after_prologue = SKIP_PROLOGUE (after_prologue); \ (FRAMELESS) = (after_prologue == func_start); \ } diff --git a/gdb/config/h8300/tm-h8300.h b/gdb/config/h8300/tm-h8300.h index 929d6ff..f8f1f64 100644 --- a/gdb/config/h8300/tm-h8300.h +++ b/gdb/config/h8300/tm-h8300.h @@ -69,7 +69,7 @@ extern void h8300_init_extra_frame_info (); /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(ip) {(ip) = h8300_skip_prologue(ip);} +#define SKIP_PROLOGUE(ip) (h8300_skip_prologue(ip)) extern CORE_ADDR h8300_skip_prologue (); /* Immediately after a function call, return the saved pc. diff --git a/gdb/config/h8500/tm-h8500.h b/gdb/config/h8500/tm-h8500.h index 8f7d966..2dded7c 100644 --- a/gdb/config/h8500/tm-h8500.h +++ b/gdb/config/h8500/tm-h8500.h @@ -43,7 +43,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(ip) { (ip) = h8500_skip_prologue(ip); } +#define SKIP_PROLOGUE(ip) (h8500_skip_prologue (ip)) extern CORE_ADDR h8500_skip_prologue PARAMS ((CORE_ADDR)); /* Immediately after a function call, return the saved pc. diff --git a/gdb/config/i386/tm-i386.h b/gdb/config/i386/tm-i386.h index aeff2e1..06d9f85 100644 --- a/gdb/config/i386/tm-i386.h +++ b/gdb/config/i386/tm-i386.h @@ -47,7 +47,7 @@ struct type; /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(frompc) {(frompc) = i386_skip_prologue((frompc));} +#define SKIP_PROLOGUE(frompc) (i386_skip_prologue (frompc)) extern int i386_skip_prologue PARAMS ((int)); diff --git a/gdb/config/i960/tm-i960.h b/gdb/config/i960/tm-i960.h index a6d93b0..dcd24e5 100644 --- a/gdb/config/i960/tm-i960.h +++ b/gdb/config/i960/tm-i960.h @@ -49,8 +49,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Advance ip across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(ip) { ip = skip_prologue (ip); } -extern CORE_ADDR skip_prologue (); +#define SKIP_PROLOGUE(ip) (i960_skip_prologue (ip)) +extern CORE_ADDR i960_skip_prologue (); /* Immediately after a function call, return the saved ip. Can't always go through the frames for this because on some machines diff --git a/gdb/config/m32r/tm-m32r.h b/gdb/config/m32r/tm-m32r.h index e03558a..3a6f231 100644 --- a/gdb/config/m32r/tm-m32r.h +++ b/gdb/config/m32r/tm-m32r.h @@ -155,7 +155,7 @@ extern CORE_ADDR m32r_frame_saved_pc PARAMS((struct frame_info *)); extern CORE_ADDR m32r_skip_prologue PARAMS ((CORE_ADDR pc)); /* mvs_check SKIP_PROLOGUE */ -#define SKIP_PROLOGUE(pc) pc = m32r_skip_prologue (pc) +#define SKIP_PROLOGUE(pc) (m32r_skip_prologue (pc)) /* mvs_no_check FRAME_ARGS_SKIP */ #define FRAME_ARGS_SKIP 0 diff --git a/gdb/config/m68k/tm-altos.h b/gdb/config/m68k/tm-altos.h index 2d77fea..23c5653 100644 --- a/gdb/config/m68k/tm-altos.h +++ b/gdb/config/m68k/tm-altos.h @@ -38,20 +38,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* The only reason this is here is the tm-altos.h reference below. It was moved back here from tm-m68k.h. FIXME? */ -#define SKIP_PROLOGUE(pc) \ -{ register int op = read_memory_integer (pc, 2); \ - if (op == 0047126) \ - pc += 4; /* Skip link #word */ \ - else if (op == 0044016) \ - pc += 6; /* Skip link #long */ \ - /* Not sure why branches are here. */ \ - /* From tm-isi.h, tm-altos.h */ \ - else if (op == 0060000) \ - pc += 4; /* Skip bra #word */ \ - else if (op == 00600377) \ - pc += 6; /* skip bra #long */ \ - else if ((op & 0177400) == 0060000) \ - pc += 2; /* skip bra #char */ \ -} +extern CORE_ADDR altos_skip_prologue PARAMS ((CORE_ADDR)); +#define SKIP_PROLOGUE(pc) (altos_skip_prologue (pc)) #include "m68k/tm-m68k.h" diff --git a/gdb/config/m68k/tm-isi.h b/gdb/config/m68k/tm-isi.h index f994524..ae8ccbf 100644 --- a/gdb/config/m68k/tm-isi.h +++ b/gdb/config/m68k/tm-isi.h @@ -131,20 +131,7 @@ retry: \ /* The only reason this is here is the tm-isi.h reference below. It was moved back here from tm-m68k.h. FIXME? */ -#define SKIP_PROLOGUE(pc) \ -{ register int op = read_memory_integer (pc, 2); \ - if (op == 0047126) \ - pc += 4; /* Skip link #word */ \ - else if (op == 0044016) \ - pc += 6; /* Skip link #long */ \ - /* Not sure why branches are here. */ \ - /* From tm-isi.h, tm-altos.h */ \ - else if (op == 0060000) \ - pc += 4; /* Skip bra #word */ \ - else if (op == 00600377) \ - pc += 6; /* skip bra #long */ \ - else if ((op & 0177400) == 0060000) \ - pc += 2; /* skip bra #char */ \ -} +extern CORE_ADDR isi_skip_prologue PARAMS ((CORE_ADDR)); +#define SKIP_PROLOGUE(pc) (isi_skip_prologue (pc)) #include "m68k/tm-m68k.h" diff --git a/gdb/config/m68k/tm-m68k.h b/gdb/config/m68k/tm-m68k.h index 098500c..9cbb41f 100644 --- a/gdb/config/m68k/tm-m68k.h +++ b/gdb/config/m68k/tm-m68k.h @@ -33,9 +33,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ to reach some "real" code. */ #if !defined(SKIP_PROLOGUE) -#define SKIP_PROLOGUE(ip) {(ip) = m68k_skip_prologue(ip);} -extern CORE_ADDR m68k_skip_prologue PARAMS ((CORE_ADDR ip)); +#define SKIP_PROLOGUE(ip) (m68k_skip_prologue (ip)) #endif +extern CORE_ADDR m68k_skip_prologue PARAMS ((CORE_ADDR ip)); /* Immediately after a function call, return the saved pc. Can't always go through the frames for this because on some machines diff --git a/gdb/config/m88k/tm-m88k.h b/gdb/config/m88k/tm-m88k.h index 390cdef..be9ffba 100644 --- a/gdb/config/m88k/tm-m88k.h +++ b/gdb/config/m88k/tm-m88k.h @@ -52,9 +52,8 @@ extern void init_extra_frame_info (); /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(frompc) \ - { (frompc) = skip_prologue (frompc); } -extern CORE_ADDR skip_prologue (); +extern CORE_ADDR m88k_skip_prologue PARAMS ((CORE_ADDR)); +#define SKIP_PROLOGUE(frompc) (m88k_skip_prologue (frompc)) /* The m88k kernel aligns all instructions on 4-byte boundaries. The kernel also uses the least significant two bits for its own hocus diff --git a/gdb/config/mips/tm-mips.h b/gdb/config/mips/tm-mips.h index 6a7091a..601d875 100644 --- a/gdb/config/mips/tm-mips.h +++ b/gdb/config/mips/tm-mips.h @@ -83,7 +83,7 @@ CORE_ADDR mips_addr_bits_remove PARAMS ((CORE_ADDR addr)); /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(pc) pc = mips_skip_prologue (pc, 0) +#define SKIP_PROLOGUE(pc) (mips_skip_prologue (pc, 0)) extern CORE_ADDR mips_skip_prologue PARAMS ((CORE_ADDR addr, int lenient)); /* Return non-zero if PC points to an instruction which will cause a step diff --git a/gdb/config/mn10200/tm-mn10200.h b/gdb/config/mn10200/tm-mn10200.h index e15cdae..99b8f61 100644 --- a/gdb/config/mn10200/tm-mn10200.h +++ b/gdb/config/mn10200/tm-mn10200.h @@ -166,7 +166,7 @@ extern CORE_ADDR mn10200_frame_saved_pc PARAMS ((struct frame_info *)); (SP) = mn10200_store_struct_return (STRUCT_ADDR, SP) extern CORE_ADDR mn10200_skip_prologue PARAMS ((CORE_ADDR)); -#define SKIP_PROLOGUE(pc) pc = mn10200_skip_prologue (pc) +#define SKIP_PROLOGUE(pc) (mn10200_skip_prologue (pc)) #define FRAME_ARGS_SKIP 0 diff --git a/gdb/config/mn10300/tm-mn10300.h b/gdb/config/mn10300/tm-mn10300.h index f073642..42b7341 100644 --- a/gdb/config/mn10300/tm-mn10300.h +++ b/gdb/config/mn10300/tm-mn10300.h @@ -113,7 +113,7 @@ extern CORE_ADDR mn10300_frame_saved_pc PARAMS ((struct frame_info *)); (SP) = mn10300_store_struct_return (STRUCT_ADDR, SP) extern CORE_ADDR mn10300_skip_prologue PARAMS ((CORE_ADDR)); -#define SKIP_PROLOGUE(pc) pc = mn10300_skip_prologue (pc) +#define SKIP_PROLOGUE(pc) (mn10300_skip_prologue (pc)) #define FRAME_ARGS_SKIP 0 diff --git a/gdb/config/ns32k/tm-merlin.h b/gdb/config/ns32k/tm-merlin.h index f90c5e7..d586430 100644 --- a/gdb/config/ns32k/tm-merlin.h +++ b/gdb/config/ns32k/tm-merlin.h @@ -27,14 +27,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(pc) \ -{ register int op = read_memory_integer (pc, 1); \ - if (op == 0x82) \ - { op = read_memory_integer (pc+2,1); \ - if ((op & 0x80) == 0) pc += 3; \ - else if ((op & 0xc0) == 0x80) pc += 4; \ - else pc += 6; \ - }} +extern CORE_ADDR merlin_skip_prologue PARAMS ((CORE_ADDR)); +#define SKIP_PROLOGUE(pc) (merlin_skip_prologue (pc)) /* Immediately after a function call, return the saved pc. Can't always go through the frames for this because on some machines diff --git a/gdb/config/ns32k/tm-umax.h b/gdb/config/ns32k/tm-umax.h index 1fdfb2f..925a3e9 100644 --- a/gdb/config/ns32k/tm-umax.h +++ b/gdb/config/ns32k/tm-umax.h @@ -33,14 +33,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(pc) \ -{ register unsigned char op = read_memory_integer (pc, 1); \ - if (op == 0x82) { op = read_memory_integer (pc+2,1); \ - if ((op & 0x80) == 0) pc += 3; \ - else if ((op & 0xc0) == 0x80) pc += 4; \ - else pc += 6; \ - } \ -} +extern CORE_ADDR umax_skip_prologue PARAMS ((CORE_ADDR)); +#define SKIP_PROLOGUE(pc) (umax_skip_prologue (pc)) /* Immediately after a function call, return the saved pc. Can't always go through the frames for this because on some machines diff --git a/gdb/config/pa/tm-hppa.h b/gdb/config/pa/tm-hppa.h index e5b5acd9..2fcae42 100644 --- a/gdb/config/pa/tm-hppa.h +++ b/gdb/config/pa/tm-hppa.h @@ -72,8 +72,8 @@ struct inferior_status; /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(pc) pc = skip_prologue (pc) -extern CORE_ADDR skip_prologue PARAMS ((CORE_ADDR)); +extern CORE_ADDR hppa_skip_prologue PARAMS ((CORE_ADDR)); +#define SKIP_PROLOGUE(pc) (hppa_skip_prologue (pc)) /* If PC is in some function-call trampoline code, return the PC where the function itself actually starts. If not, return NULL. */ diff --git a/gdb/config/pyr/tm-pyr.h b/gdb/config/pyr/tm-pyr.h index b97ebe7..fbfe87c 100644 --- a/gdb/config/pyr/tm-pyr.h +++ b/gdb/config/pyr/tm-pyr.h @@ -56,7 +56,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ If so, what do they look like? This is becoming harder, since tege@sics.SE wants to change gcc to not output a prologue when no frame is needed. */ -#define SKIP_PROLOGUE(pc) do {} while (0) +#define SKIP_PROLOGUE(pc) (pc) /* Immediately after a function call, return the saved pc. diff --git a/gdb/config/rs6000/tm-rs6000.h b/gdb/config/rs6000/tm-rs6000.h index 52beec1..159ebc6 100644 --- a/gdb/config/rs6000/tm-rs6000.h +++ b/gdb/config/rs6000/tm-rs6000.h @@ -97,11 +97,8 @@ struct rs6000_framedata { /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(pc) \ -do { \ - struct rs6000_framedata _frame; \ - pc = skip_prologue (pc, &_frame); \ -} while (0) +extern CORE_ADDR rs6000_skip_prologue PARAMS ((CORE_ADDR)); +#define SKIP_PROLOGUE(pc) (rs6000_skip_prologue (pc)) extern CORE_ADDR skip_prologue PARAMS((CORE_ADDR, struct rs6000_framedata *)); diff --git a/gdb/config/sh/tm-sh.h b/gdb/config/sh/tm-sh.h index 291677b..2d5f8bd 100644 --- a/gdb/config/sh/tm-sh.h +++ b/gdb/config/sh/tm-sh.h @@ -43,9 +43,8 @@ struct type; /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -extern CORE_ADDR sh_skip_prologue (); -#define SKIP_PROLOGUE(ip) \ - {(ip) = sh_skip_prologue(ip);} +extern CORE_ADDR sh_skip_prologue PARAMS ((CORE_ADDR)); +#define SKIP_PROLOGUE(ip) (sh_skip_prologue (ip)) /* Immediately after a function call, return the saved pc. diff --git a/gdb/config/sparc/tm-sparc.h b/gdb/config/sparc/tm-sparc.h index 6d56508..b2bc3c0 100644 --- a/gdb/config/sparc/tm-sparc.h +++ b/gdb/config/sparc/tm-sparc.h @@ -88,11 +88,9 @@ struct value; knows that the function has a frame. Its result is equal to its input PC if the function is frameless, unequal otherwise. */ -#define SKIP_PROLOGUE(pc) \ - { pc = skip_prologue (pc, 0); } -#define SKIP_PROLOGUE_FRAMELESS_P(pc) \ - { pc = skip_prologue (pc, 1); } -extern CORE_ADDR skip_prologue PARAMS ((CORE_ADDR, int)); +#define SKIP_PROLOGUE(pc) (sparc_skip_prologue (pc, 0)) +#define SKIP_PROLOGUE_FRAMELESS_P(pc) (sparc_skip_prologue (pc, 1)) +extern CORE_ADDR sparc_skip_prologue PARAMS ((CORE_ADDR, int)); /* Immediately after a function call, return the saved pc. Can't go through the frames for this because on some machines diff --git a/gdb/config/tahoe/tm-tahoe.h b/gdb/config/tahoe/tm-tahoe.h index a9df374..8c8321f 100644 --- a/gdb/config/tahoe/tm-tahoe.h +++ b/gdb/config/tahoe/tm-tahoe.h @@ -33,26 +33,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(pc) \ -{ register int op = (unsigned char) read_memory_integer (pc, 1); \ - if (op == 0x11) pc += 2; /* skip brb */ \ - if (op == 0x13) pc += 3; /* skip brw */ \ - if (op == 0x2c && \ - ((unsigned char) read_memory_integer (pc+2, 1)) == 0x5e) \ - pc += 3; /* skip subl2 */ \ - if (op == 0xe9 && \ - ((unsigned char) read_memory_integer (pc+1, 1)) == 0xae && \ - ((unsigned char) read_memory_integer(pc+3, 1)) == 0x5e) \ - pc += 4; /* skip movab */ \ - if (op == 0xe9 && \ - ((unsigned char) read_memory_integer (pc+1, 1)) == 0xce && \ - ((unsigned char) read_memory_integer(pc+4, 1)) == 0x5e) \ - pc += 5; /* skip movab */ \ - if (op == 0xe9 && \ - ((unsigned char) read_memory_integer (pc+1, 1)) == 0xee && \ - ((unsigned char) read_memory_integer(pc+6, 1)) == 0x5e) \ - pc += 7; /* skip movab */ \ -} +extern CORE_ADDR tahoe_skip_prologue PARAMS ((CORE_ADDR)); +#define SKIP_PROLOGUE(pc) (tahoe_skip_prologue (pc)) /* Immediately after a function call, return the saved pc. Can't always go through the frames for this because on some machines diff --git a/gdb/config/tic80/tm-tic80.h b/gdb/config/tic80/tm-tic80.h index e17ca95..8b33381 100644 --- a/gdb/config/tic80/tm-tic80.h +++ b/gdb/config/tic80/tm-tic80.h @@ -171,7 +171,7 @@ extern void tic80_frame_find_saved_regs PARAMS ((struct frame_info *, struct fra /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(pc) { (pc) = tic80_skip_prologue (pc); } +#define SKIP_PROLOGUE(pc) (tic80_skip_prologue (pc)) extern CORE_ADDR tic80_skip_prologue PARAMS ((CORE_ADDR pc)); /* Immediately after a function call, return the saved pc. diff --git a/gdb/config/v850/tm-v850.h b/gdb/config/v850/tm-v850.h index 287ff86..5a11451 100644 --- a/gdb/config/v850/tm-v850.h +++ b/gdb/config/v850/tm-v850.h @@ -126,7 +126,7 @@ extern CORE_ADDR v850_frame_saved_pc PARAMS ((struct frame_info *)); write_register_bytes(REGISTER_BYTE (V0_REGNUM), VALBUF, TYPE_LENGTH (TYPE)); extern CORE_ADDR v850_skip_prologue PARAMS ((CORE_ADDR pc)); -#define SKIP_PROLOGUE(pc) pc = v850_skip_prologue (pc) +#define SKIP_PROLOGUE(pc) (v850_skip_prologue (pc)) #define FRAME_ARGS_SKIP 0 diff --git a/gdb/config/vax/tm-vax.h b/gdb/config/vax/tm-vax.h index ad10fb7..62729b3 100644 --- a/gdb/config/vax/tm-vax.h +++ b/gdb/config/vax/tm-vax.h @@ -28,26 +28,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(pc) \ -{ register int op = (unsigned char) read_memory_integer (pc, 1); \ - if (op == 0x11) pc += 2; /* skip brb */ \ - if (op == 0x31) pc += 3; /* skip brw */ \ - if (op == 0xC2 && \ - ((unsigned char) read_memory_integer (pc+2, 1)) == 0x5E) \ - pc += 3; /* skip subl2 */ \ - if (op == 0x9E && \ - ((unsigned char) read_memory_integer (pc+1, 1)) == 0xAE && \ - ((unsigned char) read_memory_integer(pc+3, 1)) == 0x5E) \ - pc += 4; /* skip movab */ \ - if (op == 0x9E && \ - ((unsigned char) read_memory_integer (pc+1, 1)) == 0xCE && \ - ((unsigned char) read_memory_integer(pc+4, 1)) == 0x5E) \ - pc += 5; /* skip movab */ \ - if (op == 0x9E && \ - ((unsigned char) read_memory_integer (pc+1, 1)) == 0xEE && \ - ((unsigned char) read_memory_integer(pc+6, 1)) == 0x5E) \ - pc += 7; /* skip movab */ \ -} +extern CORE_ADDR vax_skip_prologue PARAMS ((CORE_ADDR)); +#define SKIP_PROLOGUE(pc) (vax_skip_prologue (pc)) /* Immediately after a function call, return the saved pc. Can't always go through the frames for this because on some machines diff --git a/gdb/config/z8k/tm-z8k.h b/gdb/config/z8k/tm-z8k.h index babde90..1a34b0f 100644 --- a/gdb/config/z8k/tm-z8k.h +++ b/gdb/config/z8k/tm-z8k.h @@ -40,7 +40,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Advance PC across any function entry prologue instructions to reach some "real" code. */ -#define SKIP_PROLOGUE(ip) {(ip) = z8k_skip_prologue(ip);} +#define SKIP_PROLOGUE(ip) (z8k_skip_prologue (ip)) extern CORE_ADDR mz8k_skip_prologue PARAMS ((CORE_ADDR ip)); |