aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog12
-rw-r--r--gcc/config/avr/avr.h5
-rw-r--r--gcc/config/m32r/m32r-protos.h1
-rw-r--r--gcc/config/m32r/m32r.c13
-rw-r--r--gcc/config/m32r/m32r.h6
-rw-r--r--gcc/doc/md.texi6
-rw-r--r--gcc/final.c10
-rw-r--r--gcc/system.h3
8 files changed, 16 insertions, 40 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ef58d8f..9460fe1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,15 @@
+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
diff --git a/gcc/config/avr/avr.h b/gcc/config/avr/avr.h
index 0d5cd7c..c6ac5dc 100644
--- a/gcc/config/avr/avr.h
+++ b/gcc/config/avr/avr.h
@@ -2301,11 +2301,6 @@ extern int avr_case_values_threshold;
#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
diff --git a/gcc/config/m32r/m32r-protos.h b/gcc/config/m32r/m32r-protos.h
index 603c0bd..01bbd6d 100644
--- a/gcc/config/m32r/m32r-protos.h
+++ b/gcc/config/m32r/m32r-protos.h
@@ -27,7 +27,6 @@ extern void sdata_section (void);
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);
diff --git a/gcc/config/m32r/m32r.c b/gcc/config/m32r/m32r.c
index 244264b..6bc4b94 100644
--- a/gcc/config/m32r/m32r.c
+++ b/gcc/config/m32r/m32r.c
@@ -1887,19 +1887,6 @@ m32r_compute_frame_size (int size) /* # of var. bytes allocated. */
return total_size;
}
-/* 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;
-}
-
/* The table we use to reference PIC data. */
static rtx global_offset_table;
diff --git a/gcc/config/m32r/m32r.h b/gcc/config/m32r/m32r.h
index d2483e2..b515e77 100644
--- a/gcc/config/m32r/m32r.h
+++ b/gcc/config/m32r/m32r.h
@@ -1510,12 +1510,6 @@ L2: .word STATIC
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 ()
-
/* Section selection. */
diff --git a/gcc/doc/md.texi b/gcc/doc/md.texi
index b7de9ce..8c13fc1 100644
--- a/gcc/doc/md.texi
+++ b/gcc/doc/md.texi
@@ -5289,12 +5289,6 @@ Lengths are measured in addressable storage units (bytes).
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
diff --git a/gcc/final.c b/gcc/final.c
index d3785fd..ea9aa4b 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -736,12 +736,6 @@ compute_alignments (void)
/* 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
@@ -971,7 +965,7 @@ shorten_branches (rtx first ATTRIBUTE_UNUSED)
#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))
{
@@ -1072,7 +1066,7 @@ shorten_branches (rtx first ATTRIBUTE_UNUSED)
{
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))
{
diff --git a/gcc/system.h b/gcc/system.h
index c6003d6..10d7606 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -621,7 +621,8 @@ typedef char _Bool;
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 \