[ARC] Add SYNTAX_NOP and SYNTAX_1OP for extension instructions
[deliverable/binutils-gdb.git] / gas / config / xtensa-relax.h
index 31fa8b065f7fc4a0decfc6c7a075a4862adb1d5c..0bad4239482f374babf08adeff7936b176e9e23c 100644 (file)
@@ -1,11 +1,11 @@
 /* Table of relaxations for Xtensa assembly.
-   Copyright 2003, 2004 Free Software Foundation, Inc.
+   Copyright (C) 2003-2016 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 2, or (at your option)
+   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,
@@ -15,8 +15,8 @@
 
    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, 59 Temple Place - Suite 330, Boston, 
-   MA 02111-1307, USA.  */
+   the Free Software Foundation, 51 Franklin Street - Fifth Floor, Boston,
+   MA 02110-1301, USA.  */
 
 #ifndef XTENSA_RELAX_H
 #define XTENSA_RELAX_H
@@ -105,6 +105,7 @@ enum op_type
   OP_OPERAND_LOW16U,           /* Low 16 bits of immed.  */
   OP_OPERAND_HI16U,            /* High 16 bits of immed.  */
   OP_LITERAL,
+  OP_FREEREG,
   OP_LABEL
 };
 
@@ -135,10 +136,9 @@ struct build_op
                                   OPERAND: op_data is the field in the
                                   source instruction to take the value from
                                   and encode in the op_num field here.
-                                  LITERAL or LABEL: op_data is the ordinal
-                                  that identifies the appropriate one, i.e.,
-                                  there can be more than one literal or
-                                  label in an expansion.  */
+                                  LITERAL: op_data is field in the source
+                                  instruction that is stored in the literal.
+                                  LABEL: unused.  */
   BuildOp *next;
 };
 
@@ -155,8 +155,6 @@ enum instr_type
 struct build_instr
 {
   InstrType typ;
-  unsigned id;                 /* LITERAL_DEF or LABEL_DEF: an ordinal to
-                                  identify which one.  */
   xtensa_opcode opcode;                /* Unused for LITERAL_DEF or LABEL_DEF.  */
   BuildOp *ops;
   BuildInstr *next;
@@ -179,4 +177,13 @@ extern TransitionTable *xg_build_widen_table (transition_cmp_fn);
 extern bfd_boolean xg_has_userdef_op_fn (OpType);
 extern long xg_apply_userdef_op_fn (OpType, long);
 
+enum flix_level
+{
+  FLIX_ALL,
+  FLIX_NO_GENERATE,
+  FLIX_NONE
+};
+
+extern enum flix_level produce_flix;
+
 #endif /* !XTENSA_RELAX_H */
This page took 0.024611 seconds and 4 git commands to generate.