(shorten_branches): Don't use FIRST_INSN_ADDRESS.
* system.h (FIRST_INSN_ADDRESS): Poison.
* config/avr/avr.h: Remove a comment about FIRST_INSN_ADDRESS.
* config/m32r/m32r-protos.h: Remove the prototype for
m32r_first_insn_address.
* config/m32r/m32r.c (m32r_first_insn_address): Remove.
* config/m32r/m32r.h (FIRST_INSN_ADDRESS): Likewise.
* doc/md.texi (FIRST_INSN_ADDRESS): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@75584
138bc75d-0d04-0410-961f-
82ee72b054a4
+2004-01-09 Kazu Hirata <kazu@cs.umass.edu>
+
+ * final.c (FIRST_INSN_ADDRESS): Remove.
+ (shorten_branches): Don't use FIRST_INSN_ADDRESS.
+ * system.h (FIRST_INSN_ADDRESS): Poison.
+ * config/avr/avr.h: Remove a comment about FIRST_INSN_ADDRESS.
+ * config/m32r/m32r-protos.h: Remove the prototype for
+ m32r_first_insn_address.
+ * config/m32r/m32r.c (m32r_first_insn_address): Remove.
+ * config/m32r/m32r.h (FIRST_INSN_ADDRESS): Likewise.
+ * doc/md.texi (FIRST_INSN_ADDRESS): Likewise.
+
2004-01-09 J. Brobecker <brobecker@gnat.com>
* dwarf2out.c (gen_enumeration_type_die): Return the DIE that
#define FUNCTION_PROFILER(FILE, LABELNO) \
fprintf (FILE, "/* profiler %d */", (LABELNO))
-/* `FIRST_INSN_ADDRESS'
- When the `length' insn attribute is used, this macro specifies the
- value to be assigned to the address of the first insn in a
- function. If not specified, 0 is used. */
-
#define ADJUST_INSN_LENGTH(INSN, LENGTH) (LENGTH =\
adjust_insn_length (INSN, LENGTH))
/* If defined, modifies the length assigned to instruction INSN as a
extern void m32r_init (void);
extern void m32r_init_expanders (void);
extern unsigned m32r_compute_frame_size (int);
-extern int m32r_first_insn_address (void);
extern void m32r_expand_prologue (void);
extern void m32r_finalize_pic (void);
extern int direct_return (void);
return total_size;
}
\f
-/* When the `length' insn attribute is used, this macro specifies the
- value to be assigned to the address of the first insn in a
- function. If not specified, 0 is used. */
-
-int
-m32r_first_insn_address (void)
-{
- if (! current_frame_info.initialized)
- m32r_compute_frame_size (get_frame_size ());
-
- return 0;
-}
-\f
/* The table we use to reference PIC data. */
static rtx global_offset_table;
itself with an explicit address than to call an address kept in a
register. */
#define NO_RECURSIVE_FUNCTION_CSE
-
-/* When the `length' insn attribute is used, this macro specifies the
- value to be assigned to the address of the first insn in a
- function. If not specified, 0 is used. */
-#define FIRST_INSN_ADDRESS m32r_first_insn_address ()
-
\f
/* Section selection. */
The following macros can be used to refine the length computation:
@table @code
-@findex FIRST_INSN_ADDRESS
-@item FIRST_INSN_ADDRESS
-When the @code{length} insn attribute is used, this macro specifies the
-value to be assigned to the address of the first insn in a function. If
-not specified, 0 is used.
-
@findex ADJUST_INSN_LENGTH
@item ADJUST_INSN_LENGTH (@var{insn}, @var{length})
If defined, modifies the length assigned to instruction @var{insn} as a
/* Make a pass over all insns and compute their actual lengths by shortening
any branches of variable length if possible. */
-/* Give a default value for the lowest address in a function. */
-
-#ifndef FIRST_INSN_ADDRESS
-#define FIRST_INSN_ADDRESS 0
-#endif
-
/* shorten_branches might be called multiple times: for example, the SH
port splits out-of-range conditional branches in MACHINE_DEPENDENT_REORG.
In order to do this, it needs proper length information, which it obtains
#endif /* CASE_VECTOR_SHORTEN_MODE */
/* Compute initial lengths, addresses, and varying flags for each insn. */
- for (insn_current_address = FIRST_INSN_ADDRESS, insn = first;
+ for (insn_current_address = 0, insn = first;
insn != 0;
insn_current_address += insn_lengths[uid], insn = NEXT_INSN (insn))
{
{
something_changed = 0;
insn_current_align = MAX_CODE_ALIGN - 1;
- for (insn_current_address = FIRST_INSN_ADDRESS, insn = first;
+ for (insn_current_address = 0, insn = first;
insn != 0;
insn = NEXT_INSN (insn))
{
EXIT_BODY OBJECT_FORMAT_ROSE MULTIBYTE_CHARS MAP_CHARACTER \
LIBGCC_NEEDS_DOUBLE FINAL_PRESCAN_LABEL DEFAULT_CALLER_SAVES \
LOAD_ARGS_REVERSED MAX_INTEGER_COMPUTATION_MODE \
- CONVERT_HARD_REGISTER_TO_SSA_P ASM_OUTPUT_MAIN_SOURCE_FILENAME
+ CONVERT_HARD_REGISTER_TO_SSA_P ASM_OUTPUT_MAIN_SOURCE_FILENAME \
+ FIRST_INSN_ADDRESS
/* Hooks that are no longer used. */
#pragma GCC poison LANG_HOOKS_FUNCTION_MARK LANG_HOOKS_FUNCTION_FREE \