projects
/
binutils-gdb.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Thu Mar 20 13:42:01 1997 H.J. Lu <hjl@lucon.org>
[binutils-gdb.git]
/
gas
/
config
/
tc-m68k.c
diff --git
a/gas/config/tc-m68k.c
b/gas/config/tc-m68k.c
index ec92ca2efb67e9d5b33b193d26a68f020fb96e02..8d2b508cc56ca032b138b6e385c138ac8d8e3207 100644
(file)
--- a/
gas/config/tc-m68k.c
+++ b/
gas/config/tc-m68k.c
@@
-218,7
+218,7
@@
struct m68k_it
{
int fragoff; /* Where in the current opcode the frag ends */
symbolS *fadd;
{
int fragoff; /* Where in the current opcode the frag ends */
symbolS *fadd;
-
long
foff;
+
offsetT
foff;
int fragty;
}
fragb[4];
int fragty;
}
fragb[4];
@@
-265,6
+265,12
@@
static struct m68k_it the_ins; /* the instruction being assembled */
#define addword(w) the_ins.opcode[the_ins.numo++]=(w)
#define addword(w) the_ins.opcode[the_ins.numo++]=(w)
+/* Static functions. */
+
+static void insop PARAMS ((int, struct m68k_incant *));
+static void add_fix PARAMS ((int, struct m68k_exp *, int, int));
+static void add_frag PARAMS ((symbolS *, offsetT, int));
+
/* Like addword, but goes BEFORE general operands */
static void
insop (w, opcode)
/* Like addword, but goes BEFORE general operands */
static void
insop (w, opcode)
@@
-286,7
+292,7
@@
insop (w, opcode)
Blecch. */
static void
add_fix (width, exp, pc_rel, pc_fix)
Blecch. */
static void
add_fix (width, exp, pc_rel, pc_fix)
-
char
width;
+
int
width;
struct m68k_exp *exp;
int pc_rel;
int pc_fix;
struct m68k_exp *exp;
int pc_rel;
int pc_fix;
@@
-316,9
+322,9
@@
add_fix (width, exp, pc_rel, pc_fix)
ADD becomes the FR_SYMBOL field of the frag, and OFF the FR_OFFSET. */
static void
ADD becomes the FR_SYMBOL field of the frag, and OFF the FR_OFFSET. */
static void
-add_frag
(add,off,
type)
+add_frag
(add, off,
type)
symbolS *add;
symbolS *add;
-
long
off;
+
offsetT
off;
int type;
{
the_ins.fragb[the_ins.nfrag].fragoff=the_ins.numo;
int type;
{
the_ins.fragb[the_ins.nfrag].fragoff=the_ins.numo;
@@
-332,6
+338,10
@@
add_frag(add,off,type)
static char *crack_operand PARAMS ((char *str, struct m68k_op *opP));
static int get_num PARAMS ((struct m68k_exp *exp, int ok));
static char *crack_operand PARAMS ((char *str, struct m68k_op *opP));
static int get_num PARAMS ((struct m68k_exp *exp, int ok));
+static void m68k_ip PARAMS ((char *));
+static void insert_reg PARAMS ((const char *, int));
+static void select_control_regs PARAMS ((void));
+static void init_regtable PARAMS ((void));
static int reverse_16_bits PARAMS ((int in));
static int reverse_8_bits PARAMS ((int in));
static void install_gen_operand PARAMS ((int mode, int val));
static int reverse_16_bits PARAMS ((int in));
static int reverse_8_bits PARAMS ((int in));
static void install_gen_operand PARAMS ((int mode, int val));
@@
-359,6
+369,8
@@
static void s_mri_repeat PARAMS ((int));
static void s_mri_until PARAMS ((int));
static void s_mri_while PARAMS ((int));
static void s_mri_endw PARAMS ((int));
static void s_mri_until PARAMS ((int));
static void s_mri_while PARAMS ((int));
static void s_mri_endw PARAMS ((int));
+static void md_apply_fix_2 PARAMS ((fixS *, offsetT));
+static void md_convert_frag_1 PARAMS ((fragS *));
static int current_architecture;
static int current_architecture;
@@
-536,7
+548,10
@@
const pseudo_typeS md_pseudo_table[] =
/* The mote pseudo ops are put into the opcode table, since they
don't start with a . they look like opcodes to gas.
*/
/* The mote pseudo ops are put into the opcode table, since they
don't start with a . they look like opcodes to gas.
*/
-extern void obj_coff_section ();
+
+#ifdef M68KCOFF
+extern void obj_coff_section PARAMS ((int));
+#endif
CONST pseudo_typeS mote_pseudo_table[] =
{
CONST pseudo_typeS mote_pseudo_table[] =
{
@@
-2450,15
+2465,15
@@
m68k_ip (instring)
if (subs (&opP->disp))
{
add_fix ('l', &opP->disp, 1, 0);
if (subs (&opP->disp))
{
add_fix ('l', &opP->disp, 1, 0);
- add_frag ((symbolS *) 0, (
long
) 0, TAB (FBRANCH, LONG));
+ add_frag ((symbolS *) 0, (
offsetT
) 0, TAB (FBRANCH, LONG));
}
else if (adds (&opP->disp))
add_frag (adds (&opP->disp), offs (&opP->disp),
TAB (FBRANCH, SZ_UNDEF));
else
{
}
else if (adds (&opP->disp))
add_frag (adds (&opP->disp), offs (&opP->disp),
TAB (FBRANCH, SZ_UNDEF));
else
{
- /* add_frag
((symbolS *) 0, offs
(&opP->disp),
- TAB(FBRANCH,SHORT)); */
+ /* add_frag
((symbolS *) 0, offs
(&opP->disp),
+
TAB(FBRANCH,SHORT)); */
the_ins.opcode[the_ins.numo - 1] |= 0x40;
add_fix ('l', &opP->disp, 1, 0);
addword (0);
the_ins.opcode[the_ins.numo - 1] |= 0x40;
add_fix ('l', &opP->disp, 1, 0);
addword (0);
@@
-3061,7
+3076,7
@@
crack_operand (str, opP)
void
insert_reg (regname, regnum)
void
insert_reg (regname, regnum)
- char *regname;
+ c
onst c
har *regname;
int regnum;
{
char buf[100];
int regnum;
{
char buf[100];
@@
-3871,7
+3886,6
@@
md_atof (type, litP, sizeP)
LITTLENUM_TYPE words[MAX_LITTLENUMS];
LITTLENUM_TYPE *wordP;
char *t;
LITTLENUM_TYPE words[MAX_LITTLENUMS];
LITTLENUM_TYPE *wordP;
char *t;
- char *atof_ieee ();
switch (type)
{
switch (type)
{
@@
-4767,7
+4781,6
@@
get_num (exp, ok)
}
/* These are the back-ends for the various machine dependent pseudo-ops. */
}
/* These are the back-ends for the various machine dependent pseudo-ops. */
-void demand_empty_rest_of_line (); /* Hate those extra verbose names */
static void
s_data1 (ignore)
static void
s_data1 (ignore)