Home | History | Annotate | Download | only in vms
      1 /* Alpha VMS external format of Extended Image Activator Fixup section.
      2 
      3    Copyright (C) 2010-2016 Free Software Foundation, Inc.
      4    Written by Tristan Gingold <gingold (at) adacore.com>, AdaCore.
      5 
      6    This file is part of BFD, the Binary File Descriptor library.
      7 
      8    This program is free software; you can redistribute it and/or modify
      9    it under the terms of the GNU General Public License as published by
     10    the Free Software Foundation; either version 3 of the License, or
     11    (at your option) any later version.
     12 
     13    This program is distributed in the hope that it will be useful,
     14    but WITHOUT ANY WARRANTY; without even the implied warranty of
     15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     16    GNU General Public License for more details.
     17 
     18    You should have received a copy of the GNU General Public License
     19    along with this program; if not, write to the Free Software
     20    Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
     21    MA 02110-1301, USA.  */
     22 
     23 #ifndef _VMS_EIAF_H
     24 #define _VMS_EIAF_H
     25 
     26 struct vms_eiaf
     27 {
     28   /* Version.  */
     29   unsigned char majorid[4];
     30   unsigned char minorid[4];
     31 
     32   /* Link for image activator use.  */
     33   unsigned char iaflink[8];
     34 
     35   /* Link for sharable image fixups.  */
     36   unsigned char fixuplnk[8];
     37 
     38   /* Size of EIAF fixed part.  */
     39   unsigned char size[4];
     40 
     41   /* Flags.  */
     42   unsigned char flags[4];
     43 
     44   /* Offsets to quadword and longword relocation fixup data.  */
     45   unsigned char qrelfixoff[4];
     46   unsigned char lrelfixoff[4];
     47 
     48   /* Offsets to quardword and longword .address fixup data.  */
     49   unsigned char qdotadroff[4];
     50   unsigned char ldotadroff[4];
     51 
     52   /* Offset to code address fixup data.  */
     53   unsigned char codeadroff[4];
     54 
     55   /* Offset to linkage part fixup data.  */
     56   unsigned char lpfixoff[4];
     57 
     58   /* Offset to isect change protection data.  */
     59   unsigned char chgprtoff[4];
     60 
     61   /* Offset to shareable image list.  */
     62   unsigned char shlstoff[4];
     63 
     64   /* Number of shareable images.  */
     65   unsigned char shrimgcnt[4];
     66 
     67   /* Number of extra shareable images allowed.  */
     68   unsigned char shlextra[4];
     69 
     70   /* Permanent shareable image context.  */
     71   unsigned char permctx[4];
     72 
     73   /* Base address of the image itself.  */
     74   unsigned char base_va[4];
     75 
     76   /* Offset to linkage pair with procedure signature fixups.  */
     77   unsigned char lppsbfixoff[4];
     78 };
     79 
     80 #endif /* _VMS_EIAF_H */
     81