xref: /netbsd-src/external/gpl3/binutils/dist/gas/config/rl78-defs.h (revision 6d322f2f4598f0d8a138f10ea648ec4fabe41f8b)
1 /* rl78-defs.h Renesas RL78 internal definitions
2    Copyright 2008, 2009
3    Free Software Foundation, Inc.
4 
5    This file is part of GAS, the GNU Assembler.
6 
7    GAS is free software; you can redistribute it and/or modify
8    it under the terms of the GNU General Public License as published by
9    the Free Software Foundation; either version 3, or (at your option)
10    any later version.
11 
12    GAS is distributed in the hope that it will be useful,
13    but WITHOUT ANY WARRANTY; without even the implied warranty of
14    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15    GNU General Public License for more details.
16 
17    You should have received a copy of the GNU General Public License
18    along with GAS; see the file COPYING.  If not, write to the Free
19    Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
20    02110-1301, USA.  */
21 
22 #ifndef RL78_DEFS_H
23 #define RL78_DEFS_H
24 
25 /* Third operand to rl78_op.  */
26 #define RL78REL_DATA		0
27 #define RL78REL_PCREL		1
28 
29 extern int    rl78_error (const char *);
30 extern void   rl78_lex_init (char *, char *);
31 extern void   rl78_prefix (int);
32 extern int    rl78_has_prefix (void);
33 extern void   rl78_base1 (int);
34 extern void   rl78_base2 (int, int);
35 extern void   rl78_base3 (int, int, int);
36 extern void   rl78_base4 (int, int, int, int);
37 extern void   rl78_field (int, int, int);
38 extern void   rl78_op (expressionS, int, int);
39 extern void   rl78_disp3 (expressionS, int);
40 extern void   rl78_field5s (expressionS);
41 extern void   rl78_field5s2 (expressionS);
42 extern void   rl78_relax (int, int);
43 extern void   rl78_linkrelax_addr16 (void);
44 extern void   rl78_linkrelax_branch (void);
45 extern int    rl78_parse (void);
46 extern int    rl78_wrap (void);
47 
48 extern char * rl78_lex_start;
49 extern char * rl78_lex_end;
50 #endif
51