Home | History | Annotate | Line # | Download | only in vms
      1   1.1  christos /* Alpha VMS external format of Extended Global Symbol.
      2   1.1  christos 
      3  1.10  christos    Copyright (C) 2010-2025 Free Software Foundation, Inc.
      4   1.1  christos    Written by Tristan Gingold <gingold (at) adacore.com>, AdaCore.
      5   1.1  christos 
      6   1.1  christos    This file is part of BFD, the Binary File Descriptor library.
      7   1.1  christos 
      8   1.1  christos    This program is free software; you can redistribute it and/or modify
      9   1.1  christos    it under the terms of the GNU General Public License as published by
     10   1.1  christos    the Free Software Foundation; either version 3 of the License, or
     11   1.1  christos    (at your option) any later version.
     12   1.1  christos 
     13   1.1  christos    This program is distributed in the hope that it will be useful,
     14   1.1  christos    but WITHOUT ANY WARRANTY; without even the implied warranty of
     15   1.1  christos    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     16   1.1  christos    GNU General Public License for more details.
     17   1.1  christos 
     18   1.1  christos    You should have received a copy of the GNU General Public License
     19   1.1  christos    along with this program; if not, write to the Free Software
     20   1.1  christos    Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
     21   1.1  christos    MA 02110-1301, USA.  */
     22   1.1  christos 
     23   1.1  christos #ifndef _VMS_EGSY_H
     24   1.1  christos #define _VMS_EGSY_H
     25   1.1  christos 
     26   1.1  christos #define EGSY__W_FLAGS  6
     27   1.1  christos 
     28   1.1  christos #define EGSY__V_WEAK		0x0001	/* Weak symbol definition.  */
     29   1.1  christos #define EGSY__V_DEF		0x0002	/* Symbol definition.  */
     30   1.1  christos #define EGSY__V_UNI		0x0004	/* Reserved.  */
     31   1.1  christos #define EGSY__V_REL		0x0008	/* Relocatable (vs absolute).  */
     32   1.1  christos #define EGSY__V_COMM		0x0010	/* Conditional symbol def.  */
     33   1.1  christos #define EGSY__V_VECEP		0x0020	/* Reserved.  */
     34   1.1  christos #define EGSY__V_NORM		0x0040	/* Normal procedure definition.  */
     35   1.1  christos #define EGSY__V_QUAD_VAL	0x0080	/* Value exceed 32 bits.  */
     36   1.1  christos 
     37   1.1  christos struct vms_egsy
     38   1.1  christos {
     39   1.1  christos   /* Entry type.  */
     40   1.1  christos   unsigned char gsdtyp[2];
     41   1.1  christos 
     42   1.1  christos   /* Length of the entry.  */
     43   1.1  christos   unsigned char gsdsiz[2];
     44   1.1  christos 
     45   1.1  christos   /* Data type.  */
     46   1.1  christos   unsigned char datyp;
     47   1.1  christos 
     48   1.1  christos   /* Pad for alignment.  */
     49   1.1  christos   unsigned char temp;
     50   1.1  christos 
     51   1.1  christos   unsigned char flags[2];
     52   1.1  christos };
     53   1.1  christos 
     54   1.1  christos #endif /* _VMS_EGSY_H */
     55