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

Go to the source code of this file.

Macros

#define T_VOID   0x0003
#define T_HRESULT   0x0008
#define T_CHAR   0x0010
#define T_SHORT   0x0011
#define T_LONG   0x0012
#define T_QUAD   0x0013
#define T_UCHAR   0x0020
#define T_USHORT   0x0021
#define T_ULONG   0x0022
#define T_UQUAD   0x0023
#define T_BOOL08   0x0030
#define T_REAL32   0x0040
#define T_REAL64   0x0041
#define T_REAL80   0x0042
#define T_REAL128   0x0043
#define T_RCHAR   0x0070
#define T_WCHAR   0x0071
#define T_INT4   0x0074
#define T_UINT4   0x0075
#define T_CHAR16   0x007a
#define T_CHAR32   0x007b
#define T_CHAR8   0x007c
#define CV_POINTER_32   0x0400
#define CV_POINTER_64   0x0600
#define T_32PVOID   (T_VOID | CV_POINTER_32)
#define T_64PVOID   (T_VOID | CV_POINTER_64)
#define CV_PTR_NEAR32   0x0a
#define CV_PTR_64   0x0c
#define CV_PTR_MODE_MASK   0xe0
#define CV_PTR_MODE_LVREF   0x20
#define CV_PTR_MODE_PMEM   0x40
#define CV_PTR_MODE_PMFUNC   0x60
#define CV_PTR_MODE_RVREF   0x80
#define CV_PMTYPE_D_Single   0x01
#define CV_PMTYPE_F_Single   0x05
#define MOD_const   0x1
#define MOD_volatile   0x2
#define CV_ACCESS_PRIVATE   1
#define CV_ACCESS_PROTECTED   2
#define CV_ACCESS_PUBLIC   3
#define CV_METHOD_VANILLA   0x00
#define CV_METHOD_VIRTUAL   0x04
#define CV_METHOD_STATIC   0x08
#define CV_METHOD_FRIEND   0x0c
#define CV_METHOD_INTRO   0x10
#define CV_METHOD_PUREVIRT   0x14
#define CV_METHOD_PUREINTRO   0x18
#define CV_PROP_FWDREF   0x80

Functions

void codeview_debug_finish (void)
void codeview_source_line (unsigned int, const char *)
void codeview_start_source_file (const char *)
void codeview_switch_text_section ()
void codeview_end_epilogue (void)
void codeview_debug_early_finish (dw_die_ref die)
void codeview_begin_block (unsigned int, unsigned int, tree)
void codeview_end_block (unsigned int, unsigned int)
void codeview_abstract_function (tree)

Macro Definition Documentation

◆ CV_ACCESS_PRIVATE

#define CV_ACCESS_PRIVATE   1

◆ CV_ACCESS_PROTECTED

#define CV_ACCESS_PROTECTED   2

◆ CV_ACCESS_PUBLIC

#define CV_ACCESS_PUBLIC   3

◆ CV_METHOD_FRIEND

#define CV_METHOD_FRIEND   0x0c

◆ CV_METHOD_INTRO

#define CV_METHOD_INTRO   0x10

◆ CV_METHOD_PUREINTRO

#define CV_METHOD_PUREINTRO   0x18

◆ CV_METHOD_PUREVIRT

#define CV_METHOD_PUREVIRT   0x14

◆ CV_METHOD_STATIC

#define CV_METHOD_STATIC   0x08

◆ CV_METHOD_VANILLA

#define CV_METHOD_VANILLA   0x00
CV_methodprop_e values in cvinfo.h, shifted by 2 for CV_fldattr_t.

◆ CV_METHOD_VIRTUAL

#define CV_METHOD_VIRTUAL   0x04

◆ CV_PMTYPE_D_Single

#define CV_PMTYPE_D_Single   0x01
enum CV_pmtype_e in in cvinfo.h

◆ CV_PMTYPE_F_Single

#define CV_PMTYPE_F_Single   0x05

◆ CV_POINTER_32

#define CV_POINTER_32   0x0400

◆ CV_POINTER_64

#define CV_POINTER_64   0x0600

◆ CV_PROP_FWDREF

#define CV_PROP_FWDREF   0x80

◆ CV_PTR_64

#define CV_PTR_64   0x0c

◆ CV_PTR_MODE_LVREF

#define CV_PTR_MODE_LVREF   0x20

◆ CV_PTR_MODE_MASK

#define CV_PTR_MODE_MASK   0xe0
enum CV_ptrmode_e in cvinfo.h, shifted by 5 for the lfPointerAttr bitfield

◆ CV_PTR_MODE_PMEM

#define CV_PTR_MODE_PMEM   0x40

◆ CV_PTR_MODE_PMFUNC

#define CV_PTR_MODE_PMFUNC   0x60

◆ CV_PTR_MODE_RVREF

#define CV_PTR_MODE_RVREF   0x80

◆ CV_PTR_NEAR32

#define CV_PTR_NEAR32   0x0a
LF_POINTER attributes.

◆ MOD_const

#define MOD_const   0x1
LF_MODIFIER values.

◆ MOD_volatile

#define MOD_volatile   0x2

◆ T_32PVOID

#define T_32PVOID   (T_VOID | CV_POINTER_32)

◆ T_64PVOID

#define T_64PVOID   (T_VOID | CV_POINTER_64)

◆ T_BOOL08

#define T_BOOL08   0x0030

◆ T_CHAR

#define T_CHAR   0x0010

◆ T_CHAR16

#define T_CHAR16   0x007a

◆ T_CHAR32

#define T_CHAR32   0x007b

◆ T_CHAR8

#define T_CHAR8   0x007c

◆ T_HRESULT

#define T_HRESULT   0x0008

◆ T_INT4

#define T_INT4   0x0074

◆ T_LONG

#define T_LONG   0x0012

◆ T_QUAD

#define T_QUAD   0x0013

◆ T_RCHAR

#define T_RCHAR   0x0070

◆ T_REAL128

#define T_REAL128   0x0043

◆ T_REAL32

#define T_REAL32   0x0040

◆ T_REAL64

#define T_REAL64   0x0041

◆ T_REAL80

#define T_REAL80   0x0042

◆ T_SHORT

#define T_SHORT   0x0011

◆ T_UCHAR

#define T_UCHAR   0x0020

◆ T_UINT4

#define T_UINT4   0x0075

◆ T_ULONG

#define T_ULONG   0x0022

◆ T_UQUAD

#define T_UQUAD   0x0023

◆ T_USHORT

#define T_USHORT   0x0021

◆ T_VOID

#define T_VOID   0x0003
dwarf2codeview.h - DWARF interface for CodeView generation. Copyright (C) 2023-2025 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/>.
Constants for in-built types.

◆ T_WCHAR

#define T_WCHAR   0x0071

Function Documentation

◆ codeview_abstract_function()

void codeview_abstract_function ( tree )
extern

◆ codeview_begin_block()

void codeview_begin_block ( unsigned int ,
unsigned int ,
tree  )
extern

Referenced by dwarf2out_ignore_block().

◆ codeview_debug_early_finish()

void codeview_debug_early_finish ( dw_die_ref die)
extern

◆ codeview_debug_finish()

void codeview_debug_finish ( void )
extern
Debug Format Interface. Used in dwarf2out.cc.

◆ codeview_end_block()

void codeview_end_block ( unsigned int ,
unsigned int  )
extern

◆ codeview_end_epilogue()

void codeview_end_epilogue ( void )
extern

Referenced by dwarf2out_end_epilogue().

◆ codeview_source_line()

void codeview_source_line ( unsigned int ,
const char *  )
extern

◆ codeview_start_source_file()

void codeview_start_source_file ( const char * )
extern

Referenced by dwarf2out_define().

◆ codeview_switch_text_section()

void codeview_switch_text_section ( )
extern