/* bfin-defs.h ADI Blackfin gas header file
- Copyright 2005, 2006, 2007, 2009
- Free Software Foundation, Inc.
+ Copyright (C) 2005-2022 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
#ifndef BFIN_PARSE_H
#define BFIN_PARSE_H
+#include "opcode/bfin.h"
+
#define PCREL 1
#define CODE_FRAG_SIZE 4096 /* 1 page. */
#define T_REG_A 0x40
/* All registers above this value don't
- belong to a usuable register group. */
+ belong to a usable register group. */
#define T_NOGROUP 0xa0
/* Flags. */
{
S_AZ = 0,
S_AN,
+ S_AC0_COPY,
+ S_V_COPY,
S_AQ = 6,
+ S_RND_MOD = 8,
S_AC0 = 12,
S_AC1,
S_AV0 = 16,
LIM_REG_CLASSES
};
-/* mmod field. */
-#define M_S2RND 1
-#define M_T 2
-#define M_W32 3
-#define M_FU 4
-#define M_TFU 6
-#define M_IS 8
-#define M_ISS2 9
-#define M_IH 11
-#define M_IU 12
-
/* Register type checking macros. */
#define CODE_MASK 0x07
#define IS_BREG(r) (((r).regno & 0xf4) == T_REG_B)
#define IS_LREG(r) (((r).regno & 0xf4) == T_REG_L)
#define IS_CREG(r) ((r).regno == REG_LC0 || (r).regno == REG_LC1)
+#define IS_EMUDAT(r) ((r).regno == REG_EMUDAT)
#define IS_ALLREG(r) ((r).regno < T_NOGROUP)
#define IS_GENREG(r) \
INSTR_T Expr_Node_Gen_Reloc (Expr_Node *head, int parent_reloc);
#define MKREF(x) mkexpr (0,x)
-#define ALLOCATE(x) malloc (x)
#define NULL_CODE ((INSTR_T) 0)
extern int debug_codeselection;
-void error (char *format, ...);
+void error (const char *format, ...);
void warn (char *format, ...);
int semantic_error (char *syntax);
void semantic_error_2 (char *syntax);