m32r-protos.h: Remove m32r_finalize_pic.

* config/m32r/m32r-protos.h: Remove m32r_finalize_pic.
	* config/m32r/m32r.c (m32r_compute_frame_size,
	m32r_expand_prologue): Take current_function_profile into
	account whenever we reference
	current_function_uses_pic_offset_table.
	(m32r_finalize_pic): Remove.
	* config/m32r/m32r.h (FINALIZE_PIC): Likewise.

From-SVN: r101624
This commit is contained in:
Kazuhiro Inaoka 2005-07-05 14:16:06 +00:00 committed by Kazu Hirata
parent 064be44503
commit cdc9bfe6aa
4 changed files with 14 additions and 27 deletions

View File

@ -1,3 +1,13 @@
2005-07-05 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
* config/m32r/m32r-protos.h: Remove m32r_finalize_pic.
* config/m32r/m32r.c (m32r_compute_frame_size,
m32r_expand_prologue): Take current_function_profile into
account whenever we reference
current_function_uses_pic_offset_table.
(m32r_finalize_pic): Remove.
* config/m32r/m32r.h (FINALIZE_PIC): Likewise.
2005-07-05 Kazu Hirata <kazu@codesourcery.com>
* Makefile.in (stamp-as): Use $(ORIGINAL_AS_FOR_TARGET)

View File

@ -29,7 +29,6 @@ extern void m32r_init (void);
extern void m32r_init_expanders (void);
extern unsigned m32r_compute_frame_size (int);
extern void m32r_expand_prologue (void);
extern void m32r_finalize_pic (void);
extern int direct_return (void);
extern void m32r_load_pic_register (void);

View File

@ -1276,7 +1276,8 @@ m32r_compute_frame_size (int size) /* # of var. bytes allocated. */
unsigned int gmask;
enum m32r_function_type fn_type;
int interrupt_p;
int pic_reg_used = flag_pic && (current_function_uses_pic_offset_table);
int pic_reg_used = flag_pic && (current_function_uses_pic_offset_table
| current_function_profile);
var_size = M32R_STACK_ALIGN (size);
args_size = M32R_STACK_ALIGN (current_function_outgoing_args_size);
@ -1375,7 +1376,8 @@ m32r_expand_prologue (void)
int regno;
int frame_size;
unsigned int gmask;
int pic_reg_used = flag_pic && (current_function_uses_pic_offset_table);
int pic_reg_used = flag_pic && (current_function_uses_pic_offset_table
| current_function_profile);
if (! current_frame_info.initialized)
m32r_compute_frame_size (get_frame_size ());
@ -1709,14 +1711,6 @@ m32r_legitimize_pic_address (rtx orig, rtx reg)
return orig;
}
/* Emit special PIC prologues and epilogues. */
void
m32r_finalize_pic (void)
{
current_function_uses_pic_offset_table |= current_function_profile;
}
/* Nested function support. */

View File

@ -1344,22 +1344,6 @@ L2: .word STATIC
/* This register is call-saved on the M32R. */
/*#define PIC_OFFSET_TABLE_REG_CALL_CLOBBERED*/
/* By generating position-independent code, when two different programs (A
and B) share a common library (libC.a), the text of the library can be
shared whether or not the library is linked at the same address for both
programs. In some of these environments, position-independent code
requires not only the use of different addressing modes, but also
special code to enable the use of these addressing modes.
The FINALIZE_PIC macro serves as a hook to emit these special
codes once the function is being compiled into assembly code, but not
before. (It is not done before, because in the case of compiling an
inline function, it would lead to multiple PIC prologues being
included in functions which used inline functions and were compiled to
assembly language.) */
#define FINALIZE_PIC m32r_finalize_pic ()
/* A C expression that is nonzero if X is a legitimate immediate
operand on the target machine when generating position independent code.
You can assume that X satisfies CONSTANT_P, so you need not