Home | History | Annotate | Line # | Download | only in config
      1   1.1  christos /* rx-defs.h Renesas RX internal definitions
      2  1.10  christos    Copyright (C) 2008-2025 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.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.3  christos enum rx_cpu_types
     37   1.3  christos {
     38   1.3  christos   RX600,
     39   1.3  christos   RX610,
     40   1.3  christos   RX200,
     41   1.5  christos   RX100,
     42   1.7  christos   RXV2,
     43   1.7  christos   RXV3,
     44   1.7  christos   RXV3FPU,
     45   1.3  christos };
     46   1.3  christos 
     47   1.1  christos extern int rx_pid_register;
     48   1.1  christos extern int rx_gp_register;
     49   1.3  christos extern enum rx_cpu_types rx_cpu;
     50   1.1  christos 
     51   1.1  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.7  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.3  christos extern void   rx_note_string_insn_use (void);
     70   1.7  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.3  christos 
     75   1.3  christos #endif /* RX_DEFS_H */
     76