bfd ChangeLog

* elf32-xtensa.c: Use ISO C90 formatting.

gas ChangeLog

	* config/tc-xtensa.c: Use ISO C90 formatting.
	* config/tc-xtensa.h: Likewise.
	* config/xtensa-istack.h: Likewise.
	* config/xtensa-relax.c: Likewise.
	* config/xtensa-relax.h: Likewise.

ld ChangeLog

	* emultempl/xtensaelf.em: Use ISO C90 formatting.

opcodes ChangeLog

	* xtensa-dis.c: Use ISO C90 formatting.
This commit is contained in:
Bob Wilson 2004-10-12 18:33:17 +00:00
parent ec8ba2c9a1
commit 7fa3d080a2
12 changed files with 2352 additions and 3820 deletions

View file

@ -1,3 +1,7 @@
2004-10-12 Bob Wilson <bob.wilson@acm.org>
* elf32-xtensa.c: Use ISO C90 formatting.
2004-10-12 Paul Brook <paul@codesourcery.com>
* elf32-arm.h (elf32_arm_merge_private_bfd_data): Rephrase error

File diff suppressed because it is too large Load diff

View file

@ -1,3 +1,11 @@
2004-10-12 Bob Wilson <bob.wilson@acm.org>
* config/tc-xtensa.c: Use ISO C90 formatting.
* config/tc-xtensa.h: Likewise.
* config/xtensa-istack.h: Likewise.
* config/xtensa-relax.c: Likewise.
* config/xtensa-relax.h: Likewise.
2004-10-12 Paul Brook <paul@codesourcery.com>
* config/tc-arm.c (md_begin): Change EF_ARM_EABI_VER3 to

File diff suppressed because it is too large Load diff

View file

@ -289,46 +289,29 @@ typedef struct xtensa_segment_info_struct
/* Section renaming is only supported in Tensilica's version of GAS. */
#ifdef XTENSA_SECTION_RENAME
extern const char *xtensa_section_rename
PARAMS ((const char *));
extern const char *xtensa_section_rename (const char *);
#else
/* Tensilica's section renaming feature is not included here. */
#define xtensa_section_rename(name) (name)
#endif /* XTENSA_SECTION_RENAME */
extern const char *xtensa_target_format
PARAMS ((void));
extern void xtensa_init_fix_data
PARAMS ((struct fix *));
extern void xtensa_frag_init
PARAMS ((fragS *));
extern int xtensa_force_relocation
PARAMS ((struct fix *));
extern void xtensa_frob_label
PARAMS ((struct symbol *));
extern void xtensa_end
PARAMS ((void));
extern void xtensa_post_relax_hook
PARAMS ((void));
extern void xtensa_file_arch_init
PARAMS ((bfd *));
extern void xtensa_flush_pending_output
PARAMS ((void));
extern bfd_boolean xtensa_fix_adjustable
PARAMS ((struct fix *));
extern void xtensa_symbol_new_hook
PARAMS ((symbolS *));
extern long xtensa_relax_frag
PARAMS ((fragS *, long, int *));
extern void xtensa_elf_section_change_hook
PARAMS ((void));
extern int xtensa_unrecognized_line
PARAMS ((int));
extern bfd_boolean xtensa_check_inside_bundle
PARAMS ((void));
extern void xtensa_handle_align
PARAMS ((fragS *));
extern const char *xtensa_target_format (void);
extern void xtensa_init_fix_data (struct fix *);
extern void xtensa_frag_init (fragS *);
extern int xtensa_force_relocation (struct fix *);
extern void xtensa_frob_label (struct symbol *);
extern void xtensa_end (void);
extern void xtensa_post_relax_hook (void);
extern void xtensa_file_arch_init (bfd *);
extern void xtensa_flush_pending_output (void);
extern bfd_boolean xtensa_fix_adjustable (struct fix *);
extern void xtensa_symbol_new_hook (symbolS *);
extern long xtensa_relax_frag (fragS *, long, int *);
extern void xtensa_elf_section_change_hook (void);
extern int xtensa_unrecognized_line (int);
extern bfd_boolean xtensa_check_inside_bundle (void);
extern void xtensa_handle_align (fragS *);
#define TARGET_FORMAT xtensa_target_format ()
#define TARGET_ARCH bfd_arch_xtensa
@ -421,8 +404,8 @@ typedef int (*opcode_funcUnit_use_stage_func) (void *, xtensa_opcode, int);
Of course the optional scheduler has its own reservation table
and functions. */
int opcode_funcUnit_use_unit PARAMS ((void *, xtensa_opcode, int));
int opcode_funcUnit_use_stage PARAMS ((void *, xtensa_opcode, int));
int opcode_funcUnit_use_unit (void *, xtensa_opcode, int);
int opcode_funcUnit_use_stage (void *, xtensa_opcode, int);
typedef struct
{
@ -438,13 +421,12 @@ typedef struct
} resource_table;
resource_table *new_resource_table
PARAMS ((void *, int, int, unit_num_copies_func, opcode_num_units_func,
opcode_funcUnit_use_unit_func, opcode_funcUnit_use_stage_func));
void resize_resource_table PARAMS ((resource_table *, int));
void clear_resource_table PARAMS ((resource_table *));
bfd_boolean resources_available
PARAMS ((resource_table *, xtensa_opcode, int));
void reserve_resources PARAMS ((resource_table *, xtensa_opcode, int));
void release_resources PARAMS ((resource_table *, xtensa_opcode, int));
(void *, int, int, unit_num_copies_func, opcode_num_units_func,
opcode_funcUnit_use_unit_func, opcode_funcUnit_use_stage_func);
void resize_resource_table (resource_table *, int);
void clear_resource_table (resource_table *);
bfd_boolean resources_available (resource_table *, xtensa_opcode, int);
void reserve_resources (resource_table *, xtensa_opcode, int);
void release_resources (resource_table *, xtensa_opcode, int);
#endif /* TC_XTENSA */

View file

@ -72,17 +72,17 @@ typedef struct tinsn_stack
} IStack;
void istack_init PARAMS ((IStack *));
bfd_boolean istack_empty PARAMS ((IStack *));
bfd_boolean istack_full PARAMS ((IStack *));
TInsn *istack_top PARAMS ((IStack *));
void istack_push PARAMS ((IStack *, TInsn *));
TInsn *istack_push_space PARAMS ((IStack *));
void istack_pop PARAMS ((IStack *));
void istack_init (IStack *);
bfd_boolean istack_empty (IStack *);
bfd_boolean istack_full (IStack *);
TInsn *istack_top (IStack *);
void istack_push (IStack *, TInsn *);
TInsn *istack_push_space (IStack *);
void istack_pop (IStack *);
/* TInsn utilities. */
void tinsn_init PARAMS ((TInsn *));
expressionS *tinsn_get_tok PARAMS ((TInsn *, int));
void tinsn_init (TInsn *);
expressionS *tinsn_get_tok (TInsn *, int);
/* vliw_insn: bundles of TInsns. */

View file

@ -442,148 +442,17 @@ string_pattern_pair simplify_spec_list[] =
(sizeof (simplify_spec_list) / sizeof (string_pattern_pair))
/* Transition generation helpers. */
static void append_transition
PARAMS ((TransitionTable *, xtensa_opcode, TransitionRule *,
transition_cmp_fn));
static void append_condition
PARAMS ((TransitionRule *, Precondition *));
static void append_value_condition
PARAMS ((TransitionRule *, CmpOp, unsigned, unsigned));
static void append_constant_value_condition
PARAMS ((TransitionRule *, CmpOp, unsigned, unsigned));
static void append_build_insn
PARAMS ((TransitionRule *, BuildInstr *));
static void append_op
PARAMS ((BuildInstr *, BuildOp *));
static void append_literal_op
PARAMS ((BuildInstr *, unsigned, unsigned));
static void append_label_op
PARAMS ((BuildInstr *, unsigned, unsigned));
static void append_constant_op
PARAMS ((BuildInstr *, unsigned, unsigned));
static void append_field_op
PARAMS ((BuildInstr *, unsigned, unsigned));
static void append_user_fn_field_op
PARAMS ((BuildInstr *, unsigned, OpType, unsigned));
static long operand_function_HI24S
PARAMS ((long));
static long operand_function_F32MINUS
PARAMS ((long));
static long operand_function_LOW8
PARAMS ((long));
static long operand_function_LOW16U
PARAMS ((long));
static long operand_function_HI16U
PARAMS ((long));
/* Externally visible functions. */
extern bfd_boolean xg_has_userdef_op_fn
PARAMS ((OpType));
extern long xg_apply_userdef_op_fn
PARAMS ((OpType, long));
extern bfd_boolean xg_has_userdef_op_fn (OpType);
extern long xg_apply_userdef_op_fn (OpType, long);
/* Parsing helpers. */
static const char *enter_opname_n
PARAMS ((const char *, int));
static const char *enter_opname
PARAMS ((const char *));
/* Construction and destruction. */
static void init_opname_map
PARAMS ((opname_map *));
static void clear_opname_map
PARAMS ((opname_map *));
static void init_precond_list
PARAMS ((precond_list *));
static void clear_precond_list
PARAMS ((precond_list *));
static void init_insn_templ
PARAMS ((insn_templ *));
static void clear_insn_templ
PARAMS ((insn_templ *));
static void init_insn_pattern
PARAMS ((insn_pattern *));
static void clear_insn_pattern
PARAMS ((insn_pattern *));
static void init_insn_repl
PARAMS ((insn_repl *));
static void clear_insn_repl
PARAMS ((insn_repl *));
static void init_split_rec
PARAMS ((split_rec *));
static void clear_split_rec
PARAMS ((split_rec *));
static void clear_req_or_option_list
PARAMS ((ReqOrOption **));
static void clear_req_option_list
PARAMS ((ReqOption **));
static ReqOrOption *clone_req_or_option_list
PARAMS ((ReqOrOption *));
static ReqOption *clone_req_option_list
PARAMS ((ReqOption *));
/* Operand and insn_templ helpers. */
static bfd_boolean same_operand_name
PARAMS ((const opname_map_e *, const opname_map_e *));
static opname_map_e *get_opmatch
PARAMS ((opname_map *, const char *));
static bfd_boolean op_is_constant
PARAMS ((const opname_map_e *));
static unsigned op_get_constant
PARAMS ((const opname_map_e *));
static int insn_templ_operand_count
PARAMS ((const insn_templ *));
/* Parsing helpers. */
static const char *skip_white
PARAMS ((const char *));
static void trim_whitespace
PARAMS ((char *));
static void split_string
PARAMS ((split_rec *, const char *, char, bfd_boolean));
/* Language parsing. */
static bfd_boolean parse_insn_pattern
PARAMS ((const char *, insn_pattern *));
static bfd_boolean parse_insn_repl
PARAMS ((const char *, insn_repl *));
static bfd_boolean parse_insn_templ
PARAMS ((const char *, insn_templ *));
static bfd_boolean parse_special_fn
PARAMS ((const char *, const char **, const char **));
static bfd_boolean parse_precond
PARAMS ((const char *, precond_e *));
static bfd_boolean parse_constant
PARAMS ((const char *, unsigned *));
static bfd_boolean parse_id_constant
PARAMS ((const char *, const char *, unsigned *));
static bfd_boolean parse_option_cond
PARAMS ((const char *, ReqOption *));
/* Transition table building code. */
static bfd_boolean transition_applies
PARAMS ((insn_pattern *, const char *, const char *));
static TransitionRule *build_transition
PARAMS ((insn_pattern *, insn_repl *, const char *, const char *));
static TransitionTable *build_transition_table
PARAMS ((const string_pattern_pair *, int, transition_cmp_fn));
void
append_transition (tt, opcode, t, cmp)
TransitionTable *tt;
xtensa_opcode opcode;
TransitionRule *t;
transition_cmp_fn cmp;
static void
append_transition (TransitionTable *tt,
xtensa_opcode opcode,
TransitionRule *t,
transition_cmp_fn cmp)
{
TransitionList *tl = (TransitionList *) xmalloc (sizeof (TransitionList));
TransitionList *prev;
@ -614,10 +483,8 @@ append_transition (tt, opcode, t, cmp)
}
void
append_condition (tr, cond)
TransitionRule *tr;
Precondition *cond;
static void
append_condition (TransitionRule *tr, Precondition *cond)
{
PreconditionList *pl =
(PreconditionList *) xmalloc (sizeof (PreconditionList));
@ -641,12 +508,11 @@ append_condition (tr, cond)
}
void
append_value_condition (tr, cmp, op1, op2)
TransitionRule *tr;
CmpOp cmp;
unsigned op1;
unsigned op2;
static void
append_value_condition (TransitionRule *tr,
CmpOp cmp,
unsigned op1,
unsigned op2)
{
Precondition *cond = (Precondition *) xmalloc (sizeof (Precondition));
@ -658,12 +524,11 @@ append_value_condition (tr, cmp, op1, op2)
}
void
append_constant_value_condition (tr, cmp, op1, cnst)
TransitionRule *tr;
CmpOp cmp;
unsigned op1;
unsigned cnst;
static void
append_constant_value_condition (TransitionRule *tr,
CmpOp cmp,
unsigned op1,
unsigned cnst)
{
Precondition *cond = (Precondition *) xmalloc (sizeof (Precondition));
@ -675,10 +540,8 @@ append_constant_value_condition (tr, cmp, op1, cnst)
}
void
append_build_insn (tr, bi)
TransitionRule *tr;
BuildInstr *bi;
static void
append_build_insn (TransitionRule *tr, BuildInstr *bi)
{
BuildInstr *prev = tr->to_instr;
BuildInstr *nxt;
@ -699,10 +562,8 @@ append_build_insn (tr, bi)
}
void
append_op (bi, b_op)
BuildInstr *bi;
BuildOp *b_op;
static void
append_op (BuildInstr *bi, BuildOp *b_op)
{
BuildOp *prev = bi->ops;
BuildOp *nxt;
@ -722,11 +583,8 @@ append_op (bi, b_op)
}
void
append_literal_op (bi, op1, litnum)
BuildInstr *bi;
unsigned op1;
unsigned litnum;
static void
append_literal_op (BuildInstr *bi, unsigned op1, unsigned litnum)
{
BuildOp *b_op = (BuildOp *) xmalloc (sizeof (BuildOp));
@ -738,11 +596,8 @@ append_literal_op (bi, op1, litnum)
}
void
append_label_op (bi, op1, labnum)
BuildInstr *bi;
unsigned op1;
unsigned labnum;
static void
append_label_op (BuildInstr *bi, unsigned op1, unsigned labnum)
{
BuildOp *b_op = (BuildOp *) xmalloc (sizeof (BuildOp));
@ -754,11 +609,8 @@ append_label_op (bi, op1, labnum)
}
void
append_constant_op (bi, op1, cnst)
BuildInstr *bi;
unsigned op1;
unsigned cnst;
static void
append_constant_op (BuildInstr *bi, unsigned op1, unsigned cnst)
{
BuildOp *b_op = (BuildOp *) xmalloc (sizeof (BuildOp));
@ -770,11 +622,8 @@ append_constant_op (bi, op1, cnst)
}
void
append_field_op (bi, op1, src_op)
BuildInstr *bi;
unsigned op1;
unsigned src_op;
static void
append_field_op (BuildInstr *bi, unsigned op1, unsigned src_op)
{
BuildOp *b_op = (BuildOp *) xmalloc (sizeof (BuildOp));
@ -788,12 +637,11 @@ append_field_op (bi, op1, src_op)
/* These could be generated but are not currently. */
void
append_user_fn_field_op (bi, op1, typ, src_op)
BuildInstr *bi;
unsigned op1;
OpType typ;
unsigned src_op;
static void
append_user_fn_field_op (BuildInstr *bi,
unsigned op1,
OpType typ,
unsigned src_op)
{
BuildOp *b_op = (BuildOp *) xmalloc (sizeof (BuildOp));
@ -808,9 +656,8 @@ append_user_fn_field_op (bi, op1, typ, src_op)
/* These operand functions are the semantics of user-defined
operand functions. */
long
operand_function_HI24S (a)
long a;
static long
operand_function_HI24S (long a)
{
if (a & 0x80)
return (a & (~0xff)) + 0x100;
@ -819,17 +666,15 @@ operand_function_HI24S (a)
}
long
operand_function_F32MINUS (a)
long a;
static long
operand_function_F32MINUS (long a)
{
return (32 - a);
}
long
operand_function_LOW8 (a)
long a;
static long
operand_function_LOW8 (long a)
{
if (a & 0x80)
return (a & 0xff) | ~0xff;
@ -838,17 +683,15 @@ operand_function_LOW8 (a)
}
long
operand_function_LOW16U (a)
long a;
static long
operand_function_LOW16U (long a)
{
return (a & 0xffff);
}
long
operand_function_HI16U (a)
long a;
static long
operand_function_HI16U (long a)
{
unsigned long b = a & 0xffff0000;
return (long) (b >> 16);
@ -856,8 +699,7 @@ operand_function_HI16U (a)
bfd_boolean
xg_has_userdef_op_fn (op)
OpType op;
xg_has_userdef_op_fn (OpType op)
{
switch (op)
{
@ -875,9 +717,7 @@ xg_has_userdef_op_fn (op)
long
xg_apply_userdef_op_fn (op, a)
OpType op;
long a;
xg_apply_userdef_op_fn (OpType op, long a)
{
switch (op)
{
@ -900,10 +740,8 @@ xg_apply_userdef_op_fn (op, a)
/* Generate a transition table. */
const char *
enter_opname_n (name, len)
const char *name;
int len;
static const char *
enter_opname_n (const char *name, int len)
{
opname_e *op;
@ -922,8 +760,7 @@ enter_opname_n (name, len)
static const char *
enter_opname (name)
const char *name;
enter_opname (const char *name)
{
opname_e *op;
@ -938,18 +775,16 @@ enter_opname (name)
}
void
init_opname_map (m)
opname_map *m;
static void
init_opname_map (opname_map *m)
{
m->head = NULL;
m->tail = &m->head;
}
void
clear_opname_map (m)
opname_map *m;
static void
clear_opname_map (opname_map *m)
{
opname_map_e *e;
@ -964,9 +799,7 @@ clear_opname_map (m)
static bfd_boolean
same_operand_name (m1, m2)
const opname_map_e *m1;
const opname_map_e *m2;
same_operand_name (const opname_map_e *m1, const opname_map_e *m2)
{
if (m1->operand_name == NULL || m1->operand_name == NULL)
return FALSE;
@ -974,10 +807,8 @@ same_operand_name (m1, m2)
}
opname_map_e *
get_opmatch (map, operand_name)
opname_map *map;
const char *operand_name;
static opname_map_e *
get_opmatch (opname_map *map, const char *operand_name)
{
opname_map_e *m;
@ -990,35 +821,31 @@ get_opmatch (map, operand_name)
}
bfd_boolean
op_is_constant (m1)
const opname_map_e *m1;
static bfd_boolean
op_is_constant (const opname_map_e *m1)
{
return (m1->operand_name == NULL);
}
static unsigned
op_get_constant (m1)
const opname_map_e *m1;
op_get_constant (const opname_map_e *m1)
{
assert (m1->operand_name == NULL);
return m1->constant_value;
}
void
init_precond_list (l)
precond_list *l;
static void
init_precond_list (precond_list *l)
{
l->head = NULL;
l->tail = &l->head;
}
void
clear_precond_list (l)
precond_list *l;
static void
clear_precond_list (precond_list *l)
{
precond_e *e;
@ -1032,26 +859,23 @@ clear_precond_list (l)
}
void
init_insn_templ (t)
insn_templ *t;
static void
init_insn_templ (insn_templ *t)
{
t->opcode_name = NULL;
init_opname_map (&t->operand_map);
}
void
clear_insn_templ (t)
insn_templ *t;
static void
clear_insn_templ (insn_templ *t)
{
clear_opname_map (&t->operand_map);
}
void
init_insn_pattern (p)
insn_pattern *p;
static void
init_insn_pattern (insn_pattern *p)
{
init_insn_templ (&p->t);
init_precond_list (&p->preconds);
@ -1059,27 +883,24 @@ init_insn_pattern (p)
}
void
clear_insn_pattern (p)
insn_pattern *p;
static void
clear_insn_pattern (insn_pattern *p)
{
clear_insn_templ (&p->t);
clear_precond_list (&p->preconds);
}
void
init_insn_repl (r)
insn_repl *r;
static void
init_insn_repl (insn_repl *r)
{
r->head = NULL;
r->tail = &r->head;
}
void
clear_insn_repl (r)
insn_repl *r;
static void
clear_insn_repl (insn_repl *r)
{
insn_repl_e *e;
@ -1094,8 +915,7 @@ clear_insn_repl (r)
static int
insn_templ_operand_count (t)
const insn_templ *t;
insn_templ_operand_count (const insn_templ *t)
{
int i = 0;
const opname_map_e *op;
@ -1108,10 +928,8 @@ insn_templ_operand_count (t)
/* Convert a string to a number. E.G.: parse_constant("10", &num) */
bfd_boolean
parse_constant (in, val_p)
const char *in;
unsigned *val_p;
static bfd_boolean
parse_constant (const char *in, unsigned *val_p)
{
unsigned val = 0;
const char *p;
@ -1137,11 +955,8 @@ parse_constant (in, val_p)
parse_id_constant("foo1", "foo", &num).
This may also be used to just match a number. */
bfd_boolean
parse_id_constant (in, name, val_p)
const char *in;
const char *name;
unsigned *val_p;
static bfd_boolean
parse_id_constant (const char *in, const char *name, unsigned *val_p)
{
unsigned namelen = 0;
const char *p;
@ -1161,10 +976,9 @@ parse_id_constant (in, name, val_p)
static bfd_boolean
parse_special_fn (name, fn_name_p, arg_name_p)
const char *name;
const char **fn_name_p;
const char **arg_name_p;
parse_special_fn (const char *name,
const char **fn_name_p,
const char **arg_name_p)
{
char *p_start;
const char *p_end;
@ -1187,9 +1001,8 @@ parse_special_fn (name, fn_name_p, arg_name_p)
}
const char *
skip_white (p)
const char *p;
static const char *
skip_white (const char *p)
{
if (p == NULL)
return p;
@ -1199,9 +1012,8 @@ skip_white (p)
}
void
trim_whitespace (in)
char *in;
static void
trim_whitespace (char *in)
{
char *last_white = NULL;
char *p = in;
@ -1228,12 +1040,11 @@ trim_whitespace (in)
/* Split a string into component strings where "c" is the
delimiter. Place the result in the split_rec. */
void
split_string (rec, in, c, elide_whitespace)
split_rec *rec;
const char *in;
char c;
bfd_boolean elide_whitespace;
static void
split_string (split_rec *rec,
const char *in,
char c,
bfd_boolean elide_whitespace)
{
int cnt = 0;
int i;
@ -1284,9 +1095,8 @@ split_string (rec, in, c, elide_whitespace)
}
void
clear_split_rec (rec)
split_rec *rec;
static void
clear_split_rec (split_rec *rec)
{
int i;
@ -1301,9 +1111,8 @@ clear_split_rec (rec)
/* Initialize a split record. The split record must be initialized
before split_string is called. */
void
init_split_rec (rec)
split_rec *rec;
static void
init_split_rec (split_rec *rec)
{
rec->vec = NULL;
rec->count = 0;
@ -1312,10 +1121,8 @@ init_split_rec (rec)
/* Parse an instruction template like "insn op1, op2, op3". */
bfd_boolean
parse_insn_templ (s, t)
const char *s;
insn_templ *t;
static bfd_boolean
parse_insn_templ (const char *s, insn_templ *t)
{
const char *p = s;
int insn_name_len;
@ -1374,10 +1181,8 @@ parse_insn_templ (s, t)
}
bfd_boolean
parse_precond (s, precond)
const char *s;
precond_e *precond;
static bfd_boolean
parse_precond (const char *s, precond_e *precond)
{
/* All preconditions are currently of the form:
a == b or a != b or a == k (where k is a constant).
@ -1430,9 +1235,8 @@ parse_precond (s, precond)
}
void
clear_req_or_option_list (r_p)
ReqOrOption **r_p;
static void
clear_req_or_option_list (ReqOrOption **r_p)
{
if (*r_p == NULL)
return;
@ -1443,9 +1247,8 @@ clear_req_or_option_list (r_p)
}
void
clear_req_option_list (r_p)
ReqOption **r_p;
static void
clear_req_option_list (ReqOption **r_p)
{
if (*r_p == NULL)
return;
@ -1456,9 +1259,8 @@ clear_req_option_list (r_p)
}
ReqOrOption *
clone_req_or_option_list (req_or_option)
ReqOrOption *req_or_option;
static ReqOrOption *
clone_req_or_option_list (ReqOrOption *req_or_option)
{
ReqOrOption *new_req_or_option;
@ -1474,9 +1276,8 @@ clone_req_or_option_list (req_or_option)
}
ReqOption *
clone_req_option_list (req_option)
ReqOption *req_option;
static ReqOption *
clone_req_option_list (ReqOption *req_option)
{
ReqOption *new_req_option;
@ -1493,10 +1294,8 @@ clone_req_option_list (req_option)
}
bfd_boolean
parse_option_cond (s, option)
const char *s;
ReqOption *option;
static bfd_boolean
parse_option_cond (const char *s, ReqOption *option)
{
int i;
split_rec option_term_rec;
@ -1560,10 +1359,8 @@ parse_option_cond (s, option)
split_string, it requires that '|' and '?' are only used as
delimiters for predicates and required options. */
bfd_boolean
parse_insn_pattern (in, insn)
const char *in;
insn_pattern *insn;
static bfd_boolean
parse_insn_pattern (const char *in, insn_pattern *insn)
{
split_rec rec;
split_rec optionrec;
@ -1644,10 +1441,8 @@ parse_insn_pattern (in, insn)
}
bfd_boolean
parse_insn_repl (in, r_p)
const char *in;
insn_repl *r_p;
static bfd_boolean
parse_insn_repl (const char *in, insn_repl *r_p)
{
/* This is a list of instruction templates separated by ';'. */
split_rec rec;
@ -1674,11 +1469,10 @@ parse_insn_repl (in, r_p)
}
bfd_boolean
transition_applies (initial_insn, from_string, to_string)
insn_pattern *initial_insn;
const char *from_string ATTRIBUTE_UNUSED;
const char *to_string ATTRIBUTE_UNUSED;
static bfd_boolean
transition_applies (insn_pattern *initial_insn,
const char *from_string ATTRIBUTE_UNUSED,
const char *to_string ATTRIBUTE_UNUSED)
{
ReqOption *req_option;
@ -1727,12 +1521,11 @@ transition_applies (initial_insn, from_string, to_string)
}
TransitionRule *
build_transition (initial_insn, replace_insns, from_string, to_string)
insn_pattern *initial_insn;
insn_repl *replace_insns;
const char *from_string;
const char *to_string;
static TransitionRule *
build_transition (insn_pattern *initial_insn,
insn_repl *replace_insns,
const char *from_string,
const char *to_string)
{
TransitionRule *tr = NULL;
xtensa_opcode opcode;
@ -2019,11 +1812,10 @@ build_transition (initial_insn, replace_insns, from_string, to_string)
}
TransitionTable *
build_transition_table (transitions, transition_count, cmp)
const string_pattern_pair *transitions;
int transition_count;
transition_cmp_fn cmp;
static TransitionTable *
build_transition_table (const string_pattern_pair *transitions,
int transition_count,
transition_cmp_fn cmp)
{
TransitionTable *table = NULL;
int num_opcodes = xtensa_isa_num_opcodes (xtensa_default_isa);
@ -2090,8 +1882,7 @@ build_transition_table (transitions, transition_count, cmp)
extern TransitionTable *
xg_build_widen_table (cmp)
transition_cmp_fn cmp;
xg_build_widen_table (transition_cmp_fn cmp)
{
static TransitionTable *table = NULL;
if (table == NULL)
@ -2101,8 +1892,7 @@ xg_build_widen_table (cmp)
extern TransitionTable *
xg_build_simplify_table (cmp)
transition_cmp_fn cmp;
xg_build_simplify_table (transition_cmp_fn cmp)
{
static TransitionTable *table = NULL;
if (table == NULL)

View file

@ -173,10 +173,10 @@ struct transition_rule
typedef int (*transition_cmp_fn) (const TransitionRule *,
const TransitionRule *);
extern TransitionTable *xg_build_simplify_table PARAMS ((transition_cmp_fn));
extern TransitionTable *xg_build_widen_table PARAMS ((transition_cmp_fn));
extern TransitionTable *xg_build_simplify_table (transition_cmp_fn);
extern TransitionTable *xg_build_widen_table (transition_cmp_fn);
extern bfd_boolean xg_has_userdef_op_fn PARAMS ((OpType));
extern long xg_apply_userdef_op_fn PARAMS ((OpType, long));
extern bfd_boolean xg_has_userdef_op_fn (OpType);
extern long xg_apply_userdef_op_fn (OpType, long);
#endif /* !XTENSA_RELAX_H */

View file

@ -1,3 +1,7 @@
2004-10-12 Bob Wilson <bob.wilson@acm.org>
* emultempl/xtensaelf.em: Use ISO C90 formatting.
2004-10-11 Jakub Jelinek <jakub@redhat.com>
* emultempl/elf32.em (gld${EMULATION_NAME}_parse_ld_so_conf): Avoid

View file

@ -32,10 +32,6 @@ cat >>e${EMULATION_NAME}.c <<EOF
static void xtensa_wild_group_interleave (lang_statement_union_type *);
static void xtensa_colocate_output_literals (lang_statement_union_type *);
static void remove_section (bfd *, asection *);
static bfd_boolean replace_insn_sec_with_prop_sec (bfd *, const char *,
const char *, char **);
static void replace_instruction_table_sections (bfd *, asection *);
/* Flag for the emulation-specific "--no-relax" option. */
@ -82,10 +78,8 @@ elf_xtensa_before_parse (void)
}
void
remove_section (abfd, os)
bfd *abfd;
asection *os;
static void
remove_section (bfd *abfd, asection *os)
{
asection **spp;
for (spp = &abfd->sections; *spp; spp = &(*spp)->next)
@ -98,13 +92,11 @@ remove_section (abfd, os)
}
bfd_boolean
replace_insn_sec_with_prop_sec (abfd, insn_sec_name, prop_sec_name,
error_message)
bfd *abfd;
const char *insn_sec_name;
const char *prop_sec_name;
char **error_message;
static bfd_boolean
replace_insn_sec_with_prop_sec (bfd *abfd,
const char *insn_sec_name,
const char *prop_sec_name,
char **error_message)
{
asection *insn_sec;
asection *prop_sec;
@ -269,10 +261,8 @@ replace_insn_sec_with_prop_sec (abfd, insn_sec_name, prop_sec_name,
#define LINKONCE_SEC_OLD_TEXT_BASE_NAME ".gnu.linkonce.x."
void
replace_instruction_table_sections (abfd, sec)
bfd *abfd;
asection *sec;
static void
replace_instruction_table_sections (bfd *abfd, asection *sec)
{
char *message = "";
const char *insn_sec_name = NULL;
@ -445,8 +435,7 @@ typedef void (*deps_callback_t) (asection *, /* src_sec */
extern bfd_boolean xtensa_callback_required_dependence
(bfd *, asection *, struct bfd_link_info *, deps_callback_t, void *);
static void xtensa_ldlang_clear_addresses
(lang_statement_union_type *);
static void xtensa_ldlang_clear_addresses (lang_statement_union_type *);
static bfd_boolean ld_local_file_relocations_fit
(lang_statement_union_type *, const reloc_deps_graph *);
static bfd_vma ld_assign_relative_paged_dot
@ -455,8 +444,7 @@ static bfd_vma ld_assign_relative_paged_dot
static bfd_vma ld_xtensa_insert_page_offsets
(bfd_vma, lang_statement_union_type *, reloc_deps_graph *, bfd_boolean);
#if EXTRA_VALIDATION
static size_t ld_count_children
(lang_statement_union_type *);
static size_t ld_count_children (lang_statement_union_type *);
#endif
extern lang_statement_list_type constructor_list;
@ -634,6 +622,7 @@ section_is_target (const reloc_deps_graph *deps ATTRIBUTE_UNUSED,
return sec_deps && sec_deps->preds != NULL;
}
static bfd_boolean
section_is_source_or_target (const reloc_deps_graph *deps ATTRIBUTE_UNUSED,
lang_statement_union_type *s)
@ -860,8 +849,7 @@ iter_stack_create (xtensa_ld_iter_stack **stack_p,
static void
iter_stack_copy_current (xtensa_ld_iter_stack **stack_p,
xtensa_ld_iter *front)
iter_stack_copy_current (xtensa_ld_iter_stack **stack_p, xtensa_ld_iter *front)
{
*front = (*stack_p)->iterloc;
}
@ -1027,9 +1015,7 @@ xtensa_move_dependencies_to_front (reloc_deps_graph *deps,
static bfd_boolean
deps_has_sec_edge (const reloc_deps_graph *deps,
asection *src,
asection *tgt)
deps_has_sec_edge (const reloc_deps_graph *deps, asection *src, asection *tgt)
{
const reloc_deps_section *sec_deps;
const reloc_deps_e *sec_deps_e;
@ -1071,9 +1057,7 @@ deps_has_edge (const reloc_deps_graph *deps,
static void
add_deps_edge (reloc_deps_graph *deps,
asection *src_sec,
asection *tgt_sec)
add_deps_edge (reloc_deps_graph *deps, asection *src_sec, asection *tgt_sec)
{
reloc_deps_section *src_sec_deps;
reloc_deps_section *tgt_sec_deps;
@ -1295,8 +1279,7 @@ xtensa_wild_group_interleave (lang_statement_union_type *s)
static void
xtensa_layout_wild (const reloc_deps_graph *deps,
lang_wild_statement_type *w)
xtensa_layout_wild (const reloc_deps_graph *deps, lang_wild_statement_type *w)
{
/* If it does not fit initially, we need to do this step. Move all
of the wild literal sections to a new list, then move each of

View file

@ -1,3 +1,7 @@
2004-10-12 Bob Wilson <bob.wilson@acm.org>
* xtensa-dis.c: Use ISO C90 formatting.
2004-10-09 Alan Modra <amodra@bigpond.net.au>
* ppc-opc.c: Revert 2004-09-09 change.

View file

@ -39,11 +39,6 @@ extern xtensa_isa xtensa_default_isa;
int show_raw_fields;
static int fetch_data
PARAMS ((struct disassemble_info *, bfd_vma));
static void print_xtensa_operand
PARAMS ((bfd_vma, struct disassemble_info *, xtensa_opcode, int, unsigned));
struct dis_private
{
bfd_byte *byte_buf;
@ -52,9 +47,7 @@ struct dis_private
static int
fetch_data (info, memaddr)
struct disassemble_info *info;
bfd_vma memaddr;
fetch_data (struct disassemble_info *info, bfd_vma memaddr)
{
int length, status = 0;
struct dis_private *priv = (struct dis_private *) info->private_data;
@ -79,12 +72,11 @@ fetch_data (info, memaddr)
static void
print_xtensa_operand (memaddr, info, opc, opnd, operand_val)
bfd_vma memaddr;
struct disassemble_info *info;
xtensa_opcode opc;
int opnd;
unsigned operand_val;
print_xtensa_operand (bfd_vma memaddr,
struct disassemble_info *info,
xtensa_opcode opc,
int opnd,
unsigned operand_val)
{
xtensa_isa isa = xtensa_default_isa;
int signed_operand_val;
@ -141,9 +133,7 @@ print_xtensa_operand (memaddr, info, opc, opnd, operand_val)
Returns length of the instruction in bytes. */
int
print_insn_xtensa (memaddr, info)
bfd_vma memaddr;
struct disassemble_info *info;
print_insn_xtensa (bfd_vma memaddr, struct disassemble_info *info)
{
unsigned operand_val;
int bytes_fetched, size, maxsize, i, n, noperands, nslots;
@ -184,7 +174,7 @@ print_insn_xtensa (memaddr, info)
priv.byte_buf = byte_buf;
info->private_data = (PTR) &priv;
info->private_data = (void *) &priv;
if (setjmp (priv.bailout) != 0)
/* Error return. */
return -1;