GCC Middle and Back End API Reference
dwarf2ctf.h File Reference
#include "dwarf2out.h"
#include "flags.h"
Include dependency graph for dwarf2ctf.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void ctf_debug_init (void)
 
void ctf_debug_init_postprocess (bool)
 
bool ctf_do_die (dw_die_ref)
 
void ctf_debug_early_finish (const char *)
 
void ctf_debug_finish (const char *)
 
const charctf_get_die_loc_file (dw_die_ref)
 
unsigned int ctf_get_die_loc_line (dw_die_ref)
 
unsigned int ctf_get_die_loc_col (dw_die_ref)
 

Function Documentation

◆ ctf_debug_early_finish()

void ctf_debug_early_finish ( const char * filename)
extern

◆ ctf_debug_finish()

void ctf_debug_finish ( const char * filename)
extern
Finish CTF/BTF debug info emission.   

References btf_debuginfo_p(), btf_with_core_debuginfo_p(), ctf_debug_finalize(), and dwarf_file_data::filename.

◆ ctf_debug_init()

void ctf_debug_init ( void )
extern
dwarf2ctf.h - DWARF interface for CTF/BTF generation.
   Copyright (C) 2021-2024 Free Software Foundation, Inc.

This file is part of GCC.

GCC 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; either version 3, or (at your option) any later
version.

GCC 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 GCC; see the file COPYING3.  If not see
<http://www.gnu.org/licenses/>.   
This file contains declarations and prototypes to define an interface
between DWARF and CTF/BTF generation.   
Debug Format Interface.  Used in dwarf2out.cc.   
Initialize CTF subsystem for CTF debug info generation.   

References add_name_attribute(), base_type_die(), ctf_array_index_die, ctf_init(), ctf_unknown_die, ctf_void_die, ggc_alloc(), integer_type_node, and new_die_raw().

◆ ctf_debug_init_postprocess()

void ctf_debug_init_postprocess ( bool btf)
extern
Preprocess the CTF debug information after initialization.   

References btf_init_postprocess(), and ggc_alloc().

◆ ctf_do_die()

◆ ctf_get_die_loc_col()

unsigned int ctf_get_die_loc_col ( dw_die_ref die)
extern

◆ ctf_get_die_loc_file()

const char * ctf_get_die_loc_file ( dw_die_ref die)
extern
Wrappers for CTF/BTF to fetch information from GCC DWARF DIE.  Used in
ctfc.cc.

A CTF container does not store all debug information internally.  Some of
the info is fetched indirectly via the DIE reference available in each CTF
container entry.

These functions will be used by the CTF container to give access to its
consumers (CTF/BTF) to various debug information available in DWARF DIE.
Direct access to debug information in GCC dwarf structures by the consumers
of CTF/BTF information is not ideal.   
Source location information.   
CTF Types' and CTF Variables' Location Information.  CTF section does not
emit location information, this is provided for BTF CO-RE use-cases.  These
functions fetch information from DWARF Die directly, as such the location
information is not buffered in the CTF container.   

References dwarf_file_data::filename, get_AT_file(), ggc_alloc(), and NULL.

Referenced by ctfc_get_dtd_srcloc(), and ctfc_get_dvd_srcloc().

◆ ctf_get_die_loc_line()

unsigned int ctf_get_die_loc_line ( dw_die_ref die)
extern