Commit f5d927c0 by Kazu Hirata Committed by Jeff Law

* final.c: Fix formatting.

From-SVN: r36338
parent 4843bda9
...@@ -128,6 +128,8 @@ Mon Sep 11 10:48:41 2000 Ulrich Drepper <drepper@redhat.com> ...@@ -128,6 +128,8 @@ Mon Sep 11 10:48:41 2000 Ulrich Drepper <drepper@redhat.com>
2000-09-11 Kazu Hirata <kazu@hxi.com> 2000-09-11 Kazu Hirata <kazu@hxi.com>
* final.c: Fix formatting.
* integrate.c: Fix formatting. * integrate.c: Fix formatting.
2000-09-11 Geoff Keating <geoffk@cygnus.com> 2000-09-11 Geoff Keating <geoffk@cygnus.com>
......
...@@ -19,7 +19,6 @@ along with GNU CC; see the file COPYING. If not, write to ...@@ -19,7 +19,6 @@ along with GNU CC; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330, the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */ Boston, MA 02111-1307, USA. */
/* This is the final pass of the compiler. /* This is the final pass of the compiler.
It looks at the rtl code for a function and outputs assembler code. It looks at the rtl code for a function and outputs assembler code.
...@@ -241,7 +240,8 @@ rtx current_insn_predicate; ...@@ -241,7 +240,8 @@ rtx current_insn_predicate;
/* Linked list to hold line numbers for each basic block. */ /* Linked list to hold line numbers for each basic block. */
struct bb_list { struct bb_list
{
struct bb_list *next; /* pointer to next basic block */ struct bb_list *next; /* pointer to next basic block */
int line_num; /* line number */ int line_num; /* line number */
int file_label_num; /* LPBC<n> label # for stored filename */ int file_label_num; /* LPBC<n> label # for stored filename */
...@@ -255,7 +255,8 @@ static int bb_func_label_num = -1; /* Current label # for func */ ...@@ -255,7 +255,8 @@ static int bb_func_label_num = -1; /* Current label # for func */
/* Linked list to hold the strings for each file and function name output. */ /* Linked list to hold the strings for each file and function name output. */
struct bb_str { struct bb_str
{
struct bb_str *next; /* pointer to next string */ struct bb_str *next; /* pointer to next string */
const char *string; /* string */ const char *string; /* string */
int label_num; /* label number */ int label_num; /* label number */
...@@ -453,8 +454,8 @@ end_final (filename) ...@@ -453,8 +454,8 @@ end_final (filename)
else else
#endif #endif
#ifdef ASM_OUTPUT_ALIGNED_DECL_LOCAL #ifdef ASM_OUTPUT_ALIGNED_DECL_LOCAL
ASM_OUTPUT_ALIGNED_DECL_LOCAL (asm_out_file, NULL_TREE, name, size, ASM_OUTPUT_ALIGNED_DECL_LOCAL (asm_out_file, NULL_TREE, name,
BIGGEST_ALIGNMENT); size, BIGGEST_ALIGNMENT);
#else #else
#ifdef ASM_OUTPUT_ALIGNED_LOCAL #ifdef ASM_OUTPUT_ALIGNED_LOCAL
ASM_OUTPUT_ALIGNED_LOCAL (asm_out_file, name, size, ASM_OUTPUT_ALIGNED_LOCAL (asm_out_file, name, size,
...@@ -512,7 +513,7 @@ end_final (filename) ...@@ -512,7 +513,7 @@ end_final (filename)
assemble_integer (const0_rtx, pointer_bytes, 1); assemble_integer (const0_rtx, pointer_bytes, 1);
} }
for ( ; i < count_basic_blocks; i++) for (; i < count_basic_blocks; i++)
assemble_integer (const0_rtx, pointer_bytes, 1); assemble_integer (const0_rtx, pointer_bytes, 1);
} }
...@@ -523,7 +524,7 @@ end_final (filename) ...@@ -523,7 +524,7 @@ end_final (filename)
for ((ptr = bb_head), (i = 0); ptr != 0; (ptr = ptr->next), i++) for ((ptr = bb_head), (i = 0); ptr != 0; (ptr = ptr->next), i++)
assemble_integer (GEN_INT (ptr->line_num), long_bytes, 1); assemble_integer (GEN_INT (ptr->line_num), long_bytes, 1);
for ( ; i < count_basic_blocks; i++) for (; i < count_basic_blocks; i++)
assemble_integer (const0_rtx, long_bytes, 1); assemble_integer (const0_rtx, long_bytes, 1);
/* Output the table of file names. */ /* Output the table of file names. */
...@@ -541,7 +542,7 @@ end_final (filename) ...@@ -541,7 +542,7 @@ end_final (filename)
assemble_integer (const0_rtx, pointer_bytes, 1); assemble_integer (const0_rtx, pointer_bytes, 1);
} }
for ( ; i < count_basic_blocks; i++) for (; i < count_basic_blocks; i++)
assemble_integer (const0_rtx, pointer_bytes, 1); assemble_integer (const0_rtx, pointer_bytes, 1);
} }
...@@ -630,7 +631,8 @@ int insn_current_align; ...@@ -630,7 +631,8 @@ int insn_current_align;
for each insn we'll call the alignment chain of this insn in the following for each insn we'll call the alignment chain of this insn in the following
comments. */ comments. */
struct label_alignment { struct label_alignment
{
short alignment; short alignment;
short max_skip; short max_skip;
}; };
...@@ -811,6 +813,7 @@ final_addr_vec_align (addr_vec) ...@@ -811,6 +813,7 @@ final_addr_vec_align (addr_vec)
return align; return align;
} }
#define ADDR_VEC_ALIGN(ADDR_VEC) final_addr_vec_align (ADDR_VEC) #define ADDR_VEC_ALIGN(ADDR_VEC) final_addr_vec_align (ADDR_VEC)
#endif #endif
...@@ -829,6 +832,7 @@ static int min_labelno, max_labelno; ...@@ -829,6 +832,7 @@ static int min_labelno, max_labelno;
(label_align[CODE_LABEL_NUMBER (LABEL) - min_labelno].max_skip) (label_align[CODE_LABEL_NUMBER (LABEL) - min_labelno].max_skip)
/* For the benefit of port specific code do this also as a function. */ /* For the benefit of port specific code do this also as a function. */
int int
label_to_alignment (label) label_to_alignment (label)
rtx label; rtx label;
...@@ -857,7 +861,6 @@ label_to_alignment (label) ...@@ -857,7 +861,6 @@ label_to_alignment (label)
For this purpose, align_fuzz with a growth argument of 0 comuptes the For this purpose, align_fuzz with a growth argument of 0 comuptes the
appropriate adjustment. */ appropriate adjustment. */
/* Compute the maximum delta by which the difference of the addresses of /* Compute the maximum delta by which the difference of the addresses of
START and END might grow / shrink due to a different address for start START and END might grow / shrink due to a different address for start
which changes the size of alignment insns between START and END. which changes the size of alignment insns between START and END.
...@@ -865,6 +868,7 @@ label_to_alignment (label) ...@@ -865,6 +868,7 @@ label_to_alignment (label)
GROWTH should be ~0 if the objective is to compute potential code size GROWTH should be ~0 if the objective is to compute potential code size
increase, and 0 if the objective is to compute potential shrink. increase, and 0 if the objective is to compute potential shrink.
The return value is undefined for any other value of GROWTH. */ The return value is undefined for any other value of GROWTH. */
static int static int
align_fuzz (start, end, known_align_log, growth) align_fuzz (start, end, known_align_log, growth)
rtx start, end; rtx start, end;
...@@ -906,6 +910,7 @@ align_fuzz (start, end, known_align_log, growth) ...@@ -906,6 +910,7 @@ align_fuzz (start, end, known_align_log, growth)
to account for possible size increase due to alignment. to account for possible size increase due to alignment.
NB.: Therefore, the maximum offset allowed for backward branches needs NB.: Therefore, the maximum offset allowed for backward branches needs
to exclude the branch size. */ to exclude the branch size. */
int int
insn_current_reference_address (branch) insn_current_reference_address (branch)
rtx branch; rtx branch;
...@@ -993,7 +998,7 @@ shorten_branches (first) ...@@ -993,7 +998,7 @@ shorten_branches (first)
to avoid confusion of subsequent processing. */ to avoid confusion of subsequent processing. */
if (INSN_DELETED_P (old)) if (INSN_DELETED_P (old))
{ {
PUT_CODE (old , NOTE); PUT_CODE (old, NOTE);
NOTE_LINE_NUMBER (old) = NOTE_INSN_DELETED; NOTE_LINE_NUMBER (old) = NOTE_INSN_DELETED;
NOTE_SOURCE_FILE (old) = 0; NOTE_SOURCE_FILE (old) = 0;
} }
...@@ -1145,7 +1150,7 @@ shorten_branches (first) ...@@ -1145,7 +1150,7 @@ shorten_branches (first)
alignment of n. */ alignment of n. */
uid_align = (rtx *) xcalloc (max_uid, sizeof *uid_align); uid_align = (rtx *) xcalloc (max_uid, sizeof *uid_align);
for (i = MAX_CODE_ALIGN; --i >= 0; ) for (i = MAX_CODE_ALIGN; --i >= 0;)
align_tab[i] = NULL_RTX; align_tab[i] = NULL_RTX;
seq = get_last_insn (); seq = get_last_insn ();
for (; seq; seq = PREV_INSN (seq)) for (; seq; seq = PREV_INSN (seq))
...@@ -1219,7 +1224,6 @@ shorten_branches (first) ...@@ -1219,7 +1224,6 @@ shorten_branches (first)
} }
#endif /* CASE_VECTOR_SHORTEN_MODE */ #endif /* CASE_VECTOR_SHORTEN_MODE */
/* Compute initial lengths, addresses, and varying flags for each insn. */ /* Compute initial lengths, addresses, and varying flags for each insn. */
for (insn_current_address = FIRST_INSN_ADDRESS, insn = first; for (insn_current_address = FIRST_INSN_ADDRESS, insn = first;
insn != 0; insn != 0;
...@@ -1555,8 +1559,8 @@ asm_insn_count (body) ...@@ -1555,8 +1559,8 @@ asm_insn_count (body)
template = decode_asm_operands (body, NULL_PTR, NULL_PTR, template = decode_asm_operands (body, NULL_PTR, NULL_PTR,
NULL_PTR, NULL_PTR); NULL_PTR, NULL_PTR);
for ( ; *template; template++) for (; *template; template++)
if (IS_ASM_LOGICAL_LINE_SEPARATOR(*template) || *template == '\n') if (IS_ASM_LOGICAL_LINE_SEPARATOR (*template) || *template == '\n')
count++; count++;
return count; return count;
...@@ -1678,8 +1682,9 @@ final_start_function (first, file, optimize) ...@@ -1678,8 +1682,9 @@ final_start_function (first, file, optimize)
of the function name. */ of the function name. */
if (profile_block_flag) if (profile_block_flag)
{ {
bb_func_label_num bb_func_label_num =
= add_bb_string ((*decl_printable_name) (current_function_decl, 2), FALSE); add_bb_string ((*decl_printable_name) (current_function_decl, 2),
FALSE);
} }
} }
...@@ -1847,7 +1852,8 @@ static void ...@@ -1847,7 +1852,8 @@ static void
add_bb (file) add_bb (file)
FILE *file; FILE *file;
{ {
struct bb_list *ptr = (struct bb_list *) permalloc (sizeof (struct bb_list)); struct bb_list *ptr =
(struct bb_list *) permalloc (sizeof (struct bb_list));
/* Add basic block to linked list. */ /* Add basic block to linked list. */
ptr->next = 0; ptr->next = 0;
...@@ -1921,7 +1927,6 @@ add_bb_string (string, perm_p) ...@@ -1921,7 +1927,6 @@ add_bb_string (string, perm_p)
return ptr->label_num; return ptr->label_num;
} }
/* Output assembler code for some insns: all or part of a function. /* Output assembler code for some insns: all or part of a function.
For description of args, see `final_start_function', above. For description of args, see `final_start_function', above.
...@@ -2058,16 +2063,17 @@ get_insn_template (code, insn) ...@@ -2058,16 +2063,17 @@ get_insn_template (code, insn)
case INSN_OUTPUT_FORMAT_SINGLE: case INSN_OUTPUT_FORMAT_SINGLE:
return (const char *) output; return (const char *) output;
case INSN_OUTPUT_FORMAT_MULTI: case INSN_OUTPUT_FORMAT_MULTI:
return ((const char * const *) output)[which_alternative]; return ((const char *const *) output)[which_alternative];
case INSN_OUTPUT_FORMAT_FUNCTION: case INSN_OUTPUT_FORMAT_FUNCTION:
if (insn == NULL) if (insn == NULL)
abort (); abort ();
return (* (insn_output_fn) output) (recog_data.operand, insn); return (*(insn_output_fn) output) (recog_data.operand, insn);
default: default:
abort (); abort ();
} }
} }
/* The final scan for one insn, INSN. /* The final scan for one insn, INSN.
Args are same as in `final', except that INSN Args are same as in `final', except that INSN
is the insn being scanned. is the insn being scanned.
...@@ -2512,7 +2518,7 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) ...@@ -2512,7 +2518,7 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes)
#ifdef ASM_OUTPUT_ADDR_VEC #ifdef ASM_OUTPUT_ADDR_VEC
ASM_OUTPUT_ADDR_VEC (PREV_INSN (insn), body); ASM_OUTPUT_ADDR_VEC (PREV_INSN (insn), body);
#else #else
abort(); abort ();
#endif #endif
} }
else else
...@@ -2520,7 +2526,7 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) ...@@ -2520,7 +2526,7 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes)
#ifdef ASM_OUTPUT_ADDR_DIFF_VEC #ifdef ASM_OUTPUT_ADDR_DIFF_VEC
ASM_OUTPUT_ADDR_DIFF_VEC (PREV_INSN (insn), body); ASM_OUTPUT_ADDR_DIFF_VEC (PREV_INSN (insn), body);
#else #else
abort(); abort ();
#endif #endif
} }
#else #else
...@@ -2688,7 +2694,7 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) ...@@ -2688,7 +2694,7 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes)
body = PATTERN (insn); body = PATTERN (insn);
#ifdef HAVE_cc0 #ifdef HAVE_cc0
set = single_set(insn); set = single_set (insn);
/* Check for redundant test and compare instructions /* Check for redundant test and compare instructions
(when the condition codes are already set up as desired). (when the condition codes are already set up as desired).
...@@ -2701,7 +2707,7 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) ...@@ -2701,7 +2707,7 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes)
if (optimize) if (optimize)
{ {
#if 0 #if 0
rtx set = single_set(insn); rtx set = single_set (insn);
#endif #endif
if (set if (set
...@@ -3116,9 +3122,9 @@ output_source_line (file, insn) ...@@ -3116,9 +3122,9 @@ output_source_line (file, insn)
} }
} }
/* For each operand in INSN, simplify (subreg (reg)) so that it refers /* For each operand in INSN, simplify (subreg (reg)) so that it refers
directly to the desired hard register. */ directly to the desired hard register. */
void void
cleanup_subreg_operands (insn) cleanup_subreg_operands (insn)
rtx insn; rtx insn;
...@@ -3173,7 +3179,7 @@ alter_subreg (x) ...@@ -3173,7 +3179,7 @@ alter_subreg (x)
gen_lowpart and friends. */ gen_lowpart and friends. */
#ifdef ALTER_HARD_SUBREG #ifdef ALTER_HARD_SUBREG
regno = ALTER_HARD_SUBREG(GET_MODE (x), SUBREG_WORD (x), regno = ALTER_HARD_SUBREG (GET_MODE (x), SUBREG_WORD (x),
GET_MODE (y), REGNO (y)); GET_MODE (y), REGNO (y));
#else #else
regno = REGNO (y) + SUBREG_WORD (x); regno = REGNO (y) + SUBREG_WORD (x);
...@@ -3534,7 +3540,7 @@ output_asm_insn (template, operands) ...@@ -3534,7 +3540,7 @@ output_asm_insn (template, operands)
Letters `acln' are implemented directly. Letters `acln' are implemented directly.
Other letters are passed to `output_operand' so that Other letters are passed to `output_operand' so that
the PRINT_OPERAND macro can define them. */ the PRINT_OPERAND macro can define them. */
else if (ISLOWER(*p) || ISUPPER(*p)) else if (ISLOWER (*p) || ISUPPER (*p))
{ {
int letter = *p++; int letter = *p++;
c = atoi (p); c = atoi (p);
...@@ -3568,23 +3574,26 @@ output_asm_insn (template, operands) ...@@ -3568,23 +3574,26 @@ output_asm_insn (template, operands)
else else
output_operand (operands[c], letter); output_operand (operands[c], letter);
while ((c = *p) >= '0' && c <= '9') p++; while ((c = *p) >= '0' && c <= '9')
p++;
} }
/* % followed by a digit outputs an operand the default way. */ /* % followed by a digit outputs an operand the default way. */
else if (*p >= '0' && *p <= '9') else if (*p >= '0' && *p <= '9')
{ {
c = atoi (p); c = atoi (p);
if (this_is_asm_operands && (c < 0 || (unsigned int) c >= insn_noperands)) if (this_is_asm_operands
&& (c < 0 || (unsigned int) c >= insn_noperands))
output_operand_lossage ("operand number out of range"); output_operand_lossage ("operand number out of range");
else else
output_operand (operands[c], 0); output_operand (operands[c], 0);
while ((c = *p) >= '0' && c <= '9') p++; while ((c = *p) >= '0' && c <= '9')
p++;
} }
/* % followed by punctuation: output something for that /* % followed by punctuation: output something for that
punctuation character alone, with no operand. punctuation character alone, with no operand.
The PRINT_OPERAND macro decides what is actually done. */ The PRINT_OPERAND macro decides what is actually done. */
#ifdef PRINT_OPERAND_PUNCT_VALID_P #ifdef PRINT_OPERAND_PUNCT_VALID_P
else if (PRINT_OPERAND_PUNCT_VALID_P ((unsigned char)*p)) else if (PRINT_OPERAND_PUNCT_VALID_P ((unsigned char) *p))
output_operand (NULL_RTX, *p++); output_operand (NULL_RTX, *p++);
#endif #endif
else else
...@@ -4061,7 +4070,8 @@ split_double (value, first, second) ...@@ -4061,7 +4070,8 @@ split_double (value, first, second)
else else
{ {
#ifdef REAL_ARITHMETIC #ifdef REAL_ARITHMETIC
REAL_VALUE_TYPE r; long l[2]; REAL_VALUE_TYPE r;
long l[2];
REAL_VALUE_FROM_CONST_DOUBLE (r, value); REAL_VALUE_FROM_CONST_DOUBLE (r, value);
/* Note, this converts the REAL_VALUE_TYPE to the target's /* Note, this converts the REAL_VALUE_TYPE to the target's
...@@ -4136,7 +4146,9 @@ leaf_function_p () ...@@ -4136,7 +4146,9 @@ leaf_function_p ()
&& ! SIBLING_CALL_P (XVECEXP (PATTERN (insn), 0, 0))) && ! SIBLING_CALL_P (XVECEXP (PATTERN (insn), 0, 0)))
return 0; return 0;
} }
for (insn = current_function_epilogue_delay_list; insn; insn = XEXP (insn, 1)) for (insn = current_function_epilogue_delay_list;
insn;
insn = XEXP (insn, 1))
{ {
if (GET_CODE (XEXP (insn, 0)) == CALL_INSN if (GET_CODE (XEXP (insn, 0)) == CALL_INSN
&& ! SIBLING_CALL_P (insn)) && ! SIBLING_CALL_P (insn))
...@@ -4200,7 +4212,9 @@ leaf_renumber_regs (first) ...@@ -4200,7 +4212,9 @@ leaf_renumber_regs (first)
for (insn = first; insn; insn = NEXT_INSN (insn)) for (insn = first; insn; insn = NEXT_INSN (insn))
if (INSN_P (insn)) if (INSN_P (insn))
leaf_renumber_regs_insn (PATTERN (insn)); leaf_renumber_regs_insn (PATTERN (insn));
for (insn = current_function_epilogue_delay_list; insn; insn = XEXP (insn, 1)) for (insn = current_function_epilogue_delay_list;
insn;
insn = XEXP (insn, 1))
if (INSN_P (XEXP (insn, 0))) if (INSN_P (XEXP (insn, 0)))
leaf_renumber_regs_insn (PATTERN (XEXP (insn, 0))); leaf_renumber_regs_insn (PATTERN (XEXP (insn, 0)));
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment