1 1.1 christos /* Alpha VMS external format of Extended Global Symbol Directory. 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_EGSD_H 24 1.1 christos #define _VMS_EGSD_H 25 1.1 christos 26 1.1 christos #define EGSD__K_ENTRIES 2 /* Offset to first entry in record. */ 27 1.1 christos #define EGSD__C_ENTRIES 2 /* Offset to first entry in record. */ 28 1.1 christos #define EGSD__C_PSC 0 /* Psect definition. */ 29 1.1 christos #define EGSD__C_SYM 1 /* Symbol specification. */ 30 1.1 christos #define EGSD__C_IDC 2 /* Random entity check. */ 31 1.1 christos #define EGSD__C_SPSC 5 /* Shareable image psect definition. */ 32 1.1 christos #define EGSD__C_SYMV 6 /* Vectored (dual-valued) versions of SYM. */ 33 1.1 christos #define EGSD__C_SYMM 7 /* Masked versions of SYM. */ 34 1.1 christos #define EGSD__C_SYMG 8 /* EGST - gst version of SYM. */ 35 1.1 christos #define EGSD__C_MAXRECTYP 8 /* Maximum entry type defined. */ 36 1.1 christos 37 1.1 christos struct vms_egsd 38 1.1 christos { 39 1.1 christos /* Record type. */ 40 1.1 christos unsigned char rectyp[2]; 41 1.1 christos 42 1.1 christos /* Record size. */ 43 1.1 christos unsigned char recsiz[2]; 44 1.1 christos 45 1.1 christos /* Padding for alignment. */ 46 1.1 christos unsigned char alignlw[4]; 47 1.1 christos 48 1.1 christos /* Followed by egsd entries. */ 49 1.1 christos }; 50 1.1 christos 51 1.1 christos struct vms_egsd_entry 52 1.1 christos { 53 1.1 christos /* Entry type. */ 54 1.1 christos unsigned char gsdtyp[2]; 55 1.1 christos 56 1.1 christos /* Length of the entry. */ 57 1.1 christos unsigned char gsdsiz[2]; 58 1.1 christos }; 59 1.1 christos 60 1.1 christos #endif /* _VMS_EGSD_H */ 61