xref: /netbsd-src/external/gpl3/binutils.old/dist/gas/config/rx-defs.h (revision b83ebeba7f767758d2778bb0f9d7a76534253621)
1 /* rx-defs.h Renesas RX 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 RX_DEFS_H
23 #define RX_DEFS_H
24 
25 /* Third operand to rx_op.  */
26 #define RXREL_SIGNED		0
27 #define RXREL_UNSIGNED		1
28 #define RXREL_NEGATIVE		2
29 #define RXREL_PCREL		3
30 #define RXREL_NEGATIVE_BORROW	4
31 
32 #define RX_RELAX_NONE	0
33 #define RX_RELAX_BRANCH	1
34 #define RX_RELAX_IMM	2
35 #define RX_RELAX_DISP	3
36 
37 extern int rx_pid_register;
38 extern int rx_gp_register;
39 
40 extern int    rx_error (const char *);
41 extern void   rx_lex_init (char *, char *);
42 extern void   rx_base1 (int);
43 extern void   rx_base2 (int, int);
44 extern void   rx_base3 (int, int, int);
45 extern void   rx_base4 (int, int, int, int);
46 extern void   rx_field (int, int, int);
47 extern void   rx_op (expressionS, int, int);
48 extern void   rx_disp3 (expressionS, int);
49 extern void   rx_field5s (expressionS);
50 extern void   rx_field5s2 (expressionS);
51 extern void   rx_relax (int, int);
52 extern void   rx_linkrelax_dsp (int);
53 extern void   rx_linkrelax_imm (int);
54 extern void   rx_linkrelax_branch (void);
55 extern int    rx_parse (void);
56 extern int    rx_wrap (void);
57 
58 extern char * rx_lex_start;
59 extern char * rx_lex_end;
60 #endif
61