]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - gdb/dwarf2loc.c
[binutils, ARM, 4/16] BF insns infrastructure with array of relocs in struct arm_it
[thirdparty/binutils-gdb.git] / gdb / dwarf2loc.c
index 0080d004f1be99719d213a385c0e2929133874fb..2b8aeee83ad82ad0bad29ea1b5358be3673df2af 100644 (file)
@@ -38,7 +38,7 @@
 #include "dwarf2loc.h"
 #include "dwarf2-frame.h"
 #include "compile/compile.h"
-#include "selftest.h"
+#include "common/selftest.h"
 #include <algorithm>
 #include <vector>
 #include <unordered_set>
@@ -1195,11 +1195,11 @@ call_site_find_chain (struct gdbarch *gdbarch, CORE_ADDR caller_pc,
 {
   struct call_site_chain *retval = NULL;
 
-  TRY
+  try
     {
       retval = call_site_find_chain_1 (gdbarch, caller_pc, callee_pc);
     }
-  CATCH (e, RETURN_MASK_ERROR)
+  catch (const gdb_exception_error &e)
     {
       if (e.error == NO_ENTRY_VALUE_ERROR)
        {
@@ -1209,9 +1209,8 @@ call_site_find_chain (struct gdbarch *gdbarch, CORE_ADDR caller_pc,
          return NULL;
        }
       else
-       throw_exception (e);
+       throw;
     }
-  END_CATCH
 
   return retval;
 }
@@ -1472,9 +1471,8 @@ value_of_dwarf_reg_entry (struct type *type, struct frame_info *frame,
                                               target_type, caller_frame,
                                               caller_per_cu);
 
-  release_value (target_val).release ();
   val = allocate_computed_value (type, &entry_data_value_funcs,
-                                target_val /* closure */);
+                                release_value (target_val).release ());
 
   /* Copy the referencing pointer to the new computed value.  */
   memcpy (value_contents_raw (val), value_contents_raw (outer_val),
@@ -2165,11 +2163,11 @@ dwarf2_evaluate_loc_desc_full (struct type *type, struct frame_info *frame,
   ctx.ref_addr_size = dwarf2_per_cu_ref_addr_size (per_cu);
   ctx.offset = dwarf2_per_cu_text_offset (per_cu);
 
-  TRY
+  try
     {
       ctx.eval (data, size);
     }
-  CATCH (ex, RETURN_MASK_ERROR)
+  catch (const gdb_exception_error &ex)
     {
       if (ex.error == NOT_AVAILABLE_ERROR)
        {
@@ -2187,9 +2185,8 @@ dwarf2_evaluate_loc_desc_full (struct type *type, struct frame_info *frame,
          return allocate_optimized_out_value (subobj_type);
        }
       else
-       throw_exception (ex);
+       throw;
     }
-  END_CATCH
 
   if (ctx.pieces.size () > 0)
     {
@@ -2383,11 +2380,11 @@ dwarf2_locexpr_baton_eval (const struct dwarf2_locexpr_baton *dlbaton,
   ctx.ref_addr_size = dwarf2_per_cu_ref_addr_size (dlbaton->per_cu);
   ctx.offset = dwarf2_per_cu_text_offset (dlbaton->per_cu);
 
-  TRY
+  try
     {
       ctx.eval (dlbaton->data, dlbaton->size);
     }
-  CATCH (ex, RETURN_MASK_ERROR)
+  catch (const gdb_exception_error &ex)
     {
       if (ex.error == NOT_AVAILABLE_ERROR)
        {
@@ -2400,9 +2397,8 @@ dwarf2_locexpr_baton_eval (const struct dwarf2_locexpr_baton *dlbaton,
          return 0;
        }
       else
-       throw_exception (ex);
+       throw;
     }
-  END_CATCH
 
   switch (ctx.location)
     {