* dwarf.h (enum DW_CFA): Define.
authorIan Lance Taylor <ian@airs.com>
Sat, 2 Jul 2011 04:50:13 +0000 (04:50 +0000)
committerIan Lance Taylor <ian@airs.com>
Sat, 2 Jul 2011 04:50:13 +0000 (04:50 +0000)
elfcpp/ChangeLog
elfcpp/dwarf.h

index e2de091830a9a56cd31431af8a500a92662dd7ec..d4380aedd5eb0edd6a406b2a7cdf1c3c7717996f 100644 (file)
@@ -1,3 +1,7 @@
+2011-07-01  Ian Lance Taylor  <iant@google.com>
+
+       * dwarf.h (enum DW_CFA): Define.
+
 2010-08-12  Cary Coutant  <ccoutant@google.com>
 
        * elfcpp.h (enum SHT): Add SHT_GNU_INCREMENTAL_GOT_PLT.
index c6ff402719d2596e94ffe6704dee44afc05d6557..d599c9750b664ca573bdd345bf0201c034433f8a 100644 (file)
@@ -1,6 +1,6 @@
 // dwarf.h -- DWARF2 constants  -*- C++ -*-
 
-// Copyright 2006, 2007, Free Software Foundation, Inc.
+// Copyright 2006, 2007, 2008, 2011 Free Software Foundation, Inc.
 // Written by Ian Lance Taylor <iant@google.com>.
 
 // This file is part of elfcpp.
@@ -403,6 +403,52 @@ enum DW_OP
   DW_OP_GNU_push_tls_address         =0xe0
 };
 
+// Call frame information.
+
+enum DW_CFA
+{
+  DW_CFA_advance_loc = 0x40,
+  DW_CFA_offset = 0x80,
+  DW_CFA_restore = 0xc0,
+
+  DW_CFA_nop = 0x00,
+  DW_CFA_set_loc = 0x01,
+  DW_CFA_advance_loc1 = 0x02,
+  DW_CFA_advance_loc2 = 0x03,
+  DW_CFA_advance_loc4 = 0x04,
+  DW_CFA_offset_extended = 0x05,
+  DW_CFA_restore_extended = 0x06,
+  DW_CFA_undefined = 0x07,
+  DW_CFA_same_value = 0x08,
+  DW_CFA_register = 0x09,
+  DW_CFA_remember_state = 0x0a,
+  DW_CFA_restore_state = 0x0b,
+  DW_CFA_def_cfa = 0x0c,
+  DW_CFA_def_cfa_register = 0x0d,
+  DW_CFA_def_cfa_offset = 0x0e,
+
+  // DWARF 3.
+  DW_CFA_def_cfa_expression = 0x0f,
+  DW_CFA_expression = 0x10,
+  DW_CFA_offset_extended_sf = 0x11,
+  DW_CFA_def_cfa_sf = 0x12,
+  DW_CFA_def_cfa_offset_sf = 0x13,
+  DW_CFA_val_offset = 0x14,
+  DW_CFA_val_offset_sf = 0x15,
+  DW_CFA_val_expression = 0x16,
+
+  DW_CFA_lo_user = 0x1c,
+  DW_CFA_hi_user = 0x3f,
+
+  // SGI/MIPS specific.
+  DW_CFA_MIPS_advance_loc8 = 0x1d,
+
+  // GNU extensions.
+  DW_CFA_GNU_window_save = 0x2d,
+  DW_CFA_GNU_args_size = 0x2e,
+  DW_CFA_GNU_negative_offset_extended = 0x2f
+};
+
 } // End namespace elfcpp.
 
 #endif // !defined(ELFCPP_DWARF_H)