mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-27 11:13:30 +08:00
a117b0a51c
binutils * readelf.c(get_machine_flags): Add v2 flag. gas * config/rx-defs.h(rx_cpu_type): Add RXV2 type. * config/tc-rx.c(cpu_type_list): New type lookup table. (md_parse_option): Use lookup table for choose cpu. (md_show_usage): Add rxv2 for mcpu option. * doc/c-rx.texi: Likewise. * config/rx-parse.y: Add v2 instructions and ACC register. (rx_check_v2): check v2 type. include/elf * rx.h(E_FLAG_RX_V2): New RXv2 type. include/opcode * rx.h: Add new instructions. opcoes * rx-deocde.opc(rx_decode_opcode): Add new instructions pattern. * rx-dis.c(register_name): Add new register. gas/testsuite * gas/rx/emaca.d: New. * gas/rx/emaca.sm: New. * gas/rx/emsba.d: New. * gas/rx/emsba.sm: New. * gas/rx/emula.d: New. * gas/rx/emula.sm: New. * gas/rx/fadd.d: Add new pattern. * gas/rx/fadd.sm: Add new pattern. * gas/rx/fmul.d: Add new pattern. * gas/rx/fmul.sm: Add new pattern. * gas/rx/fsqrt.d: New. * gas/rx/fsqrt.sm: New. * gas/rx/fsub.d: Add new pattern. * gas/rx/fsub.sm: Add new pattern. * gas/rx/ftou.d: New. * gas/rx/ftou.sm: New. * gas/rx/maclh.d: New. * gas/rx/maclh.sm: New. * gas/rx/maclo.d: Add new pattern. * gas/rx/maclo.sm: Add new pattern. * gas/rx/macros.inc: Add new register. * gas/rx/movco.d: New. * gas/rx/movco.sm: New. * gas/rx/movli.d: New. * gas/rx/movli.sm: New. * gas/rx/msbhi.d: New. * gas/rx/msbhi.sm: New. * gas/rx/msblh.d: New. * gas/rx/msblh.sm: New. * gas/rx/msblo.d: New. * gas/rx/msblo.sm: New. * gas/rx/mullh.d: New. * gas/rx/mullh.sm: New. * gas/rx/mvfacgu.d: New. * gas/rx/mvfacgu.sm: New. * gas/rx/mvfachi.d: Add new pattern. * gas/rx/mvfachi.sm: Add new pattern. * gas/rx/mvfaclo.d: Add new pattern. * gas/rx/mvfaclo.sm: Add new pattern. * gas/rx/mvfacmi.d: Add new pattern. * gas/rx/mvfacmi.sm: Add new pattern. * gas/rx/mvfc.d: Add new pattern. * gas/rx/mvtacgu.d: New. * gas/rx/mvtacgu.sm: New. * gas/rx/mvtc.d: Add new pattern. * gas/rx/popc.d: Add new pattern. * gas/rx/pushc.d: Add new pattern. * gas/rx/racl.d: New. * gas/rx/racl.sm: New. * gas/rx/racw.d: Add new pattern. * gas/rx/racw.sm: Add new pattern. * gas/rx/rdacl.d: New. * gas/rx/rdacl.sm: New. * gas/rx/rdacw.d: New. * gas/rx/rdacw.sm: New. * gas/rx/rx.exp: Add option. * gas/rx/stnz.d: Add new pattern. * gas/rx/stnz.sm: Add new pattern. * gas/rx/stz.d: Add new pattern. * gas/rx/stz.sm: Add new pattern. * gas/rx/utof.d: New. * gas/rx/utof.sm: New.
72 lines
2.0 KiB
C
72 lines
2.0 KiB
C
/* rx-defs.h Renesas RX internal definitions
|
|
Copyright (C) 2008-2015 Free Software Foundation, Inc.
|
|
|
|
This file is part of GAS, the GNU Assembler.
|
|
|
|
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 3, 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 Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
|
|
02110-1301, USA. */
|
|
|
|
#ifndef RX_DEFS_H
|
|
#define RX_DEFS_H
|
|
|
|
/* Third operand to rx_op. */
|
|
#define RXREL_SIGNED 0
|
|
#define RXREL_UNSIGNED 1
|
|
#define RXREL_NEGATIVE 2
|
|
#define RXREL_PCREL 3
|
|
#define RXREL_NEGATIVE_BORROW 4
|
|
|
|
#define RX_RELAX_NONE 0
|
|
#define RX_RELAX_BRANCH 1
|
|
#define RX_RELAX_IMM 2
|
|
#define RX_RELAX_DISP 3
|
|
|
|
enum rx_cpu_types
|
|
{
|
|
RX600,
|
|
RX610,
|
|
RX200,
|
|
RX100,
|
|
RXV2
|
|
};
|
|
|
|
extern int rx_pid_register;
|
|
extern int rx_gp_register;
|
|
extern enum rx_cpu_types rx_cpu;
|
|
|
|
extern int rx_error (const char *);
|
|
extern void rx_lex_init (char *, char *);
|
|
extern void rx_base1 (int);
|
|
extern void rx_base2 (int, int);
|
|
extern void rx_base3 (int, int, int);
|
|
extern void rx_base4 (int, int, int, int);
|
|
extern void rx_field (int, int, int);
|
|
extern void rx_op (expressionS, int, int);
|
|
extern void rx_disp3 (expressionS, int);
|
|
extern void rx_field5s (expressionS);
|
|
extern void rx_field5s2 (expressionS);
|
|
extern void rx_relax (int, int);
|
|
extern void rx_linkrelax_dsp (int);
|
|
extern void rx_linkrelax_imm (int);
|
|
extern void rx_linkrelax_branch (void);
|
|
extern int rx_parse (void);
|
|
extern int rx_wrap (void);
|
|
extern void rx_note_string_insn_use (void);
|
|
|
|
extern char * rx_lex_start;
|
|
extern char * rx_lex_end;
|
|
|
|
#endif /* RX_DEFS_H */
|