2002-08-19 Michael Snyder <msnyder@redhat.com>

* config/mips/tm-mips.h (ELF_MAKE_MSYMBOL_SPECIAL): Delete.
	(MSYMBOL_IS_SPECIAL, MSYMBOL_SIZE): Change into functions.
	(FIX_CALL_DUMMY, PUSH_RETURN_ADDRESS, PUSH_DUMMY_FRAME,
	POP_FRAME, INIT_EXTRA_FRAME_INFO): Delete.
	(CALL_DUMMY_START_OFFSET, CALL_DUMMY_BREAKPOINT_OFFSET,
	CALL_DUMMY_ADDRESS): Delete.
	* mips-tdep.c (mips_elf_make_msymbol_special, mips_msymbol_size,
	mips_msymbol_is_special, mips_fix_call_dummy): New functions.
	(mips_gdbarch_init): Set elf_make_msymbol_special, pop_frame,
	push_dummy_frame, fix_call_dummy, init_extra_frame_info,
	push_return_address.
	(mips_register_raw_size, mips_eabi_use_struct_convention,
	mips_n32n64_use_struct_convention, mips_o32_use_struct_convention,
	mips_o32_reg_struct_has_addr, mips_frame_saved_pc, mips_frame_chain,
	mips_init_extra_frame_info, mips_eabi_push_arguments,
	mips_n32n64_push_arguments, mips_push_return_address,
	mips_push_dummy_frame,	mips_pop_frame,	mips_skip_prologue,
	mips_breakpoint_from_pc, mips_call_dummy_address): Make	static.
This commit is contained in:
Michael Snyder
2002-08-20 21:58:44 +00:00
parent 697f7479bb
commit f7ab6ec685
3 changed files with 89 additions and 64 deletions

View File

@@ -171,39 +171,6 @@ extern void mips_register_convert_from_type (int regnum,
mips_register_convert_from_type ((n), (type), (buffer))
/* Things needed for making the inferior call functions. */
/* Stack must be aligned on 32-bit boundaries when synthesizing
function calls. We don't need STACK_ALIGN, PUSH_ARGUMENTS will
handle it. */
extern CORE_ADDR mips_push_return_address (CORE_ADDR pc, CORE_ADDR sp);
#define PUSH_RETURN_ADDRESS(PC, SP) (mips_push_return_address ((PC), (SP)))
/* Push an empty stack frame, to record the current PC, etc. */
#define PUSH_DUMMY_FRAME mips_push_dummy_frame()
extern void mips_push_dummy_frame (void);
/* Discard from the stack the innermost frame, restoring all registers. */
#define POP_FRAME mips_pop_frame()
extern void mips_pop_frame (void);
#define CALL_DUMMY_START_OFFSET (0)
#define CALL_DUMMY_BREAKPOINT_OFFSET (0)
/* When calling functions on Irix 5 (or any MIPS SVR4 ABI compliant
platform), $t9 ($25) (Dest_Reg) contains the address of the callee
(used for PIC). It doesn't hurt to do this on other systems; $t9
will be ignored. */
#define FIX_CALL_DUMMY(dummyname, start_sp, fun, nargs, args, rettype, gcc_p) \
write_register(T9_REGNUM, fun)
#define CALL_DUMMY_ADDRESS() (mips_call_dummy_address ())
extern CORE_ADDR mips_call_dummy_address (void);
/* Special symbol found in blocks associated with routines. We can hang
mips_extra_func_info_t's off of this. */
@@ -223,10 +190,6 @@ typedef struct mips_extra_func_info
}
*mips_extra_func_info_t;
extern void mips_init_extra_frame_info (int fromleaf, struct frame_info *);
#define INIT_EXTRA_FRAME_INFO(fromleaf, fci) \
mips_init_extra_frame_info(fromleaf, fci)
extern void mips_print_extra_frame_info (struct frame_info *frame);
#define PRINT_EXTRA_FRAME_INFO(fi) \
mips_print_extra_frame_info (fi)
@@ -302,18 +265,13 @@ typedef unsigned long t_inst; /* Integer big enough to hold an instruction */
the "info" field with the "special" bit masked out
*/
#define ELF_MAKE_MSYMBOL_SPECIAL(sym,msym) \
{ \
if (((elf_symbol_type *)(sym))->internal_elf_sym.st_other == STO_MIPS16) { \
MSYMBOL_INFO (msym) = (char *) (((long) MSYMBOL_INFO (msym)) | 0x80000000); \
SYMBOL_VALUE_ADDRESS (msym) |= 1; \
} \
}
#define MSYMBOL_IS_SPECIAL(msym) \
(((long) MSYMBOL_INFO (msym) & 0x80000000) != 0)
mips_msymbol_is_special (msym)
#define MSYMBOL_SIZE(msym) \
((long) MSYMBOL_INFO (msym) & 0x7fffffff)
mips_msymbol_size (msym)
struct minimal_symbol;
extern int mips_msymbol_is_special (struct minimal_symbol *msym);
extern long mips_msymbol_size (struct minimal_symbol *msym);
/* Command to set the processor type. */