Open64 (mfef90, whirl2f, and IR tools)  TAG: version-openad; SVN changeset: 916
dwarf_DST_mem.h File Reference
#include "defs.h"
Include dependency graph for dwarf_DST_mem.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  DST_idx

Defines

#define DST_INVALID_BLOCK_IDX   -1
#define DST_INVALID_BYTE_IDX   -1
#define DST_FOREIGN_BLOCK_IDX   -2
#define DST_FOREIGN_BYTE_IDX   -2
#define DST_INVALID_INIT   {DST_INVALID_BYTE_IDX, DST_INVALID_BLOCK_IDX}
#define DST_FOREIGN_INIT   {DST_FOREIGN_BYTE_IDX, DST_FOREIGN_BLOCK_IDX}
#define DST_IS_NULL(i)
#define DST_IS_FOREIGN_OBJ(i)

Typedefs

typedef mINT32 DST_BYTE_IDX
typedef mINT32 DST_BLOCK_IDX
typedef struct DST_idx DST_IDX
typedef enum DST_block_kind DST_BLOCK_KIND
typedef void * DST_TYPE

Enumerations

enum  DST_block_kind {
  DST_include_dirs_block = 0, DST_file_names_block = 1, DST_macro_info_block = 2, DST_file_scope_block = 3,
  DST_local_scope_block = 4, DST_noblock = 5
}

Functions

char * DST_idx_to_string (DST_IDX)
DST_TYPE New_DST (void)
void DST_Init (char *start, INT32 num_blocks)
void DST_begin_block (DST_BLOCK_KIND block_kind)
void DST_return_to_block (DST_IDX idx)
DST_IDX DST_allocate (INT32 bytes, INT32 align)
DST_IDX DST_get_include_dirs (void)
DST_IDX DST_get_file_names (void)
DST_IDX DST_get_macro_info (void)
DST_IDX DST_get_compile_unit (void)

Variables

const DST_IDX DST_INVALID_IDX
DST_TYPE Current_DST

Define Documentation

#define DST_FOREIGN_BLOCK_IDX   -2

Definition at line 73 of file dwarf_DST_mem.h.

#define DST_FOREIGN_BYTE_IDX   -2

Definition at line 74 of file dwarf_DST_mem.h.

Definition at line 82 of file dwarf_DST_mem.h.

#define DST_INVALID_BYTE_IDX   -1

Definition at line 72 of file dwarf_DST_mem.h.

Referenced by Do_WOPT_and_CG_with_Regions(), and DST_idx_to_string().

#define DST_IS_FOREIGN_OBJ (   i)
Value:
(((i).byte_idx == DST_FOREIGN_BYTE_IDX) || \
                                 ((i).block_idx == DST_FOREIGN_BLOCK_IDX))

Definition at line 91 of file dwarf_DST_mem.h.

Referenced by DST_CHECK_IDX(), DST_put_idx_attribute(), DST_put_inlined_subroutine(), and get_abstract_origin().


Typedef Documentation

Definition at line 62 of file dwarf_DST_mem.h.

Definition at line 61 of file dwarf_DST_mem.h.

typedef struct DST_idx DST_IDX
typedef void* DST_TYPE

Definition at line 158 of file dwarf_DST_mem.h.


Enumeration Type Documentation

Enumerator:
DST_include_dirs_block 
DST_file_names_block 
DST_macro_info_block 
DST_file_scope_block 
DST_local_scope_block 
DST_noblock 

Definition at line 146 of file dwarf_DST_mem.h.


Function Documentation

DST_IDX DST_allocate ( INT32  bytes,
INT32  align 
)

Definition at line 255 of file dwarf_DST_mem.cxx.

References DST_idx::block_idx, DST_idx::byte_idx, Current_DST, current_DST, DST_local_scope_block, new_block(), set_current_dst_to_current(), and size.

Referenced by DST_mk_name(), and DST_mk_string().

Here is the call graph for this function:

void DST_begin_block ( DST_BLOCK_KIND  block_kind)

Definition at line 244 of file dwarf_DST_mem.cxx.

References Current_DST, current_DST, DST_INVALID_BLOCK_IDX, and new_block().

Referenced by DST_mk_compile_unit(), DST_mk_file_name(), and DST_mk_include_dir().

Here is the call graph for this function:

Definition at line 405 of file dwarf_DST_mem.cxx.

References Current_DST, current_DST, DST_file_scope_block, and DST_get_block_list().

Referenced by DRA_Add_Clone(), and Dump_DST().

Here is the call graph for this function:

Definition at line 383 of file dwarf_DST_mem.cxx.

References Current_DST, current_DST, DST_file_names_block, and DST_get_block_list().

Referenced by Dump_DST(), Gen_File_Table(), and ir_print_filename().

Here is the call graph for this function:

Definition at line 372 of file dwarf_DST_mem.cxx.

References Current_DST, current_DST, DST_get_block_list(), and DST_include_dirs_block.

Referenced by Dump_DST(), Gen_File_Table(), and IR_Dwarf_Gen_File_Table().

Here is the call graph for this function:

Definition at line 394 of file dwarf_DST_mem.cxx.

References Current_DST, current_DST, DST_get_block_list(), and DST_macro_info_block.

Here is the call graph for this function:

Definition at line 338 of file dwarf_DST_mem.cxx.

References block, DST_idx::block_idx, DST_idx::byte_idx, Current_DST, current_DST, DST_CHECK_IDX(), DST_INVALID_BYTE_IDX, and NULL.

Here is the call graph for this function:

void DST_Init ( char *  start,
INT32  num_blocks 
)

Definition at line 150 of file dwarf_DST_mem.cxx.

References Current_DST, current_DST, DST_INVALID_BLOCK_IDX, kind, New_DST(), NULL, NUM_BLOCK_HEADERS, Symtab_Alloc(), and TRUE.

Referenced by cwh_dst_init_file(), and WN_get_dst().

Here is the call graph for this function:

Definition at line 320 of file dwarf_DST_mem.cxx.

References DST_idx::block_idx, Current_DST, current_DST, and DST_CHECK_IDX().

Referenced by DST_end_PU(), and DST_release_from_file_scope_mem().

Here is the call graph for this function:


Variable Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines