eeom.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. /* Alpha VMS external format of Extended End Of Module.
  2. Copyright (C) 2010-2015 Free Software Foundation, Inc.
  3. Written by Tristan Gingold <gingold@adacore.com>, AdaCore.
  4. This file is part of BFD, the Binary File Descriptor library.
  5. This program is free software; you can redistribute it and/or modify
  6. it under the terms of the GNU General Public License as published by
  7. the Free Software Foundation; either version 3 of the License, or
  8. (at your option) any later version.
  9. This program is distributed in the hope that it will be useful,
  10. but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. GNU General Public License for more details.
  13. You should have received a copy of the GNU General Public License
  14. along with this program; if not, write to the Free Software
  15. Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
  16. MA 02110-1301, USA. */
  17. #ifndef _VMS_EEOM_H
  18. #define _VMS_EEOM_H
  19. /* Completion flags. */
  20. #define EEOM__C_SUCCESS 0
  21. #define EEOM__C_WARNING 1
  22. #define EEOM__C_ERROR 2
  23. #define EEOM__C_ABORT 3
  24. struct vms_eeom
  25. {
  26. /* Record type. */
  27. unsigned char rectyp[2];
  28. /* Record size. */
  29. unsigned char size[2];
  30. /* Number of conditional linkage pairs. */
  31. unsigned char total_lps[4];
  32. /* Completion code. */
  33. unsigned char comcod[2];
  34. /* Transfer address flags. */
  35. unsigned char tfrflg;
  36. /* Pad for alignment. */
  37. unsigned char temp;
  38. /* Psect of transfer address. */
  39. unsigned char psindx[4];
  40. /* Transfer address. */
  41. unsigned char tfradr[8];
  42. };
  43. #define EEOM__M_WKTFR (1 << 0) /* Transfer address is weak. */
  44. #endif /* _VMS_EEOM_H */