/contrib/toolchain/binutils/include/vms/ChangeLog |
---|
0,0 → 1,87 |
2012-03-08 Tristan Gingold <gingold@adacore.com> |
* lbr.h (struct vms_lhd): Add comments. |
2010-05-27 Tristan Gingold <gingold@adacore.com> |
* lbr.h: Improve comments. |
2010-05-17 Tristan Gingold <gingold@adacore.com> |
* eidc.h: New file. |
* esgps.h: New file. |
2010-05-03 Tristan Gingold <gingold@adacore.com> |
* dmt.h: Improve comments. |
2010-04-30 Tristan Gingold <gingold@adacore.com> |
* lbr.h (struct vms_kbn): New structure. |
2010-04-30 Tristan Gingold <gingold@adacore.com> |
* lbr.h (LBR__C_TYP_ISHSTB): Added. |
(LHD_SANEID4): Renamed to ... |
(LHD_SANEID6): ... this. |
(LBR_MAJORID, LBR_ELFMAJORID): New macros. |
(struct vms_rfa): New structure. |
(struct vms_idxdef): Renamed to ... |
(struct vms_idx): ... this. |
(struct vms_idxdef2): Renamed to ... |
(struct vms_elfidx): ... this. |
(ELFIDX__WEAK, ELFIDX__GROUP, ELFIDX__LISTRFA, ELFIDX__SYMESC): New |
macros. |
(struct vms_lhs, struct vms_lns): New structures. |
(struct vms_mhd): Add missing fields. |
(MHD__C_MHDLEN): New macro. |
2010-03-31 Tristan Gingold <gingold@adacore.com> |
* dcx.h: New file. |
* dsc.h: New file. |
* esdfm.h: New file. |
* esdfv.h: New file. |
* internal.h: New file. |
* lbr.h: New file. |
* prt.h: New file. |
* shl.h (struct vms_shl): Add comments. |
* esrf.h (ESRF__B_NAMLNG): New macro. |
* esdf.h (ESDF__B_NAMLNG): New macro. |
* emh.h: Add macros for fields maximum value. |
* eisd.h (EISD__M_PROTECT): Fix typo in comment. |
Add macros for offsets, version, section type and match control. |
Merge vms_eisd_ext into vms_eisd. |
* eihvn.h (EIHVN__MULTI_PROCESSING_BIT, EIHVN__GALAXY_BIT): Added. |
* eihs.h: Remove blank line. |
* eihd.h (struct vms_eihd): Add comments, add image subtype names. |
* eiha.h (struct vms_eiha): Add inishr and inishr_h fields. |
* eiaf.h (struct vms_eiaf): Fix base_va size. |
* egsy.h: Add comments. |
* egsd.h: Remove blank line. |
* egps.h: Add flag names. |
* eeom.h (EEOM__M_WKTFR): Added. |
* dst.h (DST__K_CXX): Added, and reident languages. |
(DST__K_SRC_INCRLNUM_B): Added. |
Indent and order pcline commands. |
Add record begin/end, enumerations, type specification, value |
specification, label, discontinue range definitions. |
2010-02-17 Tristan Gingold <gingold@adacore.com> |
* dmt.h, dst.h, eeom.h, egps.h, egsd.h, egst.h, egsy.h: New Files. |
* eiaf.h, eicp.h, eiha.h, eihd.h, eihi.h, eihs.h, eihvn.h: Ditto. |
* eisd.h, emh.h, eobjrec.h, esdf.h, esrf.h, etir.h, shl.h: Ditto. |
Copyright (C) 2010-2012 Free Software Foundation, Inc. |
Copying and distribution of this file, with or without modification, |
are permitted in any medium without royalty provided the copyright |
notice and this notice are preserved. |
Local Variables: |
mode: change-log |
left-margin: 8 |
fill-column: 74 |
version-control: never |
End: |
/contrib/toolchain/binutils/include/vms/dcx.h |
---|
0,0 → 1,50 |
/* Alpha VMS external format for DeCompression. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_DCX_H |
#define _VMS_DCX_H |
struct vms_dcxmap |
{ |
unsigned char size[4]; |
unsigned char version[2]; |
unsigned char pad[2]; |
unsigned char sanity[4]; |
unsigned char flags[4]; |
unsigned char nsubs[2]; |
unsigned char sub0[2]; |
}; |
struct vms_dcxsbm |
{ |
unsigned char size[2]; |
unsigned char min_char; |
unsigned char max_char; |
unsigned char escape; |
unsigned char flags_bits; |
unsigned char flags[2]; |
unsigned char nodes[2]; |
unsigned char next[2]; |
}; |
#endif /* _VMS_DCX_H */ |
/contrib/toolchain/binutils/include/vms/dmt.h |
---|
0,0 → 1,48 |
/* Alpha VMS external format of Debug Module Table. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_DMT_H |
#define _VMS_DMT_H |
struct vms_dmt_header |
{ |
/* Offset in the DST of the module. */ |
unsigned char modbeg[4]; |
/* Size of the DST chunk for this module. */ |
unsigned char size[4]; |
/* Number of psect for this module. */ |
unsigned char psect_count[2]; |
unsigned char mbz[2]; |
}; |
struct vms_dmt_psect |
{ |
/* Address of the psect. */ |
unsigned char start[4]; |
/* Length of the psect. */ |
unsigned char length[4]; |
}; |
#endif /* _VMS_DMT_H */ |
/contrib/toolchain/binutils/include/vms/dsc.h |
---|
0,0 → 1,129 |
/* Alpha VMS external format of Descriptors. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_DSC_H |
#define _VMS_DSC_H |
/* Descriptors. */ |
#define DSC__K_DTYPE_Z 0 /* Unspecified. */ |
#define DSC__K_DTYPE_V 1 /* Bit. */ |
#define DSC__K_DTYPE_BU 2 /* Byte logical. */ |
#define DSC__K_DTYPE_WU 3 /* Word logical. */ |
#define DSC__K_DTYPE_LU 4 /* Longword logical. */ |
#define DSC__K_DTYPE_QU 5 /* Quadword logical. */ |
#define DSC__K_DTYPE_B 6 /* Byte integer. */ |
#define DSC__K_DTYPE_W 7 /* Word integer. */ |
#define DSC__K_DTYPE_L 8 /* Longword integer. */ |
#define DSC__K_DTYPE_Q 9 /* Quadword integer. */ |
#define DSC__K_DTYPE_F 10 /* Single-precision floating. */ |
#define DSC__K_DTYPE_D 11 /* Double-precision floating. */ |
#define DSC__K_DTYPE_FC 12 /* Complex. */ |
#define DSC__K_DTYPE_DC 13 /* Double-precision Complex. */ |
#define DSC__K_DTYPE_T 14 /* ASCII text string. */ |
#define DSC__K_DTYPE_NU 15 /* Numeric string, unsigned. */ |
#define DSC__K_DTYPE_NL 16 /* Numeric string, left separate sign. */ |
#define DSC__K_DTYPE_NLO 17 /* Numeric string, left overpunched sign. */ |
#define DSC__K_DTYPE_NR 18 /* Numeric string, right separate sign. */ |
#define DSC__K_DTYPE_NRO 19 /* Numeric string, right overpunched sign. */ |
#define DSC__K_DTYPE_NZ 20 /* Numeric string, zoned sign. */ |
#define DSC__K_DTYPE_P 21 /* Packed decimal string. */ |
#define DSC__K_DTYPE_ZI 22 /* Sequence of instructions. */ |
#define DSC__K_DTYPE_ZEM 23 /* Procedure entry mask. */ |
#define DSC__K_DTYPE_DSC 24 /* Descriptor, used for arrays of dyn strings. */ |
#define DSC__K_DTYPE_OU 25 /* Octaword logical. */ |
#define DSC__K_DTYPE_O 26 /* Octaword integer. */ |
#define DSC__K_DTYPE_G 27 /* Double precision G floating, 64 bit. */ |
#define DSC__K_DTYPE_H 28 /* Quadruple precision floating, 128 bit. */ |
#define DSC__K_DTYPE_GC 29 /* Double precision complex, G floating. */ |
#define DSC__K_DTYPE_HC 30 /* Quadruple precision complex, H floating. */ |
#define DSC__K_DTYPE_CIT 31 /* COBOL intermediate temporary. */ |
#define DSC__K_DTYPE_BPV 32 /* Bound Procedure Value. */ |
#define DSC__K_DTYPE_BLV 33 /* Bound Label Value. */ |
#define DSC__K_DTYPE_VU 34 /* Bit Unaligned. */ |
#define DSC__K_DTYPE_ADT 35 /* Absolute Date-Time. */ |
#define DSC__K_DTYPE_VT 37 /* Varying Text. */ |
#define DSC__K_DTYPE_T2 38 /* 16-bit char. */ |
#define DSC__K_DTYPE_VT2 39 /* 16-bit varying char. */ |
#define DSC__K_CLASS_S 1 /* Fixed-length scalar/string. */ |
#define DSC__K_CLASS_D 2 /* Dynamic string. */ |
#define DSC__K_CLASS_V 3 /* Reserved. */ |
#define DSC__K_CLASS_A 4 /* Contiguous array. */ |
#define DSC__K_CLASS_P 5 /* Procedure argument descriptor. */ |
#define DSC__K_CLASS_PI 6 /* Procedure incarnation descriptor. */ |
#define DSC__K_CLASS_J 7 /* Reserved. */ |
#define DSC__K_CLASS_JI 8 /* Obsolete. */ |
#define DSC__K_CLASS_SD 9 /* Decimal (scalar) string. */ |
#define DSC__K_CLASS_NCA 10 /* Non-contiguous array. */ |
#define DSC__K_CLASS_VS 11 /* Varying string. */ |
#define DSC__K_CLASS_VSA 12 /* Varying string array. */ |
#define DSC__K_CLASS_UBS 13 /* Unaligned bit string. */ |
#define DSC__K_CLASS_UBA 14 /* Unaligned bit array. */ |
#define DSC__K_CLASS_SB 15 /* String with bounds. */ |
#define DSC__K_CLASS_UBSB 16 /* Unaligned bit string with bounds. */ |
/* Common part. */ |
struct vms_dsc |
{ |
unsigned char length[2]; |
unsigned char dtype; |
unsigned char bclass; |
unsigned char pointer[4]; |
}; |
struct vms_dsc64 |
{ |
unsigned char mbo[2]; |
unsigned char dtype; |
unsigned char bclass; |
unsigned char mbmo[4]; |
unsigned char length[8]; |
unsigned char pointer[8]; |
}; |
struct vms_dsc_nca |
{ |
unsigned char length[2]; |
unsigned char dtype; |
unsigned char bclass; |
unsigned char pointer[4]; |
unsigned char scale; |
unsigned char digits; |
unsigned char aflags; |
unsigned char dimct; |
unsigned char arsize[4]; |
unsigned char a0[4]; |
}; |
struct vms_dsc_ubs |
{ |
unsigned char length[2]; |
unsigned char dtype; |
unsigned char bclass; |
unsigned char base[4]; |
unsigned char pos[4]; |
}; |
#endif /* _VMS_DSC_H */ |
/contrib/toolchain/binutils/include/vms/dst.h |
---|
0,0 → 1,274 |
/* Alpha VMS external format of Debug Symbol Table. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_DST_H |
#define _VMS_DST_H |
/* Also available in vms freeware v5.0 debug/alpha_dstrecrds.sdl. */ |
struct vms_dst_header |
{ |
/* Length. */ |
unsigned char length[2]; |
/* Type. */ |
unsigned char type[2]; |
}; |
/* Beginning of module. */ |
#define DST__K_MODBEG 188 |
/* Some well known languages. */ |
#define DST__K_MACRO 0 |
#define DST__K_BLISS 2 |
#define DST__K_C 7 |
#define DST__K_ADA 9 |
#define DST__K_CXX 15 |
struct vms_dst_modbeg |
{ |
unsigned char flags; |
unsigned char unused; |
unsigned char language[4]; |
unsigned char major[2]; |
unsigned char minor[2]; |
/* Module name ASCIC. */ |
/* Ident name ASCIC. */ |
}; |
/* Routine begin. */ |
#define DST__K_RTNBEG 190 |
struct vms_dst_rtnbeg |
{ |
unsigned char flags; |
/* Address of the code. */ |
unsigned char address[4]; |
/* Procedure descriptor address. */ |
unsigned char pd_address[4]; |
/* Name: ASCIC */ |
}; |
/* Line number. */ |
#define DST__K_LINE_NUM 185 |
struct vms_dst_pcline |
{ |
unsigned char pcline_command; |
unsigned char field[4]; |
}; |
#define DST__K_DELTA_PC_W 1 |
#define DST__K_INCR_LINUM 2 |
#define DST__K_INCR_LINUM_W 3 |
#define DST__K_SET_LINUM_INCR 4 |
#define DST__K_SET_LINUM_INCR_W 5 |
#define DST__K_RESET_LINUM_INCR 6 |
#define DST__K_BEG_STMT_MODE 7 |
#define DST__K_END_STMT_MODE 8 |
#define DST__K_SET_LINUM 9 |
#define DST__K_SET_PC 10 |
#define DST__K_SET_PC_W 11 |
#define DST__K_SET_PC_L 12 |
#define DST__K_SET_STMTNUM 13 |
#define DST__K_TERM 14 |
#define DST__K_TERM_W 15 |
#define DST__K_SET_ABS_PC 16 |
#define DST__K_DELTA_PC_L 17 |
#define DST__K_INCR_LINUM_L 18 |
#define DST__K_SET_LINUM_B 19 |
#define DST__K_SET_LINUM_L 20 |
#define DST__K_TERM_L 21 |
/* Routine end. */ |
#define DST__K_RTNEND 191 |
struct vms_dst_rtnend |
{ |
unsigned char unused; |
unsigned char size[4]; |
}; |
/* Prologue. */ |
#define DST__K_PROLOG 162 |
struct vms_dst_prolog |
{ |
unsigned char bkpt_addr[4]; |
}; |
/* Epilog. */ |
#define DST__K_EPILOG 127 |
struct vms_dst_epilog |
{ |
unsigned char flags; |
unsigned char count[4]; |
}; |
/* Module end. */ |
#define DST__K_MODEND 189 |
/* Block begin. */ |
#define DST__K_BLKBEG 176 |
struct vms_dst_blkbeg |
{ |
unsigned char unused; |
unsigned char address[4]; |
/* Name ASCIC. */ |
}; |
/* Block end. */ |
#define DST__K_BLKEND 177 |
struct vms_dst_blkend |
{ |
unsigned char unused; |
unsigned char size[4]; |
}; |
/* Source correlation. */ |
#define DST__K_SOURCE 155 |
#define DST__K_SRC_DECLFILE 1 |
#define DST__K_SRC_SETFILE 2 |
#define DST__K_SRC_SETREC_L 3 |
#define DST__K_SRC_SETREC_W 4 |
#define DST__K_SRC_SETLNUM_L 5 |
#define DST__K_SRC_SETLNUM_W 6 |
#define DST__K_SRC_INCRLNUM_B 7 |
#define DST__K_SRC_DEFLINES_W 10 |
#define DST__K_SRC_DEFLINES_B 11 |
#define DST__K_SRC_FORMFEED 16 |
struct vms_dst_src_decl_src |
{ |
unsigned char length; |
unsigned char flags; |
unsigned char fileid[2]; |
unsigned char rms_cdt[8]; |
unsigned char rms_ebk[4]; |
unsigned char rms_ffb[2]; |
unsigned char rms_rfo; |
/* Filename ASCIC. */ |
}; |
/* Record begin. */ |
#define DST__K_RECBEG 171 |
struct vms_dst_recbeg |
{ |
unsigned char vflags; |
unsigned char value[4]; |
/* Filename ASCIC. */ |
}; |
/* Record end. */ |
#define DST__K_RECEND 172 |
/* Enumeration begin. */ |
#define DST__K_ENUMBEG 165 |
/* Enumeration element. */ |
#define DST__K_ENUMELT 164 |
/* Enumeration end. */ |
#define DST__K_ENUMEND 166 |
/* Separate type specification. */ |
#define DST__K_SEPTYP 163 |
/* Type specification. */ |
#define DST__K_TYPSPEC 175 |
#define DST__K_TS_ATOM 1 /* Atomic. */ |
#define DST__K_TS_DSC 2 /* VMS Standard descriptor. */ |
#define DST__K_TS_IND 3 /* Indirect. */ |
#define DST__K_TS_TPTR 4 /* Typed pointer. */ |
#define DST__K_TS_PTR 5 /* Pointer. */ |
#define DST__K_TS_PIC 6 /* Pictured. */ |
#define DST__K_TS_ARRAY 7 |
#define DST__K_TS_SET 8 |
#define DST__K_TS_SUBRANGE 9 /* Subrange. */ |
#define DST__K_TS_ADA_DSC 10 /* Ada descriptor. */ |
#define DST__K_TS_FILE 11 |
#define DST__K_TS_AREA 12 /* Area (PL/I). */ |
#define DST__K_TS_OFFSET 13 /* Offset (PL/I). */ |
#define DST__K_TS_NOV_LENG 14 /* Novel Length. */ |
#define DST__K_TS_IND_TSPEC 15 /* Internal to debugger. */ |
#define DST__K_TS_SELF_REL_LABEL 16 /* Self-relative label (PL/I). */ |
#define DST__K_TS_RFA 17 /* (Basic). */ |
#define DST__K_TS_TASK 18 /* (Ada). */ |
#define DST__K_TS_ADA_ARRAY 19 |
#define DST__K_TS_XMOD_IND 20 /* Cross-module indirect type spec. */ |
#define DST__K_TS_CONSTRAINED 21 /* (Ada). */ |
#define DST__K_TS_MAYBE_CONSTR 22 /* Might-be-constrained (Ada). */ |
#define DST__K_TS_DYN_LOV_LENG 23 |
#define DST__K_TS_TPTR_D 24 /* Typed pointer to descriptor. */ |
#define DST__K_TS_SCAN_TREE 25 |
#define DST__K_TS_SCAN_TREEPTR 26 |
#define DST__K_TS_INCOMPLETE 27 |
#define DST__K_TS_BLISS_BLOCK 28 |
#define DST__K_TS_TPTR_64 29 |
#define DST__K_TS_PTR_64 30 |
#define DST__K_TS_REF 31 /* C++ referenced type. */ |
#define DST__K_TS_REF_64 32 |
/* Value Specification. */ |
#define DST__K_VFLAGS_NOVAL 128 /* No value. */ |
#define DST__K_VFLAGS_NOTACTIVE 248 /* Not active at current PC. */ |
#define DST__K_VFLAGS_UNALLOC 249 /* Not allocated. */ |
#define DST__K_VFLAGS_DSC 250 /* Descriptor format. */ |
#define DST__K_VFLAGS_TVS 251 /* Trailing value spec. */ |
#define DST__K_VS_FOLLOWS 253 /* Value specification follow. */ |
#define DST__K_VFLAGS_BITOFFS 255 /* Value is a bit offset. */ |
/* Vflags fields. */ |
#define DST__K_VALKIND_MASK 0x03 |
#define DST__K_INDIR 0x04 |
#define DST__K_DISP 0x08 |
#define DST__K_REGNUM_MASK 0xf0 |
#define DST__K_REGNUM_SHIFT 4 |
#define DST__K_VALKIND_LITERAL 0 |
#define DST__K_VALKIND_ADDR 1 |
#define DST__K_VALKIND_DESC 2 |
#define DST__K_VALKIND_REG 3 |
/* Label. */ |
#define DST__K_LABEL 187 |
struct vms_dst_label |
{ |
unsigned char unused; |
unsigned char value[4]; |
unsigned char name[1]; |
}; |
/* Discontiguous range. */ |
#define DST__K_DIS_RANGE 118 |
#endif /* _VMS_DST_H */ |
/contrib/toolchain/binutils/include/vms/eeom.h |
---|
0,0 → 1,62 |
/* Alpha VMS external format of Extended End Of Module. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EEOM_H |
#define _VMS_EEOM_H |
/* Completion flags. */ |
#define EEOM__C_SUCCESS 0 |
#define EEOM__C_WARNING 1 |
#define EEOM__C_ERROR 2 |
#define EEOM__C_ABORT 3 |
struct vms_eeom |
{ |
/* Record type. */ |
unsigned char rectyp[2]; |
/* Record size. */ |
unsigned char size[2]; |
/* Number of conditional linkage pairs. */ |
unsigned char total_lps[4]; |
/* Completion code. */ |
unsigned char comcod[2]; |
/* Transfer address flags. */ |
unsigned char tfrflg; |
/* Pad for alignment. */ |
unsigned char temp; |
/* Psect of transfer address. */ |
unsigned char psindx[4]; |
/* Transfer address. */ |
unsigned char tfradr[8]; |
}; |
#define EEOM__M_WKTFR (1 << 0) /* Transfer address is weak. */ |
#endif /* _VMS_EEOM_H */ |
/contrib/toolchain/binutils/include/vms/egps.h |
---|
0,0 → 1,64 |
/* Alpha VMS external format of Extended Program Section Definition. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EGPS_H |
#define _VMS_EGPS_H |
struct vms_egps |
{ |
/* Entry type. */ |
unsigned char gsdtyp[2]; |
/* Length of the entry. */ |
unsigned char gsdsiz[2]; |
/* Psect alignment. */ |
unsigned char align; |
/* Pad for alignment. */ |
unsigned char temp; |
unsigned char flags[2]; |
/* Length of this contribution. */ |
unsigned char alloc[4]; |
/* Name. */ |
unsigned char namlng; |
unsigned char name[31]; |
}; |
#define EGPS__V_PIC (1 << 0) /* Not meaningful. */ |
#define EGPS__V_LIB (1 << 1) /* Defined in a shareable image. */ |
#define EGPS__V_OVR (1 << 2) /* Overlaid contribution. */ |
#define EGPS__V_REL (1 << 3) /* Relocatable. */ |
#define EGPS__V_GBL (1 << 4) /* Global. */ |
#define EGPS__V_SHR (1 << 5) /* Shareable. */ |
#define EGPS__V_EXE (1 << 6) /* Executable. */ |
#define EGPS__V_RD (1 << 7) /* Readable. */ |
#define EGPS__V_WRT (1 << 8) /* Writable. */ |
#define EGPS__V_VEC (1 << 9) /* Change mode dispatch or message vectors. */ |
#define EGPS__V_NOMOD (1 << 10) /* Demand-zero. */ |
#define EGPS__V_COM (1 << 11) /* Conditional storage. */ |
#define EGPS__V_ALLOC_64BIT (1 << 12) /* Allocated in 64-bit space. */ |
#endif /* _VMS_EGPS_H */ |
/contrib/toolchain/binutils/include/vms/egsd.h |
---|
0,0 → 1,60 |
/* Alpha VMS external format of Extended Global Symbol Directory. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EGSD_H |
#define _VMS_EGSD_H |
#define EGSD__K_ENTRIES 2 /* Offset to first entry in record. */ |
#define EGSD__C_ENTRIES 2 /* Offset to first entry in record. */ |
#define EGSD__C_PSC 0 /* Psect definition. */ |
#define EGSD__C_SYM 1 /* Symbol specification. */ |
#define EGSD__C_IDC 2 /* Random entity check. */ |
#define EGSD__C_SPSC 5 /* Shareable image psect definition. */ |
#define EGSD__C_SYMV 6 /* Vectored (dual-valued) versions of SYM. */ |
#define EGSD__C_SYMM 7 /* Masked versions of SYM. */ |
#define EGSD__C_SYMG 8 /* EGST - gst version of SYM. */ |
#define EGSD__C_MAXRECTYP 8 /* Maximum entry type defined. */ |
struct vms_egsd |
{ |
/* Record type. */ |
unsigned char rectyp[2]; |
/* Record size. */ |
unsigned char recsiz[2]; |
/* Padding for alignment. */ |
unsigned char alignlw[4]; |
/* Followed by egsd entries. */ |
}; |
struct vms_egsd_entry |
{ |
/* Entry type. */ |
unsigned char gsdtyp[2]; |
/* Length of the entry. */ |
unsigned char gsdsiz[2]; |
}; |
#endif /* _VMS_EGSD_H */ |
/contrib/toolchain/binutils/include/vms/egst.h |
---|
0,0 → 1,39 |
/* Alpha VMS external format of Extended Global Symbol Definition. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EGST_H |
#define _VMS_EGST_H |
struct vms_egst |
{ |
struct vms_egsy header; |
unsigned char value[8]; |
unsigned char lp_1[8]; |
unsigned char lp_2[8]; |
unsigned char psindx[4]; |
unsigned char namlng; |
unsigned char name[31]; |
}; |
#endif /* _VMS_EGST_H */ |
/contrib/toolchain/binutils/include/vms/egsy.h |
---|
0,0 → 1,54 |
/* Alpha VMS external format of Extended Global Symbol. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EGSY_H |
#define _VMS_EGSY_H |
#define EGSY__W_FLAGS 6 |
#define EGSY__V_WEAK 0x0001 /* Weak symbol definition. */ |
#define EGSY__V_DEF 0x0002 /* Symbol definition. */ |
#define EGSY__V_UNI 0x0004 /* Reserved. */ |
#define EGSY__V_REL 0x0008 /* Relocatable (vs absolute). */ |
#define EGSY__V_COMM 0x0010 /* Conditional symbol def. */ |
#define EGSY__V_VECEP 0x0020 /* Reserved. */ |
#define EGSY__V_NORM 0x0040 /* Normal procedure definition. */ |
#define EGSY__V_QUAD_VAL 0x0080 /* Value exceed 32 bits. */ |
struct vms_egsy |
{ |
/* Entry type. */ |
unsigned char gsdtyp[2]; |
/* Length of the entry. */ |
unsigned char gsdsiz[2]; |
/* Data type. */ |
unsigned char datyp; |
/* Pad for alignment. */ |
unsigned char temp; |
unsigned char flags[2]; |
}; |
#endif /* _VMS_EGSY_H */ |
/contrib/toolchain/binutils/include/vms/eiaf.h |
---|
0,0 → 1,80 |
/* Alpha VMS external format of Extended Image Activator Fixup section. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EIAF_H |
#define _VMS_EIAF_H |
struct vms_eiaf |
{ |
/* Version. */ |
unsigned char majorid[4]; |
unsigned char minorid[4]; |
/* Link for image activator use. */ |
unsigned char iaflink[8]; |
/* Link for sharable image fixups. */ |
unsigned char fixuplnk[8]; |
/* Size of EIAF fixed part. */ |
unsigned char size[4]; |
/* Flags. */ |
unsigned char flags[4]; |
/* Offsets to quadword and longword relocation fixup data. */ |
unsigned char qrelfixoff[4]; |
unsigned char lrelfixoff[4]; |
/* Offsets to quardword and longword .address fixup data. */ |
unsigned char qdotadroff[4]; |
unsigned char ldotadroff[4]; |
/* Offset to code address fixup data. */ |
unsigned char codeadroff[4]; |
/* Offset to linkage part fixup data. */ |
unsigned char lpfixoff[4]; |
/* Offset to isect change protection data. */ |
unsigned char chgprtoff[4]; |
/* Offset to shareable image list. */ |
unsigned char shlstoff[4]; |
/* Number of shareable images. */ |
unsigned char shrimgcnt[4]; |
/* Number of extra shareable images allowed. */ |
unsigned char shlextra[4]; |
/* Permanent shareable image context. */ |
unsigned char permctx[4]; |
/* Base address of the image itself. */ |
unsigned char base_va[4]; |
/* Offset to linkage pair with procedure signature fixups. */ |
unsigned char lppsbfixoff[4]; |
}; |
#endif /* _VMS_EIAF_H */ |
/contrib/toolchain/binutils/include/vms/eicp.h |
---|
0,0 → 1,38 |
/* Alpha VMS external format of Extended Image section Change Protection. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EICP_H |
#define _VMS_EICP_H |
struct vms_eicp |
{ |
/* Start of section. */ |
unsigned char baseva[8]; |
/* Size in bytes of the image section. */ |
unsigned char size[4]; |
/* New protections. */ |
unsigned char newprt[4]; |
}; |
#endif /* _VMS_EICP_H */ |
/contrib/toolchain/binutils/include/vms/eidc.h |
---|
0,0 → 1,49 |
/* Alpha VMS external format of Ident Consistency check. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EIDC_H |
#define _VMS_EIDC_H |
struct vms_eidc |
{ |
/* Record type. */ |
unsigned char rectyp[2]; |
/* Record size. */ |
unsigned char recsiz[2]; |
unsigned char flags[4]; |
/* Entity name (ASCIC). */ |
/* Object name (ASCIC). */ |
/* Ident string (ASCIC or binary BINIDENT set). */ |
unsigned char name[1]; |
}; |
/* Fields of flags. */ |
#define EIDC__V_BINIDENT (1 << 0) /* Ident is a longword. */ |
#define EIDC__V_IDMATCH_SH 1 /* Ident match control. */ |
#define EIDC__V_IDMATCH_MASK 3 |
#define EIDC__V_ERRSEV_SH 3 /* Error severity. */ |
#define EIDC__V_ERRSEV_MASK 7 |
#endif /* _VMS_EIDC_H */ |
/contrib/toolchain/binutils/include/vms/eiha.h |
---|
0,0 → 1,54 |
/* Alpha VMS external format of Extended Image Activation. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EIHA_H |
#define _VMS_EIHA_H |
struct vms_eiha |
{ |
/* Size of the struct. */ |
unsigned char size[4]; |
unsigned char spare[4]; |
/* First transfer address. */ |
unsigned char tfradr1[4]; |
unsigned char tfradr1_h[4]; |
/* Second. */ |
unsigned char tfradr2[4]; |
unsigned char tfradr2_h[4]; |
/* Third. */ |
unsigned char tfradr3[4]; |
unsigned char tfradr3_h[4]; |
/* Fourth (must be 0). */ |
unsigned char tfradr4[4]; |
unsigned char tfradr4_h[4]; |
/* Shared image initialization (only if EIHD__V_INISHR is set). */ |
unsigned char inishr[4]; |
unsigned char inishr_h[4]; |
}; |
#endif /* _VMS_EIHA_H */ |
/contrib/toolchain/binutils/include/vms/eihd.h |
---|
0,0 → 1,145 |
/* Alpha VMS external format of Extended Image Header. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EIHD_H |
#define _VMS_EIHD_H |
/* Extended Image Header (eihd) structure. */ |
struct vms_eihd |
{ |
/* Version of this EIHD. */ |
unsigned char majorid[4]; |
unsigned char minorid[4]; |
/* Size in bytes of the header. */ |
unsigned char size[4]; |
/* Byte offset to ISD (Image Section Descriptors) list. */ |
unsigned char isdoff[4]; |
/* Byte offset to activation data (off=16). */ |
unsigned char activoff[4]; |
/* Byte offset to symbol table and debugging data. */ |
unsigned char symdbgoff[4]; |
/* Byte offset to image ident. */ |
unsigned char imgidoff[4]; |
/* Byte offset to patch data. */ |
unsigned char patchoff[4]; |
/* RVA of fixup info (off=32). */ |
unsigned char iafva[8]; |
/* RVA of symbol vector. */ |
unsigned char symvva[8]; |
/* Byte offset to version number array (off=48). */ |
unsigned char version_array_off[4]; |
/* Image type. */ |
unsigned char imgtype[4]; |
/* Image subtype. */ |
unsigned char subtype[4]; |
/* Size in bytes of image I/O section requested. */ |
unsigned char imgiocnt[4]; |
/* Nbr of channels requested (off=64). */ |
unsigned char iochancnt[4]; |
/* Requested privilege mask. */ |
unsigned char privreqs[8]; |
/* Number of header diskblocks. */ |
unsigned char hdrblkcnt[4]; |
/* Linker produced image flags. */ |
unsigned char lnkflags[4]; |
/* GBL SEC ident value for linkable image. */ |
unsigned char ident[4]; |
/* SYS$K_VERSION or 0 if not linked with exec. */ |
unsigned char sysver[4]; |
/* Linker match control. */ |
unsigned char matchctl; |
unsigned char fill_1[3]; |
/* Size of the symbol vector in bytes. */ |
unsigned char symvect_size[4]; |
/* Value of /BPAGE. */ |
unsigned char virt_mem_block_size[4]; |
/* Byte offset to extended fixup data. */ |
unsigned char ext_fixup_off[4]; |
/* Byte offset to no_optimize psect table. */ |
unsigned char noopt_psect_off[4]; |
unsigned char fill_2[398]; |
/* CODE identifies image type to MOM. */ |
unsigned char alias[2]; |
}; |
#define EIHD__K_MAJORID 3 /* Major id constant */ |
#define EIHD__K_MINORID 0 /* Minor id constant */ |
/* Image type. */ |
#define EIHD__K_EXE 1 /* Executable image */ |
#define EIHD__K_LIM 2 /* Linkable image. */ |
/* Image subtype. */ |
#define EIHD__C_NATIVE 0 /* Alpha native image. */ |
#define EIHD__C_CLI 1 /* Image is a CLI, run LOGINOUT. */ |
/* Linker image flags. */ |
#define EIHD__M_LNKDEBUG 0x0001 /* Full debugging requested. */ |
#define EIHD__M_LNKNOTFR 0x0002 /* No first transfer address. */ |
#define EIHD__M_NOP0BUFS 0x0004 /* No RMS use of P0 for image I/O. */ |
#define EIHD__M_PICIMG 0x0008 /* PIC image. */ |
#define EIHD__M_P0IMAGE 0x0010 /* P0 only image. */ |
#define EIHD__M_DBGDMT 0x0020 /* Image header has dmt fields. */ |
#define EIHD__M_INISHR 0x0040 /* Transfer array contains LNISHR. */ |
#define EIHD__M_XLATED 0x0080 /* Translated image. */ |
#define EIHD__M_BIND_CODE_SEC 0x0100 /* EXE sect can be put into S0. */ |
#define EIHD__M_BIND_DATA_SEC 0x0200 /* DATA sect can be put into S0. */ |
#define EIHD__M_MKTHREADS 0x0400 /* Multiple kernel threads. */ |
#define EIHD__M_UPCALLS 0x0800 /* Upcalls enabled. */ |
#define EIHD__M_OMV_READY 0x1000 /* Can be processed by OMV. */ |
#define EIHD__M_EXT_BIND_SECT 0x2000 /* May be moved, using ext fixups. */ |
/* Offsets of some fields. */ |
#define EIHD__L_SIZE 8 |
#define EIHD__L_ISDOFF 12 |
#define EIHD__L_SYMDBGOFF 20 |
#define EIHD__Q_SYMVVA 40 |
#define EIHD__L_IMGTYPE 52 |
#define EIHD__C_LENGTH 104 |
#endif /* _VMS_EIHD_H */ |
/contrib/toolchain/binutils/include/vms/eihi.h |
---|
0,0 → 1,50 |
/* Alpha VMS external format of Extended Image Identification. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EIHI_H |
#define _VMS_EIHI_H |
#define EIHI__K_MAJORID 1 |
#define EIHI__K_MINORID 2 |
struct vms_eihi |
{ |
unsigned char majorid[4]; |
unsigned char minorid[4]; |
/* Time when this image was linked. */ |
unsigned char linktime[8]; |
/* Image name. */ |
unsigned char imgnam[40]; |
/* Image ident. */ |
unsigned char imgid[16]; |
/* Linker ident. */ |
unsigned char linkid[16]; |
/* Image build ident. */ |
unsigned char imgbid[16]; |
}; |
#endif /* _VMS_EIHI_H */ |
/contrib/toolchain/binutils/include/vms/eihs.h |
---|
0,0 → 1,62 |
/* Alpha VMS external format of Extended Image Symbols and debug table. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EIHS_H |
#define _VMS_EIHS_H |
#define EIHS__K_MAJORID 1 |
#define EIHS__K_MINORID 1 |
struct vms_eihs |
{ |
unsigned char majorid[4]; |
unsigned char minorid[4]; |
/* Debug symbol table virtual block number (vbn). */ |
unsigned char dstvbn[4]; |
/* Debug symbol table size. */ |
unsigned char dstsize[4]; |
/* Global symbol table vbn. */ |
unsigned char gstvbn[4]; |
/* Global symtol table size. */ |
unsigned char gstsize[4]; |
/* Debug module table vbn. */ |
unsigned char dmtvbn[4]; |
/* Debug module table size. */ |
unsigned char dmtsize[4]; |
}; |
/* Various offsets. */ |
#define EIHS__L_DSTVBN 8 |
#define EIHS__L_DSTSIZE 12 |
#define EIHS__L_GSTVBN 16 |
#define EIHS__L_GSTSIZE 20 |
#define EIHS__L_DMTVBN 24 |
#define EIHS__L_DMTBYTES 28 |
#endif /* _VMS_EIHS_H */ |
/contrib/toolchain/binutils/include/vms/eihvn.h |
---|
0,0 → 1,58 |
/* Alpha VMS external format of Extended Image Header Version. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EIHVN_H |
#define _VMS_EIHVN_H |
struct vms_eihvn |
{ |
unsigned char subsystem_mask[4]; |
}; |
struct vms_eihvn_subversion |
{ |
unsigned char minor[2]; |
unsigned char major[2]; |
}; |
#define EIHVN__BASE_IMAGE_BIT 0 |
#define EIHVN__MEMORY_MANAGEMENT_BIT 1 |
#define EIHVN__IO_BIT 2 |
#define EIHVN__FILES_VOLUMES_BIT 3 |
#define EIHVN__PROCESS_SCHED_BIT 4 |
#define EIHVN__SYSGEN_BIT 5 |
#define EIHVN__CLUSTERS_LOCKMGR_BIT 6 |
#define EIHVN__LOGICAL_NAMES_BIT 7 |
#define EIHVN__SECURITY_BIT 8 |
#define EIHVN__IMAGE_ACTIVATOR_BIT 9 |
#define EIHVN__NETWORKS_BIT 10 |
#define EIHVN__COUNTERS_BIT 11 |
#define EIHVN__STABLE_BIT 12 |
#define EIHVN__MISC_BIT 13 |
#define EIHVN__CPU_BIT 14 |
#define EIHVN__VOLATILE_BIT 15 |
#define EIHVN__SHELL_BIT 16 |
#define EIHVN__POSIX_BIT 17 |
#define EIHVN__MULTI_PROCESSING_BIT 18 |
#define EIHVN__GALAXY_BIT 19 |
#endif /* _VMS_EIHVN_H */ |
/contrib/toolchain/binutils/include/vms/eisd.h |
---|
0,0 → 1,118 |
/* Alpha VMS external format of Extended Image Section Descriptor. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EISD_H |
#define _VMS_EISD_H |
/* Flags. */ |
#define EISD__M_GBL 0x0001 /* Global. */ |
#define EISD__M_CRF 0x0002 /* Copy on reference. */ |
#define EISD__M_DZRO 0x0004 /* Demand zero page. */ |
#define EISD__M_WRT 0x0008 /* Writable. */ |
#define EISD__M_INITALCODE 0x0010 /* Part of initialization code. */ |
#define EISD__M_BASED 0x0020 /* Isect is based. */ |
#define EISD__M_FIXUPVEC 0x0040 /* Isect is fixup section. */ |
#define EISD__M_RESIDENT 0x0080 /* Isect is memory resident. */ |
#define EISD__M_VECTOR 0x0100 /* Vector contained in isect. */ |
#define EISD__M_PROTECT 0x0200 /* Isect is protected. */ |
#define EISD__M_LASTCLU 0x0400 /* Last cluster. */ |
#define EISD__M_EXE 0x0800 /* Code isect. */ |
#define EISD__M_NONSHRADR 0x1000 /* Contains non-shareable data. */ |
#define EISD__M_QUAD_LENGTH 0x2000 /* Quad length field valid. */ |
#define EISD__M_ALLOC_64BIT 0x4000 /* Allocate 64-bit space. */ |
#define EISD__K_LEN 36 |
#define EISD__K_LENEND 12 /* For end marker or next block. */ |
#define EISD__K_MAXLENGLBL 84 |
#define EISD__K_GBLNAMLEN 44 /* Size of the field. */ |
struct vms_eisd |
{ |
unsigned char majorid[4]; |
unsigned char minorid[4]; |
/* Size (in bytes) of this eisd. */ |
unsigned char eisdsize[4]; |
/* Size (in bytes) of the section. */ |
unsigned char secsize[4]; |
/* Virtual address of the section. */ |
unsigned char virt_addr[8]; |
/* Flags. */ |
unsigned char flags[4]; |
/* Base virtual block number. */ |
unsigned char vbn[4]; |
/* Page fault cluster. */ |
unsigned char pfc; |
/* Linker match control. */ |
unsigned char matchctl; |
/* Section type. */ |
unsigned char type; |
unsigned char fill_1; |
/* End of structure for normal records. */ |
/* Ident for global section. */ |
unsigned char ident[4]; |
/* Global name ascic. First 8 bytes are quad length field. */ |
unsigned char gblnam[EISD__K_GBLNAMLEN]; |
}; |
/* Versions. */ |
#define EISD__K_MAJORID 1 |
#define EISD__K_MINORID 1 |
/* Match control. */ |
#define EISD__K_MATALL 0 /* Match always. */ |
#define EISD__K_MATEQU 1 /* Match if equal. */ |
#define EISD__K_MATLEQ 2 /* Match if less or equal. */ |
#define EISD__K_MATNEV 3 /* Match never. */ |
/* Section type. */ |
#define EISD__K_NORMAL 0 /* Normal program image section. */ |
#define EISD__K_SHRFXD 1 /* Shareable fixed section. */ |
#define EISD__K_PRVFXD 2 /* Private fixed section. */ |
#define EISD__K_SHRPIC 3 /* Shareable pic section. */ |
#define EISD__K_PRVPIC 4 /* Private PIC section. */ |
#define EISD__K_USRSTACK 253 /* User stack section. */ |
/* EISD offsets. */ |
#define EISD__L_EISDSIZE 8 |
#define EISD__L_SECSIZE 12 |
#define EISD__Q_VIR_ADDR 16 |
#define EISD__L_FLAGS 24 |
#define EISD__L_VBN 28 |
#define EISD__R_CONTROL 32 |
#define EISD__L_IDENT 36 |
#define EISD__T_GBLNAM 40 |
#endif /* _VMS_EISD_H */ |
/contrib/toolchain/binutils/include/vms/emh.h |
---|
0,0 → 1,79 |
/* Alpha VMS external format of Extended Module Header. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EMH_H |
#define _VMS_EMH_H |
#define EMH__C_MHD 0 /* Main header record. */ |
#define EMH__C_LNM 1 /* Language name and version. */ |
#define EMH__C_SRC 2 /* Source file specification. */ |
#define EMH__C_TTL 3 /* Title text of module. */ |
#define EMH__C_CPR 4 /* Copyright notice. */ |
#define EMH__C_MTC 5 /* Maintenance status. */ |
#define EMH__C_GTX 6 /* General text. */ |
#define EMH__C_MAXHDRTYP 6 /* Maximum allowable type. */ |
struct vms_emh_common |
{ |
/* Record type. */ |
unsigned char rectyp[2]; |
/* Record size. */ |
unsigned char size[2]; |
/* Subtype. */ |
unsigned char subtyp[2]; |
}; |
struct vms_emh_mhd |
{ |
struct vms_emh_common common; |
unsigned char strlvl; |
unsigned char temp; |
unsigned char arch1[4]; |
unsigned char arch2[4]; |
unsigned char recsiz[4]; |
/* Module name: ASCIC. */ |
/* Module version: ASCIC. */ |
/* Compile data: ASCIC. */ |
}; |
#define EOBJ__C_MAXRECSIZ 8192 /* Maximum legal record size. */ |
#define EOBJ__C_STRLVL 2 /* Structure level. */ |
#define EOBJ__C_SYMSIZ 64 /* Maximum symbol length. */ |
#define EOBJ__C_SECSIZ 31 /* Maximum section name length. */ |
#define EOBJ__C_STOREPLIM -1 /* Maximum repeat count on store commands. */ |
#define EOBJ__C_PSCALILIM 16 /* Maximum p-sect alignment. */ |
struct vms_emh_lnm |
{ |
struct vms_emh_common common; |
/* Language processor name: ASCII. */ |
}; |
#endif /* _VMS_EMH_H */ |
/contrib/toolchain/binutils/include/vms/eobjrec.h |
---|
0,0 → 1,48 |
/* Alpha VMS external format of Extended Object Records. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_EOBJREC_H |
#define _VMS_EOBJREC_H |
#define EOBJ__C_EMH 8 /* EVAX mdule header record. */ |
#define EOBJ__C_EEOM 9 /* EVAX ed of module record. */ |
#define EOBJ__C_EGSD 10 /* EVAX gobal symbol definition record. */ |
#define EOBJ__C_ETIR 11 /* EVAX txt information record. */ |
#define EOBJ__C_EDBG 12 /* EVAX Dbugger information record. */ |
#define EOBJ__C_ETBT 13 /* EVAX Taceback information record. */ |
#define EOBJ__C_MAXRECTYP 13 /* EVAX Lst assigned record type. */ |
struct vms_eobjrec |
{ |
/* Record type. */ |
unsigned char rectyp[2]; |
/* Record size. */ |
unsigned char size[2]; |
#if 0 |
/* Record subtype. */ |
unsigned char subtyp[2]; |
#endif |
}; |
#endif /* _VMS_EOBJREC_H */ |
/contrib/toolchain/binutils/include/vms/esdf.h |
---|
0,0 → 1,41 |
/* Alpha VMS external format of Extended GSD Global Symbol Definition. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_ESDF_H |
#define _VMS_ESDF_H |
struct vms_esdf |
{ |
struct vms_egsy header; |
unsigned char value[8]; |
unsigned char code_address[8]; |
unsigned char ca_psindx[4]; |
unsigned char psindx[4]; |
unsigned char namlng; |
unsigned char name[31]; |
}; |
#define ESDF__B_NAMLNG 32 |
#endif /* _VMS_ESDF_H */ |
/contrib/toolchain/binutils/include/vms/esdfm.h |
---|
0,0 → 1,49 |
/* Alpha VMS external format of Extended Symbol Definition for version Mask. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_ESDFM_H |
#define _VMS_ESDFM_H |
struct vms_esdfm |
{ |
/* Entry type. */ |
unsigned char gsdtyp[2]; |
/* Length of the entry. */ |
unsigned char size[2]; |
/* Data type. */ |
unsigned char datyp; |
/* Pad for alignment. */ |
unsigned char temp; |
unsigned char flags[2]; |
unsigned char value[8]; |
unsigned char psindx[4]; |
unsigned char version_mask[4]; |
unsigned char namlng; |
unsigned char name[31]; |
}; |
#endif /* _VMS_ESDFM_H */ |
/contrib/toolchain/binutils/include/vms/esdfv.h |
---|
0,0 → 1,49 |
/* Alpha VMS external format of Extended Symbol Def for Vectored symbols. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_ESDFV_H |
#define _VMS_ESDFV_H |
struct vms_esdfv |
{ |
/* Entry type. */ |
unsigned char gsdtyp[2]; |
/* Length of the entry. */ |
unsigned char size[2]; |
/* Data type. */ |
unsigned char datyp; |
/* Pad for alignment. */ |
unsigned char temp; |
unsigned char flags[2]; |
unsigned char value[8]; |
unsigned char psindx[4]; |
unsigned char vector[4]; |
unsigned char namlng; |
unsigned char name[31]; |
}; |
#endif /* _VMS_ESDFV_H */ |
/contrib/toolchain/binutils/include/vms/esgps.h |
---|
0,0 → 1,72 |
/* Alpha VMS external format of Extended Shared Program Section Definition. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_ESGPS_H |
#define _VMS_ESGPS_H |
struct vms_esgps |
{ |
/* Entry type. */ |
unsigned char gsdtyp[2]; |
/* Length of the entry. */ |
unsigned char gsdsiz[2]; |
/* Psect alignment. */ |
unsigned char align; |
/* Pad for alignment. */ |
unsigned char temp; |
unsigned char flags[2]; |
/* Length of this contribution. */ |
unsigned char alloc[4]; |
/* Image offset of the psect. */ |
unsigned char base[4]; |
/* Symbol vector offset. */ |
unsigned char value[8]; |
/* Name. */ |
unsigned char namlng; |
unsigned char name[31]; |
}; |
/* These are the same as EGPS flags. */ |
#define ESGPS__V_PIC (1 << 0) /* Not meaningful. */ |
#define ESGPS__V_LIB (1 << 1) /* Defined in a shareable image. */ |
#define ESGPS__V_OVR (1 << 2) /* Overlaid contribution. */ |
#define ESGPS__V_REL (1 << 3) /* Relocatable. */ |
#define ESGPS__V_GBL (1 << 4) /* Global. */ |
#define ESGPS__V_SHR (1 << 5) /* Shareable. */ |
#define ESGPS__V_EXE (1 << 6) /* Executable. */ |
#define ESGPS__V_RD (1 << 7) /* Readable. */ |
#define ESGPS__V_WRT (1 << 8) /* Writable. */ |
#define ESGPS__V_VEC (1 << 9) /* Change mode dispatch or message vectors. */ |
#define ESGPS__V_NOMOD (1 << 10) /* Demand-zero. */ |
#define ESGPS__V_COM (1 << 11) /* Conditional storage. */ |
#define ESGPS__V_ALLOC_64BIT (1 << 12) /* Allocated in 64-bit space. */ |
#endif /* _VMS_ESGPS_H */ |
/contrib/toolchain/binutils/include/vms/esrf.h |
---|
0,0 → 1,36 |
/* Alpha VMS external format of Extended GSD Global Symbol Reference. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_ESRF_H |
#define _VMS_ESRF_H |
struct vms_esrf |
{ |
struct vms_egsy header; |
unsigned char namlng; |
unsigned char name[31]; |
}; |
#define ESRF__B_NAMLNG 8 |
#endif /* _VMS_ESRF_H */ |
/contrib/toolchain/binutils/include/vms/etir.h |
---|
0,0 → 1,114 |
/* Alpha VMS external format of Extended Text Information and Relocation. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_ETIR_H |
#define _VMS_ETIR_H |
#define ETIR__C_MINSTACOD 0 /* Minimum stack code. */ |
#define ETIR__C_STA_GBL 0 /* Stack global symbol value. */ |
#define ETIR__C_STA_LW 1 /* Stack longword. */ |
#define ETIR__C_STA_QW 2 /* Stack quadword. */ |
#define ETIR__C_STA_PQ 3 /* Stack psect base + quadword off. */ |
#define ETIR__C_STA_LI 4 /* Stack literal. */ |
#define ETIR__C_STA_MOD 5 /* Stack module. */ |
#define ETIR__C_STA_CKARG 6 /* Check Arguments. */ |
#define ETIR__C_MAXSTACOD 6 /* Maximum stack code. */ |
#define ETIR__C_MINSTOCOD 50 /* Minimum store code. */ |
#define ETIR__C_STO_B 50 /* Store byte. */ |
#define ETIR__C_STO_W 51 /* Store word. */ |
#define ETIR__C_STO_LW 52 /* Store longword. */ |
#define ETIR__C_STO_QW 53 /* Store quadword. */ |
#define ETIR__C_STO_IMMR 54 /* Store immediate Repeated. */ |
#define ETIR__C_STO_GBL 55 /* Store global. */ |
#define ETIR__C_STO_CA 56 /* Store code address. */ |
#define ETIR__C_STO_RB 57 /* Store relative branch. */ |
#define ETIR__C_STO_AB 58 /* Store absolute branch. */ |
#define ETIR__C_STO_OFF 59 /* Store offset within psect. */ |
#define ETIR__C_STO_IMM 61 /* Store immediate. */ |
#define ETIR__C_STO_GBL_LW 62 /* Store global Longword. */ |
#define ETIR__C_STO_LP_PSB 63 /* STO_LP_PSB not valid in level 2 use STC_LP_PSB. */ |
#define ETIR__C_STO_HINT_GBL 64 /* Store 14 bit HINT at global address. */ |
#define ETIR__C_STO_HINT_PS 65 /* Store 14 bit HINT at psect + offset */ |
#define ETIR__C_MAXSTOCOD 65 /* Maximum store code. */ |
/* Operate codes. */ |
#define ETIR__C_MINOPRCOD 100 /* Minimum operate code. */ |
#define ETIR__C_OPR_NOP 100 /* No-op. */ |
#define ETIR__C_OPR_ADD 101 /* Add. */ |
#define ETIR__C_OPR_SUB 102 /* Subtract. */ |
#define ETIR__C_OPR_MUL 103 /* Multiply. */ |
#define ETIR__C_OPR_DIV 104 /* Divide. */ |
#define ETIR__C_OPR_AND 105 /* Logical AND. */ |
#define ETIR__C_OPR_IOR 106 /* Logical inclusive OR. */ |
#define ETIR__C_OPR_EOR 107 /* Logical exclusive OR. */ |
#define ETIR__C_OPR_NEG 108 /* Negate. */ |
#define ETIR__C_OPR_COM 109 /* Complement. */ |
#define ETIR__C_OPR_INSV 110 /* Insert bit field. */ |
#define ETIR__C_OPR_ASH 111 /* Arithmetic shift. */ |
#define ETIR__C_OPR_USH 112 /* Unsigned shift. */ |
#define ETIR__C_OPR_ROT 113 /* Rotate. */ |
#define ETIR__C_OPR_SEL 114 /* Select one of 3 long on top of stack. */ |
#define ETIR__C_OPR_REDEF 115 /* Redefine this symbol after pass 2. */ |
#define ETIR__C_OPR_DFLIT 116 /* Define a literal. */ |
#define ETIR__C_MAXOPRCOD 116 /* Maximum operate code. */ |
/* Control codes. */ |
#define ETIR__C_MINCTLCOD 150 /* Minimum control code. */ |
#define ETIR__C_CTL_SETRB 150 /* Set relocation base. */ |
#define ETIR__C_CTL_AUGRB 151 /* Augment relocation base. */ |
#define ETIR__C_CTL_DFLOC 152 /* Define debug location. */ |
#define ETIR__C_CTL_STLOC 153 /* Set debug location. */ |
#define ETIR__C_CTL_STKDL 154 /* Stack debug location. */ |
#define ETIR__C_MAXCTLCOD 154 /* Maximum control code. */ |
/* Store-conditional (STC) codes. */ |
#define ETIR__C_MINSTCCOD 200 /* Minimum store-conditional code. */ |
#define ETIR__C_STC_LP 200 /* STC Linkage Pair. */ |
#define ETIR__C_STC_LP_PSB 201 /* STC Linkage Pair with Proc Signature. */ |
#define ETIR__C_STC_GBL 202 /* STC Address at global address. */ |
#define ETIR__C_STC_GCA 203 /* STC Code Address at global address. */ |
#define ETIR__C_STC_PS 204 /* STC Address at psect + offset. */ |
#define ETIR__C_STC_NOP_GBL 205 /* STC NOP at address of global. */ |
#define ETIR__C_STC_NOP_PS 206 /* STC NOP at pect + offset. */ |
#define ETIR__C_STC_BSR_GBL 207 /* STC BSR at global address. */ |
#define ETIR__C_STC_BSR_PS 208 /* STC BSR at pect + offset. */ |
#define ETIR__C_STC_LDA_GBL 209 /* STC LDA at global address. */ |
#define ETIR__C_STC_LDA_PS 210 /* STC LDA at psect + offset. */ |
#define ETIR__C_STC_BOH_GBL 211 /* STC BSR or Hint at global address. */ |
#define ETIR__C_STC_BOH_PS 212 /* STC BSR or Hint at pect + offset. */ |
#define ETIR__C_STC_NBH_GBL 213 /* STC NOP,BSR or HINT at global address. */ |
#define ETIR__C_STC_NBH_PS 214 /* STC NOP,BSR or HINT at psect + offset. */ |
#define ETIR__C_MAXSTCCOD 214 /* Maximum store-conditional code. */ |
#define ETIR__C_HEADER_SIZE 4 /* Size of the header of a command */ |
struct vms_etir |
{ |
/* Commands. See above. */ |
unsigned char rectyp[2]; |
/* Size (including this header). */ |
unsigned char size[2]; |
}; |
#endif /* _VMS_ETIR_H */ |
/contrib/toolchain/binutils/include/vms/internal.h |
---|
0,0 → 1,63 |
/* Alpha VMS internal format. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_INTERNAL_H |
#define _VMS_INTERNAL_H |
struct vms_internal_eisd |
{ |
unsigned int majorid; /* Version. */ |
unsigned int minorid; |
unsigned int eisdsize; /* Size (in bytes) of this eisd. */ |
unsigned int secsize; /* Size (in bytes) of the section. */ |
bfd_vma virt_addr; /* Virtual address of the section. */ |
unsigned int flags; /* Flags. */ |
unsigned int vbn; /* Base virtual block number. */ |
unsigned char pfc; /* Page fault cluster. */ |
unsigned char matchctl; /* Linker match control. */ |
unsigned char type; /* Section type. */ |
}; |
struct vms_internal_gbl_eisd |
{ |
struct vms_internal_eisd common; |
unsigned int ident; /* Ident for global section. */ |
unsigned char gblnam[44]; /* Global name ascic. */ |
}; |
struct vms_internal_eisd_map |
{ |
/* Next eisd in the list. */ |
struct vms_internal_eisd_map *next; |
/* Offset in output file. */ |
file_ptr file_pos; |
union |
{ |
struct vms_internal_eisd eisd; |
struct vms_internal_gbl_eisd gbl_eisd; |
} u; |
}; |
#endif /* _VMS_INTERNAL_H */ |
/contrib/toolchain/binutils/include/vms/lbr.h |
---|
0,0 → 1,332 |
/* Alpha VMS external format of Libraries. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_LBR_H |
#define _VMS_LBR_H |
/* Libray HeaDer. */ |
/* Magic numbers. Should match the major version. */ |
#define LHD_SANEID_DCX 319232342 |
#define LHD_SANEID3 233579905 |
#define LHD_SANEID6 233579911 |
/* Library type. */ |
#define LBR__C_TYP_UNK 0 /* Unknown / unspecified. */ |
#define LBR__C_TYP_OBJ 1 /* Vax object. */ |
#define LBR__C_TYP_MLB 2 /* Macro. */ |
#define LBR__C_TYP_HLP 3 /* Help. */ |
#define LBR__C_TYP_TXT 4 /* Text. */ |
#define LBR__C_TYP_SHSTB 5 /* Vax shareable image. */ |
#define LBR__C_TYP_NCS 6 /* NCS. */ |
#define LBR__C_TYP_EOBJ 7 /* Alpha object. */ |
#define LBR__C_TYP_ESHSTB 8 /* Alpha shareable image. */ |
#define LBR__C_TYP_IOBJ 9 /* IA-64 object. */ |
#define LBR__C_TYP_ISHSTB 10 /* IA-64 shareable image. */ |
struct vms_lhd |
{ |
/* Type of the library. See above. */ |
unsigned char type; |
/* Number of indexes. Generally 1, 2 for object libraries. */ |
unsigned char nindex; |
unsigned char fill_1[2]; |
/* Sanity Id. */ |
unsigned char sanity[4]; |
/* Version. */ |
unsigned char majorid[2]; |
unsigned char minorid[2]; |
/* Tool name. */ |
unsigned char lbrver[32]; |
/* Create time. */ |
unsigned char credat[8]; |
/* Update time. */ |
unsigned char updtim[8]; |
/* Size of the MHD. */ |
unsigned char mhdusz; |
unsigned char idxblkf[2]; /* Unused. */ |
unsigned char fill_2; |
unsigned char closerror[2]; |
unsigned char spareword[2]; |
/* First free block, and number of free blocks. */ |
unsigned char freevbn[4]; |
unsigned char freeblk[4]; |
unsigned char nextrfa[6]; |
unsigned char nextvbn[4]; |
/* Free pre-allocated index block. */ |
/* Number of free blocks. */ |
unsigned char freidxblk[4]; |
/* VBN of a simply linked list of free blocks. The list is terminated by a |
nul VBN. */ |
unsigned char freeidx[4]; |
/* Highest pre-allocated index block and in use. */ |
unsigned char hipreal[4]; |
unsigned char hiprusd[4]; |
/* Number of index blocks in use. */ |
unsigned char idxblks[4]; |
/* Number of index entries. */ |
unsigned char idxcnt[4]; |
/* Number of modules entries. */ |
unsigned char modcnt[4]; |
unsigned char fill_3[2]; |
/* Number of module headers. */ |
unsigned char modhdrs[4]; |
/* Overhead index pointers. */ |
unsigned char idxovh[4]; |
/* Update history records. */ |
unsigned char maxluhrec[2]; |
unsigned char numluhrec[2]; |
unsigned char begluhrfa[6]; |
unsigned char endluhrfa[6]; |
/* DCX map. */ |
unsigned char dcxmapvbn[4]; |
unsigned char fill_4[4 * 13]; |
}; |
/* Known major ids. */ |
#define LBR_MAJORID 3 /* Alpha libraries. */ |
#define LBR_ELFMAJORID 6 /* Elf libraries (new index, new data). */ |
/* Offset of the first IDD. */ |
#define LHD_IDXDESC 196 |
/* InDex Description. */ |
struct vms_idd |
{ |
unsigned char flags[2]; |
/* Max length of the key. */ |
unsigned char keylen[2]; |
/* First index block. */ |
unsigned char vbn[4]; |
}; |
/* IDD flags. */ |
#define IDD__FLAGS_ASCII 1 |
#define IDD__FLAGS_LOCKED 2 |
#define IDD__FLAGS_VARLENIDX 4 |
#define IDD__FLAGS_NOCASECMP 8 |
#define IDD__FLAGS_NOCASENTR 16 |
#define IDD__FLAGS_UPCASNTRY 32 |
#define IDD_LENGTH 8 |
/* Index block. */ |
#define INDEXDEF__LENGTH 512 |
#define INDEXDEF__BLKSIZ 500 |
struct vms_indexdef |
{ |
/* Number of bytes used. */ |
unsigned char used[2]; |
/* VBN of the parent. */ |
unsigned char parent[4]; |
unsigned char fill_1[6]; |
/* The key field contains vms_idx/vms_elfidx structures, which are |
simply a key (= a string) and a rfa. */ |
unsigned char keys[INDEXDEF__BLKSIZ]; |
}; |
/* An offset in a file. */ |
struct vms_rfa |
{ |
/* Logical block number, 1 based. |
0 means that the field is absent. Block size is 512. */ |
unsigned char vbn[4]; |
/* Offset within the block. */ |
unsigned char offset[2]; |
}; |
/* Index keys. For version 3. */ |
struct vms_idx |
{ |
/* Offset from the start of the vbn, so minimum should be |
DATA__DATA (ie 6). */ |
struct vms_rfa rfa; |
unsigned char keylen; |
/* The length of this field is in fact keylen. */ |
unsigned char keyname[256]; |
}; |
/* Index keys, for version 4 and later. */ |
struct vms_elfidx |
{ |
struct vms_rfa rfa; |
unsigned char keylen[2]; |
unsigned char flags; |
unsigned char keyname[256]; |
}; |
/* Flags of elfidx. */ |
#define ELFIDX__WEAK 0x01 /* Weak symbol. */ |
#define ELFIDX__GROUP 0x02 /* Group symbol. */ |
#define ELFIDX__LISTRFA 0x04 /* RFA field points to an LHS. */ |
#define ELFIDX__SYMESC 0x08 /* Long symbol. */ |
#define RFADEF__C_INDEX 0xffff |
/* List head structure. That's what is pointed by rfa when LISTRFA flag |
is set in elfidx. */ |
struct vms_lhs |
{ |
struct vms_rfa ng_g_rfa; /* Non-group global. */ |
struct vms_rfa ng_wk_rfa; /* Non-group weak. */ |
struct vms_rfa g_g_rfa; /* Group global. */ |
struct vms_rfa g_wk_rfa; /* Group weak. */ |
unsigned char flags; |
}; |
/* List node structure. Fields of LHS point to this structure. */ |
struct vms_lns |
{ |
/* Next node in the list. */ |
struct vms_rfa nxtrfa; |
/* Module associated with the key. */ |
struct vms_rfa modrfa; |
}; |
struct vms_datadef |
{ |
/* Number of records in this block. */ |
unsigned char recs; |
unsigned char fill_1; |
/* Next vbn. */ |
unsigned char link[4]; |
/* Data. The first word is the record length, followed by record |
data and a possible pad byte so that record length is always aligned. */ |
unsigned char data[506]; |
}; |
#define DATA__LENGTH 512 |
#define DATA__DATA 6 |
/* Key name block. This is used for keys longer than 128 bytes. */ |
struct vms_kbn |
{ |
/* Length of the key chunk. */ |
unsigned char keylen[2]; |
/* RFA of the next chunk. */ |
struct vms_rfa rfa; |
/* Followed by the key chunk. */ |
}; |
/* Module header. */ |
struct vms_mhd |
{ |
/* Fixed part. */ |
unsigned char lbrflag; |
unsigned char id; |
unsigned char fill_1[2]; |
unsigned char refcnt[4]; |
unsigned char datim[8]; |
unsigned char objstat; |
/* Ident or GSMATCH. */ |
unsigned char objidlng; |
unsigned char objid[31]; |
unsigned char pad1[3]; |
unsigned char otherefcnt[4]; |
unsigned char modsize[4]; |
unsigned char pad2[4]; |
}; |
#define MHD__C_MHDID 0xad /* Value for id. */ |
#define MHD__C_MHDLEN 16 /* Fixed part length. */ |
#define MHD__C_USRDAT 16 |
/* Flags for objstat. */ |
#define MHD__M_SELSRC 0x1 /* Selective search. */ |
#define MHD__M_OBJTIR 0x2 |
#define MHD__M_WKSYM 0x4 |
struct vms_luh |
{ |
unsigned char nxtluhblk[4]; |
unsigned char spare[2]; |
unsigned char data[506]; |
}; |
struct vms_luhdef |
{ |
unsigned char rechdr[2]; |
unsigned char reclen[2]; |
}; |
#define LUH__RECHDRLEN 4 |
#define LUH__RECHDRMRK 0xabba |
#define LUH__DATAFLDLEN 506 |
/* Entry in the history. */ |
struct vms_leh |
{ |
unsigned char date[8]; |
unsigned char nbr_units[2]; |
unsigned char action[2]; /* 1: delete, 2: insert, 3: replaced. */ |
unsigned char idlen; |
/* username |
modules... */ |
}; |
#endif /* _VMS_LBR_H */ |
/contrib/toolchain/binutils/include/vms/prt.h |
---|
0,0 → 1,43 |
/* Alpha VMS external format of Protection values. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_PRT_H |
#define _VMS_PRT_H |
#define PRT__C_NA 0 /* No access. */ |
#define PRT__C_RESERVED 1 |
#define PRT__C_KW 2 /* Kernel RW. */ |
#define PRT__C_KR 3 /* Kernel RO. */ |
#define PRT__C_UW 4 /* User RW. */ |
#define PRT__C_EW 5 /* Executive RW. */ |
#define PRT__C_ERKW 6 /* Executive RO, Kernel RW. */ |
#define PRT__C_ER 7 /* Executive RO. */ |
#define PRT__C_SW 8 /* Supervisor RW. */ |
#define PRT__C_SREW 9 /* Supervisor RO, Executive RW. */ |
#define PRT__C_SRKW 10 /* Supervisor RO, Kernel RW. */ |
#define PRT__C_SR 11 /* Supervisor RO. */ |
#define PRT__C_URSW 12 /* User RO, Supervisor RW. */ |
#define PRT__C_UREW 13 /* User RO, Executive RW. */ |
#define PRT__C_URKW 14 /* User RO, Kernel RW. */ |
#define PRT__C_UR 15 /* User RO. */ |
#endif /* _VMS_PRT_H */ |
/contrib/toolchain/binutils/include/vms/shl.h |
---|
0,0 → 1,55 |
/* Alpha VMS external format of Shareable image List. |
Copyright 2010 Free Software Foundation, Inc. |
Written by Tristan Gingold <gingold@adacore.com>, AdaCore. |
This file is part of BFD, the Binary File Descriptor library. |
This program 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 of the License, or |
(at your option) any later version. |
This program 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 this program; if not, write to the Free Software |
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
MA 02110-1301, USA. */ |
#ifndef _VMS_SHL_H |
#define _VMS_SHL_H |
struct vms_shl |
{ |
/* Base address of this shareable image. */ |
unsigned char baseva[4]; |
/* Point in SHL shareable image to SHL in executable image. */ |
unsigned char shlptr[4]; |
/* GSMATCH. */ |
unsigned char ident[4]; |
/* Permanent shareable image context. */ |
unsigned char permctx[4]; |
/* Size of this structure. */ |
unsigned char size; |
unsigned char fill_1[2]; |
/* Flags. */ |
unsigned char flags; |
/* Address of the image control block (in memory). */ |
unsigned char icb[4]; |
/* Image name. ASCIC. */ |
unsigned char imgnam[40]; |
}; |
#endif /* _VMS_SHL_H */ |