rx-defs.h revision 1.1.1.7.2.1 1 1.1 christos /* rx-defs.h Renesas RX internal definitions
2 1.1.1.7.2.1 perseant Copyright (C) 2008-2024 Free Software Foundation, Inc.
3 1.1 christos
4 1.1 christos This file is part of GAS, the GNU Assembler.
5 1.1 christos
6 1.1 christos GAS is free software; you can redistribute it and/or modify
7 1.1 christos it under the terms of the GNU General Public License as published by
8 1.1 christos the Free Software Foundation; either version 3, or (at your option)
9 1.1 christos any later version.
10 1.1 christos
11 1.1 christos GAS is distributed in the hope that it will be useful,
12 1.1 christos but WITHOUT ANY WARRANTY; without even the implied warranty of
13 1.1 christos MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 1.1 christos GNU General Public License for more details.
15 1.1 christos
16 1.1 christos You should have received a copy of the GNU General Public License
17 1.1 christos along with GAS; see the file COPYING. If not, write to the Free
18 1.1 christos Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
19 1.1 christos 02110-1301, USA. */
20 1.1 christos
21 1.1 christos #ifndef RX_DEFS_H
22 1.1.1.3 christos #define RX_DEFS_H
23 1.1 christos
24 1.1 christos /* Third operand to rx_op. */
25 1.1 christos #define RXREL_SIGNED 0
26 1.1 christos #define RXREL_UNSIGNED 1
27 1.1 christos #define RXREL_NEGATIVE 2
28 1.1 christos #define RXREL_PCREL 3
29 1.1 christos #define RXREL_NEGATIVE_BORROW 4
30 1.1 christos
31 1.1 christos #define RX_RELAX_NONE 0
32 1.1 christos #define RX_RELAX_BRANCH 1
33 1.1 christos #define RX_RELAX_IMM 2
34 1.1 christos #define RX_RELAX_DISP 3
35 1.1 christos
36 1.1.1.3 christos enum rx_cpu_types
37 1.1.1.3 christos {
38 1.1.1.3 christos RX600,
39 1.1.1.3 christos RX610,
40 1.1.1.3 christos RX200,
41 1.1.1.4 christos RX100,
42 1.1.1.6 christos RXV2,
43 1.1.1.6 christos RXV3,
44 1.1.1.6 christos RXV3FPU,
45 1.1.1.3 christos };
46 1.1.1.3 christos
47 1.1.1.2 christos extern int rx_pid_register;
48 1.1.1.2 christos extern int rx_gp_register;
49 1.1.1.3 christos extern enum rx_cpu_types rx_cpu;
50 1.1.1.2 christos
51 1.1.1.2 christos extern int rx_error (const char *);
52 1.1 christos extern void rx_lex_init (char *, char *);
53 1.1 christos extern void rx_base1 (int);
54 1.1 christos extern void rx_base2 (int, int);
55 1.1 christos extern void rx_base3 (int, int, int);
56 1.1 christos extern void rx_base4 (int, int, int, int);
57 1.1 christos extern void rx_field (int, int, int);
58 1.1 christos extern void rx_op (expressionS, int, int);
59 1.1 christos extern void rx_disp3 (expressionS, int);
60 1.1 christos extern void rx_field5s (expressionS);
61 1.1 christos extern void rx_field5s2 (expressionS);
62 1.1.1.6 christos extern void rx_bfield (expressionS, expressionS, expressionS);
63 1.1 christos extern void rx_relax (int, int);
64 1.1 christos extern void rx_linkrelax_dsp (int);
65 1.1 christos extern void rx_linkrelax_imm (int);
66 1.1 christos extern void rx_linkrelax_branch (void);
67 1.1 christos extern int rx_parse (void);
68 1.1 christos extern int rx_wrap (void);
69 1.1.1.3 christos extern void rx_note_string_insn_use (void);
70 1.1.1.6 christos extern void rx_post (char);
71 1.1 christos
72 1.1 christos extern char * rx_lex_start;
73 1.1 christos extern char * rx_lex_end;
74 1.1.1.3 christos
75 1.1.1.3 christos #endif /* RX_DEFS_H */
76