* config/obj-coff.c, config/tc-arm.c, config/tc-bfin.c,
config/tc-cris.c, config/tc-crx.c, config/tc-i386.c,
config/tc-ia64.c, config/tc-maxq.c, config/tc-maxq.h,
config/tc-mips.c, config/tc-msp430.c, config/tc-sh.c,
config/tc-tic4x.c, config/tc-xtensa.c: Fix comment typos.
2006-04-23 22:12:43 +00:00
|
|
|
/* tc-maxq.h -- Header file for the assembler(MAXQ)
|
2004-11-08 13:17:43 +00:00
|
|
|
|
* README-vms: Delete.
* config-gas.com: Delete.
* makefile.vms: Delete.
* vmsconf.sh: Delete.
* config/atof-tahoe.c: Delete.
* config/m88k-opcode.h: Delete.
* config/obj-bout.c: Delete.
* config/obj-bout.h: Delete.
* config/obj-hp300.c: Delete.
* config/obj-hp300.h: Delete.
* config/tc-a29k.c: Delete.
* config/tc-a29k.h: Delete.
* config/tc-h8500.c: Delete.
* config/tc-h8500.h: Delete.
* config/tc-m88k.c: Delete.
* config/tc-m88k.h: Delete.
* config/tc-tahoe.c: Delete.
* config/tc-tahoe.h: Delete.
* config/tc-tic80.c: Delete.
* config/tc-tic80.h: Delete.
* config/tc-w65.c: Delete.
* config/tc-w65.h: Delete.
* config/te-aux.h: Delete.
* config/te-delt88.h: Delete.
* config/te-delta.h: Delete.
* config/te-dpx2.h: Delete.
* config/te-hp300.h: Delete.
* config/te-ic960.h: Delete.
* config/vms-a-conf.h: Delete.
* doc/c-a29k.texi: Delete.
* doc/c-h8500.texi: Delete.
* doc/c-m88k.texi: Delete.
* README: Remove obsolete examples, and list of supported targets.
* Makefile.am: Remove a29k, h8500, m88k, tahoe, tic80, w65,
bout and hp300 support.
(DEP_FLAGS): Don't define BFD_ASSEMBLER.
* configure.in: Remove --enable-bfd-assembler, need_bfd,
primary_bfd_gas.
* configure.tgt: Remove a29k, h8300-coff, h8500-*, i960 non-elf,
m68k non bfd, m88k, or32-coff, tic80-*, vax non-bfd, w65k-*, *-nindy.
* as.c: Remove all non-BFD_ASSEMBLER code, support for above targets.
* as.h: Likewise.
* dw2gencfi.c: Likewise.
* dwarf2dbg.c: Likewise.
* ehopt.c: Likewise.
* input-file.c: Likewise.
* listing.c: Likewise.
* literal.c: Likewise.
* messages.c: Likewise.
* obj.h: Likewise.
* output-file.c: Likewise.
* read.c: Likewise.
* stabs.c: Likewise.
* struc-symbol.h: Likewise.
* subsegs.c: Likewise.
* subsegs.h: Likewise.
* symbols.c: Likewise.
* symbols.h: Likewise.
* tc.h: Likewise.
* write.c: Likewise.
* write.h: Likewise.
* config/aout_gnu.h: Likewise.
* config/obj-aout.c: Likewise.
* config/obj-aout.h: Likewise.
* config/obj-coff.c: Likewise.
* config/obj-coff.h: Likewise.
* config/obj-evax.h: Likewise.
* config/obj-ieee.h: Likewise.
* config/tc-arm.c: Likewise.
* config/tc-arm.h: Likewise.
* config/tc-avr.c: Likewise.
* config/tc-avr.h: Likewise.
* config/tc-crx.h: Likewise.
* config/tc-d10v.h: Likewise.
* config/tc-d30v.h: Likewise.
* config/tc-dlx.h: Likewise.
* config/tc-fr30.h: Likewise.
* config/tc-frv.h: Likewise.
* config/tc-h8300.c: Likewise.
* config/tc-h8300.h: Likewise.
* config/tc-hppa.h: Likewise.
* config/tc-i370.h: Likewise.
* config/tc-i386.c: Likewise.
* config/tc-i386.h: Likewise.
* config/tc-i860.h: Likewise.
* config/tc-i960.c: Likewise.
* config/tc-i960.h: Likewise.
* config/tc-ip2k.h: Likewise.
* config/tc-iq2000.h: Likewise.
* config/tc-m32c.h: Likewise.
* config/tc-m32r.h: Likewise.
* config/tc-m68hc11.h: Likewise.
* config/tc-m68k.c: Likewise.
* config/tc-m68k.h: Likewise.
* config/tc-maxq.c: Likewise.
* config/tc-maxq.h: Likewise.
* config/tc-mcore.c: Likewise.
* config/tc-mcore.h: Likewise.
* config/tc-mn10200.h: Likewise.
* config/tc-mn10300.c: Likewise.
* config/tc-mn10300.h: Likewise.
* config/tc-ms1.h: Likewise.
* config/tc-msp430.c: Likewise.
* config/tc-msp430.h: Likewise.
* config/tc-ns32k.c: Likewise.
* config/tc-ns32k.h: Likewise.
* config/tc-openrisc.h: Likewise.
* config/tc-or32.c: Likewise.
* config/tc-or32.h: Likewise.
* config/tc-ppc.c: Likewise.
* config/tc-ppc.h: Likewise.
* config/tc-s390.h: Likewise.
* config/tc-sh.c: Likewise.
* config/tc-sh.h: Likewise.
* config/tc-sparc.c: Likewise.
* config/tc-tic30.c: Likewise.
* config/tc-tic30.h: Likewise.
* config/tc-tic4x.c: Likewise.
* config/tc-tic4x.h: Likewise.
* config/tc-tic54x.c: Likewise.
* config/tc-tic54x.h: Likewise.
* config/tc-v850.h: Likewise.
* config/tc-vax.c: Likewise.
* config/tc-vax.h: Likewise.
* config/tc-xstormy16.h: Likewise.
* config/tc-xtensa.h: Likewise.
* config/tc-z8k.c: Likewise.
* config/tc-z8k.h: Likewise.
* config/vms-a-conf.h
* doc/Makefile.am: Likewise.
* doc/all.texi: Likewise.
* doc/as.texinfo: Likewise.
* doc/Makefile.in: Regenerate.
* Makefile.in: Regenerate.
* configure: Regenerate.
* config.in: Regenerate.
* po/POTFILES.in: Regenerate.
2005-08-11 01:25:29 +00:00
|
|
|
Copyright 2004, 2005 Free Software Foundation, Inc.
|
2004-11-08 13:17:43 +00:00
|
|
|
|
|
|
|
Contributed by HCL Technologies Pvt. Ltd.
|
|
|
|
|
|
|
|
Written by Vineet Sharma(vineets@noida.hcltech.com) Inderpreet
|
|
|
|
S.(inderpreetb@noida.hcltech.com)
|
|
|
|
|
|
|
|
This file is part of GAS.
|
|
|
|
|
|
|
|
GAS is free software; you can redistribute it and/or modify it under the
|
|
|
|
terms of the GNU General Public License as published by the Free Software
|
|
|
|
Foundation; either version 2, or (at your option) any later version.
|
|
|
|
|
|
|
|
GAS is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
|
|
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
|
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
|
|
|
details.
|
|
|
|
|
|
|
|
You should have received a copy of the GNU General Public License along
|
|
|
|
with GAS; see the file COPYING. If not, write to the Free Software
|
2005-05-05 09:13:19 +00:00
|
|
|
Foundation, 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */
|
2004-11-08 13:17:43 +00:00
|
|
|
|
|
|
|
#ifndef _TC_MAXQ_H_
|
|
|
|
#define _TC_MAXQ_H_
|
|
|
|
|
|
|
|
#ifndef NO_RELOC
|
|
|
|
#define NO_RELOC 0
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/* `md_short_jump_size' `md_long_jump_size' `md_create_short_jump'
|
|
|
|
`md_create_long_jump' If `WORKING_DOT_WORD' is defined, GAS will not do
|
|
|
|
broken word processing (*note Broken words::.). Otherwise, you should set
|
|
|
|
`md_short_jump_size' to the size of a short jump (a jump that is just long
|
|
|
|
enough to jump around a long jmp) and `md_long_jump_size' to the size of a
|
|
|
|
long jump (a jump that can go anywhere in the function), You should define
|
|
|
|
`md_create_short_jump' to create a short jump around a long jump, and
|
|
|
|
define `md_create_long_jump' to create a long jump. */
|
|
|
|
#define WORKING_DOT_WORD
|
|
|
|
typedef enum _RELOC_ENUM
|
|
|
|
{
|
|
|
|
MAXQ_WORDDATA = 5, /* Word+n. */
|
|
|
|
MAXQ_LONGDATA = 2, /* Long+n. */
|
|
|
|
MAXQ_INTERSEGMENT = 4, /* Text to any other segment. */
|
|
|
|
MAXQ_SHORTJUMP = BFD_RELOC_16_PCREL_S2, /* PC Relative. */
|
|
|
|
MAXQ_LONGJUMP = 6, /* Absolute Jump. */
|
|
|
|
EXTERNAL_RELOC = 8,
|
|
|
|
INTERSEGMENT_RELOC
|
|
|
|
}
|
|
|
|
RELOC_ENUM;
|
|
|
|
|
|
|
|
#ifndef MAX_STACK
|
|
|
|
#define MAX_STACK 0xf
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef TC_MAXQ20
|
|
|
|
#define TC_MAXQ20 1
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef MAX_OPERAND_SIZE
|
|
|
|
#define MAX_OPERAND_SIZE 255
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef MAXQ_INSTRUCTION_SIZE
|
|
|
|
#define MAXQ_INSTRUCTION_SIZE 2 /* 16 - BITS */
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if MAXQ_INSTRUCTION_SIZE
|
|
|
|
#define MAXQ_OCTETS_PER_BYTE MAXQ_INSTRUCTION_SIZE
|
|
|
|
#else
|
|
|
|
#define MAXQ_OCTETS_PER_BYTE OCTETS_PER_BYTE
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/* if this macro is defined gas will use this instead of comment_chars. */
|
|
|
|
#define tc_comments_chars maxq20_comment_chars
|
|
|
|
|
|
|
|
#define tc_coff_symbol_emit_hook(a) ; /* not used */
|
|
|
|
|
|
|
|
#define md_section_align(SEGMENT, SIZE) (SIZE)
|
|
|
|
|
|
|
|
/* Locally defined symbol shoudnot be adjusted to section symbol. */
|
|
|
|
#define tc_fix_adjustable(FIX) 0
|
|
|
|
|
|
|
|
/* This specifies that the target has been defined as little endian -
|
|
|
|
default. */
|
|
|
|
#define TARGET_BYTES_BIG_ENDIAN 0
|
|
|
|
|
|
|
|
#define MAX_MEM_NAME_SIZE 12
|
|
|
|
#define MAX_REG_NAME_SIZE 7
|
|
|
|
#define MAX_MNEM_SIZE 8
|
|
|
|
|
|
|
|
#define END_OF_INSN '\0'
|
|
|
|
|
|
|
|
/* This macro is the BFD archetectureto pass to 'bfd_set_arch_mach'. */
|
|
|
|
#define TARGET_ARCH bfd_arch_maxq
|
|
|
|
|
|
|
|
/* This macro is the BFD machine number to pass to 'bfd_set_arch_mach'.
|
|
|
|
If not defines GAS will use 0. */
|
|
|
|
#define TARGET_MACH maxq20_mach ()
|
|
|
|
extern unsigned long maxq20_mach (void);
|
|
|
|
|
|
|
|
#ifndef LEX_AT
|
|
|
|
/* We define this macro to generate a fixup for a data allocation pseudo-op. */
|
|
|
|
#define TC_CONS_FIX_NEW(FRAG,OFF,LEN,EXP) maxq20_cons_fix_new (FRAG,OFF,LEN,EXP)
|
|
|
|
extern void maxq20_cons_fix_new (fragS *, unsigned int, unsigned int, expressionS *);
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/* Define md_number_to_chars as the appropriate standard big endian or This
|
|
|
|
should just call either `number_to_chars_bigendian' or
|
|
|
|
`number_to_chars_littleendian', whichever is appropriate. On targets like
|
|
|
|
the MIPS which support options to change the endianness, which function to
|
|
|
|
call is a runtime decision. On other targets, `md_number_to_chars' can be
|
|
|
|
a simple macro. */
|
|
|
|
#define md_number_to_chars maxq_number_to_chars
|
|
|
|
extern void maxq_number_to_chars (char *, valueT, int);
|
|
|
|
|
|
|
|
/* If this macro is defined, it is a pointer to a NULL terminated list of
|
* config/obj-coff.c, config/tc-arm.c, config/tc-bfin.c,
config/tc-cris.c, config/tc-crx.c, config/tc-i386.c,
config/tc-ia64.c, config/tc-maxq.c, config/tc-maxq.h,
config/tc-mips.c, config/tc-msp430.c, config/tc-sh.c,
config/tc-tic4x.c, config/tc-xtensa.c: Fix comment typos.
2006-04-23 22:12:43 +00:00
|
|
|
characters which may appear in an operand. GAS already assumes that all
|
|
|
|
alphanumeric characters, and '$', '.', and '_' may appear in an
|
2004-11-08 13:17:43 +00:00
|
|
|
operand("symbol_char"in app.c). This macro may be defined to treat
|
* config/obj-coff.c, config/tc-arm.c, config/tc-bfin.c,
config/tc-cris.c, config/tc-crx.c, config/tc-i386.c,
config/tc-ia64.c, config/tc-maxq.c, config/tc-maxq.h,
config/tc-mips.c, config/tc-msp430.c, config/tc-sh.c,
config/tc-tic4x.c, config/tc-xtensa.c: Fix comment typos.
2006-04-23 22:12:43 +00:00
|
|
|
additional characters as appearing in an operand. This affects the way in
|
2004-11-08 13:17:43 +00:00
|
|
|
which GAS removes whitespaces before passing the string to md_assemble. */
|
|
|
|
#define tc_symbol_chars_extra_symbol_chars
|
|
|
|
|
|
|
|
/* Define away the call to md_operand in the expression parsing code. This is
|
|
|
|
called whenever the expression parser can't parse the input and gives the
|
|
|
|
assembler backend a chance to deal with it instead. */
|
|
|
|
#define md_operand(x)
|
|
|
|
|
|
|
|
#define MAX_OPERANDS 2 /* Max operands per instruction. */
|
|
|
|
#define MAX_IMMEDIATE_OPERANDS 1 /* Max immediate operands per instruction. */
|
|
|
|
#define MAX_MEMORY_OPERANDS 1 /* Max memory operands per instruction. */
|
|
|
|
|
|
|
|
/* Define the prefix we are using while trying to use an immediate value in
|
|
|
|
an instruction. e.g move A[0], #03h. */
|
|
|
|
#define IMMEDIATE_PREFIX '#'
|
|
|
|
|
|
|
|
#define ABSOLUTE_PREFIX '@'
|
|
|
|
|
|
|
|
/* This here defines the opcode of the nop operation on the MAXQ. We did
|
|
|
|
declare it here when we tried to fill the align bites with nop's but GAS
|
|
|
|
only expects nop's to be single byte instruction. */
|
|
|
|
#define NOP_OPCODE (char)0xDA3A
|
|
|
|
|
|
|
|
#define SIZE_OF_PM sizeof(pmodule) /* Size of the structure. */
|
|
|
|
|
|
|
|
#endif /* TC_MAXQ_H */
|