]> git.ipfire.org Git - thirdparty/elfutils.git/commitdiff
expr_opcodes.h will hold more general information about opcodes
authorPetr Machata <pmachata@redhat.com>
Tue, 8 Sep 2009 11:03:06 +0000 (13:03 +0200)
committerPetr Machata <pmachata@redhat.com>
Wed, 18 Aug 2010 12:55:10 +0000 (14:55 +0200)
src/Makefile.am
src/dwarf-opcodes.h [new file with mode: 0644]
src/dwarflint.c
src/expr_opcodes.h [deleted file]

index 58c6236237f6738e673817bc75124e0d9450995b..30bc3c3649ef08abafdd1822ba0e82c98e0457f4 100644 (file)
@@ -87,7 +87,7 @@ readelf_SOURCES = readelf.c dwarfstrings.c
 
 noinst_HEADERS = ld.h symbolhash.h sectionhash.h versionhash.h \
                 ldscript.h xelf.h unaligned.h dwarfstrings.h \
-                expr_opcodes.h
+                dwarf-opcodes.h
 
 EXTRA_DIST = elf32-i386.script libld_elf_i386.map $(ld_modules) arlib.h \
             debugpred.h
diff --git a/src/dwarf-opcodes.h b/src/dwarf-opcodes.h
new file mode 100644 (file)
index 0000000..739676b
--- /dev/null
@@ -0,0 +1,204 @@
+/*
+   Copyright (C) 2009 Red Hat, Inc.
+   This file is part of Red Hat elfutils.
+
+   Red Hat elfutils 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; version 2 of the License.
+
+   Red Hat elfutils 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 Red Hat elfutils; if not, write to the Free Software Foundation,
+   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
+
+   In addition, as a special exception, Red Hat, Inc. gives You the
+   additional right to link the code of Red Hat elfutils with code licensed
+   under any Open Source Initiative certified open source license
+   (http://www.opensource.org/licenses/index.php) which requires the
+   distribution of source code with any binary distribution and to
+   distribute linked combinations of the two.  Non-GPL Code permitted under
+   this exception must only link to the code of Red Hat elfutils through
+   those well defined interfaces identified in the file named EXCEPTION
+   found in the source code files (the "Approved Interfaces").  The files
+   of Non-GPL Code may instantiate templates or use macros or inline
+   functions from the Approved Interfaces without causing the resulting
+   work to be covered by the GNU General Public License.  Only Red Hat,
+   Inc. may make changes or additions to the list of Approved Interfaces.
+   Red Hat's grant of this exception is conditioned upon your not adding
+   any new exceptions.  If you wish to add a new Approved Interface or
+   exception, please contact Red Hat.  You must obey the GNU General Public
+   License in all respects for all of the Red Hat elfutils code and other
+   code used in conjunction with Red Hat elfutils except the Non-GPL Code
+   covered by this exception.  If you modify this file, you may extend this
+   exception to your version of the file, but you are not obligated to do
+   so.  If you do not wish to provide this exception without modification,
+   you must delete this exception statement from your version and license
+   this file solely under the GPL without exception.
+
+   Red Hat elfutils is an included package of the Open Invention Network.
+   An included package of the Open Invention Network is a package for which
+   Open Invention Network licensees cross-license their patents.  No patent
+   license is granted, either expressly or impliedly, by designation as an
+   included package.  Should you wish to participate in the Open Invention
+   Network licensing program, please visit www.openinventionnetwork.com
+   <http://www.openinventionnetwork.com>.  */
+
+#define DW_OP_OPERANDS                                         \
+  DW_OP_1 (DW_OP_addr, DW_FORM_addr)                           \
+  DW_OP_0 (DW_OP_deref)                                                \
+  DW_OP_0 (DW_OP_xderef)                                       \
+  DW_OP_1 (DW_OP_deref_size, DW_FORM_data1)                    \
+  DW_OP_1 (DW_OP_xderef_size, DW_FORM_data1)                   \
+  DW_OP_1 (DW_OP_const1u, DW_FORM_data1)                       \
+  DW_OP_1 (DW_OP_const1s, DW_FORM_data1)                       \
+  DW_OP_1 (DW_OP_const2u, DW_FORM_data2)                       \
+  DW_OP_1 (DW_OP_const2s, DW_FORM_data2)                       \
+  DW_OP_1 (DW_OP_const4u, DW_FORM_data4)                       \
+  DW_OP_1 (DW_OP_const4s, DW_FORM_data4)                       \
+  DW_OP_1 (DW_OP_const8u, DW_FORM_data8)                       \
+  DW_OP_1 (DW_OP_const8s, DW_FORM_data8)                       \
+  DW_OP_1 (DW_OP_constu, DW_FORM_udata)                                \
+  DW_OP_1 (DW_OP_consts, DW_FORM_sdata)                                \
+  DW_OP_0 (DW_OP_dup)                                          \
+  DW_OP_0 (DW_OP_drop)                                         \
+  DW_OP_0 (DW_OP_over)                                         \
+  DW_OP_1 (DW_OP_pick, DW_FORM_data1)                          \
+  DW_OP_0 (DW_OP_swap)                                         \
+  DW_OP_0 (DW_OP_rot)                                          \
+  DW_OP_0 (DW_OP_abs)                                          \
+  DW_OP_0 (DW_OP_and)                                          \
+  DW_OP_0 (DW_OP_div)                                          \
+  DW_OP_0 (DW_OP_minus)                                                \
+  DW_OP_0 (DW_OP_mod)                                          \
+  DW_OP_0 (DW_OP_mul)                                          \
+  DW_OP_0 (DW_OP_neg)                                          \
+  DW_OP_0 (DW_OP_not)                                          \
+  DW_OP_0 (DW_OP_or)                                           \
+  DW_OP_0 (DW_OP_plus)                                         \
+  DW_OP_1 (DW_OP_plus_uconst, DW_FORM_udata)                   \
+  DW_OP_0 (DW_OP_shl)                                          \
+  DW_OP_0 (DW_OP_shr)                                          \
+  DW_OP_0 (DW_OP_shra)                                         \
+  DW_OP_0 (DW_OP_xor)                                          \
+  DW_OP_1 (DW_OP_bra, DW_FORM_data2)                           \
+  DW_OP_0 (DW_OP_eq)                                           \
+  DW_OP_0 (DW_OP_ge)                                           \
+  DW_OP_0 (DW_OP_gt)                                           \
+  DW_OP_0 (DW_OP_le)                                           \
+  DW_OP_0 (DW_OP_lt)                                           \
+  DW_OP_0 (DW_OP_ne)                                           \
+  DW_OP_1 (DW_OP_skip, DW_FORM_data2)                          \
+  DW_OP_0 (DW_OP_lit0)                                         \
+  DW_OP_0 (DW_OP_lit1)                                         \
+  DW_OP_0 (DW_OP_lit2)                                         \
+  DW_OP_0 (DW_OP_lit3)                                         \
+  DW_OP_0 (DW_OP_lit4)                                         \
+  DW_OP_0 (DW_OP_lit5)                                         \
+  DW_OP_0 (DW_OP_lit6)                                         \
+  DW_OP_0 (DW_OP_lit7)                                         \
+  DW_OP_0 (DW_OP_lit8)                                         \
+  DW_OP_0 (DW_OP_lit9)                                         \
+  DW_OP_0 (DW_OP_lit10)                                                \
+  DW_OP_0 (DW_OP_lit11)                                                \
+  DW_OP_0 (DW_OP_lit12)                                                \
+  DW_OP_0 (DW_OP_lit13)                                                \
+  DW_OP_0 (DW_OP_lit14)                                                \
+  DW_OP_0 (DW_OP_lit15)                                                \
+  DW_OP_0 (DW_OP_lit16)                                                \
+  DW_OP_0 (DW_OP_lit17)                                                \
+  DW_OP_0 (DW_OP_lit18)                                                \
+  DW_OP_0 (DW_OP_lit19)                                                \
+  DW_OP_0 (DW_OP_lit20)                                                \
+  DW_OP_0 (DW_OP_lit21)                                                \
+  DW_OP_0 (DW_OP_lit22)                                                \
+  DW_OP_0 (DW_OP_lit23)                                                \
+  DW_OP_0 (DW_OP_lit24)                                                \
+  DW_OP_0 (DW_OP_lit25)                                                \
+  DW_OP_0 (DW_OP_lit26)                                                \
+  DW_OP_0 (DW_OP_lit27)                                                \
+  DW_OP_0 (DW_OP_lit28)                                                \
+  DW_OP_0 (DW_OP_lit29)                                                \
+  DW_OP_0 (DW_OP_lit30)                                                \
+  DW_OP_0 (DW_OP_lit31)                                                \
+  DW_OP_0 (DW_OP_reg0)                                         \
+  DW_OP_0 (DW_OP_reg1)                                         \
+  DW_OP_0 (DW_OP_reg2)                                         \
+  DW_OP_0 (DW_OP_reg3)                                         \
+  DW_OP_0 (DW_OP_reg4)                                         \
+  DW_OP_0 (DW_OP_reg5)                                         \
+  DW_OP_0 (DW_OP_reg6)                                         \
+  DW_OP_0 (DW_OP_reg7)                                         \
+  DW_OP_0 (DW_OP_reg8)                                         \
+  DW_OP_0 (DW_OP_reg9)                                         \
+  DW_OP_0 (DW_OP_reg10)                                                \
+  DW_OP_0 (DW_OP_reg11)                                                \
+  DW_OP_0 (DW_OP_reg12)                                                \
+  DW_OP_0 (DW_OP_reg13)                                                \
+  DW_OP_0 (DW_OP_reg14)                                                \
+  DW_OP_0 (DW_OP_reg15)                                                \
+  DW_OP_0 (DW_OP_reg16)                                                \
+  DW_OP_0 (DW_OP_reg17)                                                \
+  DW_OP_0 (DW_OP_reg18)                                                \
+  DW_OP_0 (DW_OP_reg19)                                                \
+  DW_OP_0 (DW_OP_reg20)                                                \
+  DW_OP_0 (DW_OP_reg21)                                                \
+  DW_OP_0 (DW_OP_reg22)                                                \
+  DW_OP_0 (DW_OP_reg23)                                                \
+  DW_OP_0 (DW_OP_reg24)                                                \
+  DW_OP_0 (DW_OP_reg25)                                                \
+  DW_OP_0 (DW_OP_reg26)                                                \
+  DW_OP_0 (DW_OP_reg27)                                                \
+  DW_OP_0 (DW_OP_reg28)                                                \
+  DW_OP_0 (DW_OP_reg29)                                                \
+  DW_OP_0 (DW_OP_reg30)                                                \
+  DW_OP_0 (DW_OP_reg31)                                                \
+  DW_OP_1 (DW_OP_breg0, DW_FORM_sdata)                         \
+  DW_OP_1 (DW_OP_breg1, DW_FORM_sdata)                         \
+  DW_OP_1 (DW_OP_breg2, DW_FORM_sdata)                         \
+  DW_OP_1 (DW_OP_breg3, DW_FORM_sdata)                         \
+  DW_OP_1 (DW_OP_breg4, DW_FORM_sdata)                         \
+  DW_OP_1 (DW_OP_breg5, DW_FORM_sdata)                         \
+  DW_OP_1 (DW_OP_breg6, DW_FORM_sdata)                         \
+  DW_OP_1 (DW_OP_breg7, DW_FORM_sdata)                         \
+  DW_OP_1 (DW_OP_breg8, DW_FORM_sdata)                         \
+  DW_OP_1 (DW_OP_breg9, DW_FORM_sdata)                         \
+  DW_OP_1 (DW_OP_breg10, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg11, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg12, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg13, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg14, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg15, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg16, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg17, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg18, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg19, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg20, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg21, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg22, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg23, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg24, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg25, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg26, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg27, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg28, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg29, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg30, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_breg31, DW_FORM_sdata)                                \
+  DW_OP_1 (DW_OP_regx, DW_FORM_udata)                          \
+  DW_OP_1 (DW_OP_fbreg, DW_FORM_sdata)                         \
+  DW_OP_2 (DW_OP_bregx, DW_FORM_udata, DW_FORM_sdata)          \
+  DW_OP_1 (DW_OP_piece, DW_FORM_udata)                         \
+  DW_OP_0 (DW_OP_nop)                                          \
+  DW_OP_0 (DW_OP_push_object_address)                          \
+  DW_OP_1 (DW_OP_call2, DW_FORM_data2)                         \
+  DW_OP_1 (DW_OP_call4, DW_FORM_data4)                         \
+  DW_OP_1 (DW_OP_call_ref, DW_FORM_addr)                       \
+  DW_OP_0 (DW_OP_form_tls_address)                             \
+  DW_OP_0 (DW_OP_GNU_push_tls_address)                         \
+  DW_OP_0 (DW_OP_call_frame_cfa)                               \
+  DW_OP_2 (DW_OP_bit_piece, DW_FORM_udata, DW_FORM_udata)      \
+  DW_OP_0 (DW_OP_GNU_uninit)
index 7cc81dd9a8a44deedf4200f605d0becc90f33bf7..2ac9ac9bfd880b7edf9db9b1bda3174b75a07d0f 100644 (file)
@@ -51,6 +51,7 @@
 #include "dwarfstrings.h"
 #include "dwarflint.h"
 #include "dwarflint-readctx.h"
+#include "dwarf-opcodes.h"
 
 /* Bug report address.  */
 const char *argp_program_bug_address = PACKAGE_BUGREPORT;
@@ -4102,10 +4103,18 @@ get_location_opcode_operands (uint8_t opcode, uint8_t *op1, uint8_t *op2)
 {
   switch (opcode)
     {
-#define DEF_DW_OP(OPCODE, OP1, OP2)  \
+#define DW_OP_G(OPCODE, OP1, OP2)  \
       case OPCODE: *op1 = OP1; *op2 = OP2; return true;
-# include "expr_opcodes.h"
-#undef DEF_DW_OP
+#define DW_OP_0(OPCODE) DW_OP_G(OPCODE, 0, 0)
+#define DW_OP_1(OPCODE, OP1) DW_OP_G(OPCODE, OP1, 0)
+#define DW_OP_2(OPCODE, OP1, OP2) DW_OP_G(OPCODE, OP1, OP2)
+
+      DW_OP_OPERANDS
+
+#undef DEF_DW_OP_2
+#undef DEF_DW_OP_1
+#undef DEF_DW_OP_0
+#undef DEF_DW_OP_G
     default:
       return false;
     };
diff --git a/src/expr_opcodes.h b/src/expr_opcodes.h
deleted file mode 100644 (file)
index b38f218..0000000
+++ /dev/null
@@ -1,154 +0,0 @@
-DEF_DW_OP (DW_OP_addr, DW_FORM_addr, 0)
-DEF_DW_OP (DW_OP_deref, 0, 0)
-DEF_DW_OP (DW_OP_xderef, 0, 0)
-DEF_DW_OP (DW_OP_deref_size, DW_FORM_data1, 0)
-DEF_DW_OP (DW_OP_xderef_size, DW_FORM_data1, 0)
-DEF_DW_OP (DW_OP_const1u, DW_FORM_data1, 0)
-DEF_DW_OP (DW_OP_const1s, DW_FORM_data1, 0)
-DEF_DW_OP (DW_OP_const2u, DW_FORM_data2, 0)
-DEF_DW_OP (DW_OP_const2s, DW_FORM_data2, 0)
-DEF_DW_OP (DW_OP_const4u, DW_FORM_data4, 0)
-DEF_DW_OP (DW_OP_const4s, DW_FORM_data4, 0)
-DEF_DW_OP (DW_OP_const8u, DW_FORM_data8, 0)
-DEF_DW_OP (DW_OP_const8s, DW_FORM_data8, 0)
-DEF_DW_OP (DW_OP_constu, DW_FORM_udata, 0)
-DEF_DW_OP (DW_OP_consts, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_dup, 0, 0)
-DEF_DW_OP (DW_OP_drop, 0, 0)
-DEF_DW_OP (DW_OP_over, 0, 0)
-DEF_DW_OP (DW_OP_pick, DW_FORM_data1, 0)
-DEF_DW_OP (DW_OP_swap, 0, 0)
-DEF_DW_OP (DW_OP_rot, 0, 0)
-DEF_DW_OP (DW_OP_abs, 0, 0)
-DEF_DW_OP (DW_OP_and, 0, 0)
-DEF_DW_OP (DW_OP_div, 0, 0)
-DEF_DW_OP (DW_OP_minus, 0, 0)
-DEF_DW_OP (DW_OP_mod, 0, 0)
-DEF_DW_OP (DW_OP_mul, 0, 0)
-DEF_DW_OP (DW_OP_neg, 0, 0)
-DEF_DW_OP (DW_OP_not, 0, 0)
-DEF_DW_OP (DW_OP_or, 0, 0)
-DEF_DW_OP (DW_OP_plus, 0, 0)
-DEF_DW_OP (DW_OP_plus_uconst, DW_FORM_udata, 0)
-DEF_DW_OP (DW_OP_shl, 0, 0)
-DEF_DW_OP (DW_OP_shr, 0, 0)
-DEF_DW_OP (DW_OP_shra, 0, 0)
-DEF_DW_OP (DW_OP_xor, 0, 0)
-DEF_DW_OP (DW_OP_bra, DW_FORM_data2, 0)
-DEF_DW_OP (DW_OP_eq, 0, 0)
-DEF_DW_OP (DW_OP_ge, 0, 0)
-DEF_DW_OP (DW_OP_gt, 0, 0)
-DEF_DW_OP (DW_OP_le, 0, 0)
-DEF_DW_OP (DW_OP_lt, 0, 0)
-DEF_DW_OP (DW_OP_ne, 0, 0)
-DEF_DW_OP (DW_OP_skip, DW_FORM_data2, 0)
-DEF_DW_OP (DW_OP_lit0, 0, 0)
-DEF_DW_OP (DW_OP_lit1, 0, 0)
-DEF_DW_OP (DW_OP_lit2, 0, 0)
-DEF_DW_OP (DW_OP_lit3, 0, 0)
-DEF_DW_OP (DW_OP_lit4, 0, 0)
-DEF_DW_OP (DW_OP_lit5, 0, 0)
-DEF_DW_OP (DW_OP_lit6, 0, 0)
-DEF_DW_OP (DW_OP_lit7, 0, 0)
-DEF_DW_OP (DW_OP_lit8, 0, 0)
-DEF_DW_OP (DW_OP_lit9, 0, 0)
-DEF_DW_OP (DW_OP_lit10, 0, 0)
-DEF_DW_OP (DW_OP_lit11, 0, 0)
-DEF_DW_OP (DW_OP_lit12, 0, 0)
-DEF_DW_OP (DW_OP_lit13, 0, 0)
-DEF_DW_OP (DW_OP_lit14, 0, 0)
-DEF_DW_OP (DW_OP_lit15, 0, 0)
-DEF_DW_OP (DW_OP_lit16, 0, 0)
-DEF_DW_OP (DW_OP_lit17, 0, 0)
-DEF_DW_OP (DW_OP_lit18, 0, 0)
-DEF_DW_OP (DW_OP_lit19, 0, 0)
-DEF_DW_OP (DW_OP_lit20, 0, 0)
-DEF_DW_OP (DW_OP_lit21, 0, 0)
-DEF_DW_OP (DW_OP_lit22, 0, 0)
-DEF_DW_OP (DW_OP_lit23, 0, 0)
-DEF_DW_OP (DW_OP_lit24, 0, 0)
-DEF_DW_OP (DW_OP_lit25, 0, 0)
-DEF_DW_OP (DW_OP_lit26, 0, 0)
-DEF_DW_OP (DW_OP_lit27, 0, 0)
-DEF_DW_OP (DW_OP_lit28, 0, 0)
-DEF_DW_OP (DW_OP_lit29, 0, 0)
-DEF_DW_OP (DW_OP_lit30, 0, 0)
-DEF_DW_OP (DW_OP_lit31, 0, 0)
-DEF_DW_OP (DW_OP_reg0, 0, 0)
-DEF_DW_OP (DW_OP_reg1, 0, 0)
-DEF_DW_OP (DW_OP_reg2, 0, 0)
-DEF_DW_OP (DW_OP_reg3, 0, 0)
-DEF_DW_OP (DW_OP_reg4, 0, 0)
-DEF_DW_OP (DW_OP_reg5, 0, 0)
-DEF_DW_OP (DW_OP_reg6, 0, 0)
-DEF_DW_OP (DW_OP_reg7, 0, 0)
-DEF_DW_OP (DW_OP_reg8, 0, 0)
-DEF_DW_OP (DW_OP_reg9, 0, 0)
-DEF_DW_OP (DW_OP_reg10, 0, 0)
-DEF_DW_OP (DW_OP_reg11, 0, 0)
-DEF_DW_OP (DW_OP_reg12, 0, 0)
-DEF_DW_OP (DW_OP_reg13, 0, 0)
-DEF_DW_OP (DW_OP_reg14, 0, 0)
-DEF_DW_OP (DW_OP_reg15, 0, 0)
-DEF_DW_OP (DW_OP_reg16, 0, 0)
-DEF_DW_OP (DW_OP_reg17, 0, 0)
-DEF_DW_OP (DW_OP_reg18, 0, 0)
-DEF_DW_OP (DW_OP_reg19, 0, 0)
-DEF_DW_OP (DW_OP_reg20, 0, 0)
-DEF_DW_OP (DW_OP_reg21, 0, 0)
-DEF_DW_OP (DW_OP_reg22, 0, 0)
-DEF_DW_OP (DW_OP_reg23, 0, 0)
-DEF_DW_OP (DW_OP_reg24, 0, 0)
-DEF_DW_OP (DW_OP_reg25, 0, 0)
-DEF_DW_OP (DW_OP_reg26, 0, 0)
-DEF_DW_OP (DW_OP_reg27, 0, 0)
-DEF_DW_OP (DW_OP_reg28, 0, 0)
-DEF_DW_OP (DW_OP_reg29, 0, 0)
-DEF_DW_OP (DW_OP_reg30, 0, 0)
-DEF_DW_OP (DW_OP_reg31, 0, 0)
-DEF_DW_OP (DW_OP_breg0, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg1, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg2, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg3, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg4, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg5, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg6, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg7, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg8, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg9, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg10, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg11, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg12, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg13, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg14, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg15, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg16, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg17, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg18, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg19, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg20, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg21, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg22, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg23, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg24, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg25, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg26, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg27, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg28, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg29, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg30, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_breg31, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_regx, DW_FORM_udata, 0)
-DEF_DW_OP (DW_OP_fbreg, DW_FORM_sdata, 0)
-DEF_DW_OP (DW_OP_bregx, DW_FORM_udata, DW_FORM_sdata)
-DEF_DW_OP (DW_OP_piece, DW_FORM_udata, 0)
-DEF_DW_OP (DW_OP_nop, 0, 0)
-DEF_DW_OP (DW_OP_push_object_address, 0, 0)
-DEF_DW_OP (DW_OP_call2, DW_FORM_data2, 0)
-DEF_DW_OP (DW_OP_call4, DW_FORM_data4, 0)
-DEF_DW_OP (DW_OP_call_ref, DW_FORM_addr, 0)
-DEF_DW_OP (DW_OP_form_tls_address, 0, 0)
-DEF_DW_OP (DW_OP_GNU_push_tls_address, 0, 0)
-DEF_DW_OP (DW_OP_call_frame_cfa, 0, 0)
-DEF_DW_OP (DW_OP_bit_piece, DW_FORM_udata, DW_FORM_udata)
-DEF_DW_OP (DW_OP_GNU_uninit, 0, 0)