GCC Middle and Back End API Reference
eh_region_d Struct Reference

#include <except.h>

Collaboration diagram for eh_region_d:

Data Structures

union  eh_region_u

Data Fields

struct eh_region_douter
struct eh_region_dinner
struct eh_region_dnext_peer
int index
enum eh_region_type type
union eh_region_d::eh_region_u u
struct eh_landing_pad_dlanding_pads
rtx exc_ptr_reg
rtx filter_reg
bool use_cxa_end_cleanup

Detailed Description

   Describes one exception region.  

Field Documentation

rtx eh_region_d::exc_ptr_reg
     EXC_PTR and FILTER values copied from the runtime for this region.
     Each region gets its own psuedos so that if there are nested exceptions
     we do not overwrite the values of the first exception.  
rtx eh_region_d::filter_reg
int eh_region_d::index
     The index of this region within fun->eh->region_array.  

Referenced by add_stmt_to_eh_lp(), do_goto_redirection(), fixup_eh_region_pointers(), output_eh_try_list(), and remove_eh_landing_pad().

struct eh_region_d* eh_region_d::inner
     The list of immediately contained regions.  

Referenced by fixup_eh_region_pointers(), init_eh_for_function(), and remove_eh_landing_pad().

struct eh_landing_pad_d* eh_region_d::landing_pads
     The list of landing pads associated with this region.  

Referenced by do_return_redirection(), fixup_eh_region_pointers(), and record_stmt_eh_region().

struct eh_region_d* eh_region_d::outer
     The immediately surrounding region.  

Referenced by do_goto_redirection(), expand_eh_return(), fixup_eh_region_pointers(), and init_eh_for_function().

bool eh_region_d::use_cxa_end_cleanup
     True if this region should use __cxa_end_cleanup instead
     of _Unwind_Resume.  

The documentation for this struct was generated from the following file: