From d5241511dbe242f2c3e6208bb41130e76a050c15 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Mon, 20 Oct 1997 19:08:15 +0000 Subject: [PATCH] Mon Oct 20 15:01:27 1997 Klaus K"ampf * evax-egsd.c: make section flags dec c compatible --- bfd/ChangeLog | 4 ++++ bfd/evax-egsd.c | 27 +++++++++++++++++++-------- 2 files changed, 23 insertions(+), 8 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 1c554e35e4..b2402957df 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,7 @@ +Mon Oct 20 15:01:27 1997 Klaus K"ampf + + * evax-egsd.c: make section flags dec c compatible + Mon Oct 20 09:38:31 1997 Jeffrey A Law (law@cygnus.com) * som.c (normalize): Delete function. diff --git a/bfd/evax-egsd.c b/bfd/evax-egsd.c index 8354b8b84c..cd1203996d 100644 --- a/bfd/evax-egsd.c +++ b/bfd/evax-egsd.c @@ -41,6 +41,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #define EVAX_LINK_NAME "$LINK$" #define EVAX_DATA_NAME "$DATA$" #define EVAX_BSS_NAME "$BSS$" +#define EVAX_READONLYADDR_NAME "$READONLY_ADDR$" #define EVAX_READONLY_NAME "$READONLY$" #define EVAX_LITERAL_NAME "$LITERAL$" #define EVAX_COMMON_NAME "$COMMON$" @@ -54,7 +55,7 @@ struct sec_flags_struct { flagword flags_hassize; /* flags we set if the section has a size > 0 */ }; -/* just a dummy flag array since i don't understand it yet */ +/* These flags are deccrtl/vaxcrtl (openVMS 6.2) compatible */ */ static struct sec_flags_struct evax_section_flags[] = { { EVAX_ABS_NAME, @@ -67,13 +68,18 @@ static struct sec_flags_struct evax_section_flags[] = { (SEC_CODE), (EGPS_S_V_PIC|EGPS_S_V_REL|EGPS_S_V_SHR|EGPS_S_V_EXE), (SEC_IN_MEMORY|SEC_CODE|SEC_HAS_CONTENTS|SEC_ALLOC|SEC_LOAD) }, + { EVAX_LITERAL_NAME, + (EGPS_S_V_PIC|EGPS_S_V_REL|EGPS_S_V_SHR|EGPS_S_V_RD|EGPS_S_V_NOMOD), + (SEC_DATA|SEC_READONLY), + (EGPS_S_V_PIC|EGPS_S_V_REL|EGPS_S_V_SHR|EGPS_S_V_RD), + (SEC_IN_MEMORY|SEC_DATA|SEC_HAS_CONTENTS|SEC_ALLOC|SEC_READONLY|SEC_LOAD) }, { EVAX_LINK_NAME, (EGPS_S_V_REL|EGPS_S_V_RD), (SEC_DATA|SEC_READONLY), (EGPS_S_V_REL|EGPS_S_V_RD), (SEC_IN_MEMORY|SEC_DATA|SEC_HAS_CONTENTS|SEC_ALLOC|SEC_READONLY|SEC_LOAD) }, { EVAX_DATA_NAME, - (EGPS_S_V_REL|EGPS_S_V_RD|EGPS_S_V_WRT), + (EGPS_S_V_REL|EGPS_S_V_RD|EGPS_S_V_WRT|EGPS_S_V_NOMOD), (SEC_DATA), (EGPS_S_V_REL|EGPS_S_V_RD|EGPS_S_V_WRT), (SEC_IN_MEMORY|SEC_DATA|SEC_HAS_CONTENTS|SEC_ALLOC|SEC_LOAD) }, @@ -82,16 +88,21 @@ static struct sec_flags_struct evax_section_flags[] = { (SEC_NO_FLAGS), (EGPS_S_V_REL|EGPS_S_V_RD|EGPS_S_V_WRT|EGPS_S_V_NOMOD), (SEC_IN_MEMORY|SEC_HAS_CONTENTS|SEC_ALLOC|SEC_LOAD) }, + { EVAX_READONLYADDR_NAME, + (EGPS_S_V_PIC|EGPS_S_V_REL|EGPS_S_V_RD), + (SEC_DATA|SEC_READONLY), + (EGPS_S_V_PIC|EGPS_S_V_REL|EGPS_S_V_RD), + (SEC_IN_MEMORY|SEC_DATA|SEC_HAS_CONTENTS|SEC_ALLOC|SEC_READONLY|SEC_LOAD) }, { EVAX_READONLY_NAME, - (EGPS_S_V_PIC|EGPS_S_V_REL|EGPS_S_V_SHR|EGPS_S_V_RD), - (SEC_DATA|SEC_READONLY), - (EGPS_S_V_PIC|EGPS_S_V_REL|EGPS_S_V_SHR|EGPS_S_V_RD), - (SEC_IN_MEMORY|SEC_DATA|SEC_HAS_CONTENTS|SEC_ALLOC|SEC_READONLY|SEC_LOAD) }, - { EVAX_LITERAL_NAME, - (EGPS_S_V_PIC|EGPS_S_V_REL|EGPS_S_V_SHR|EGPS_S_V_RD), + (EGPS_S_V_PIC|EGPS_S_V_REL|EGPS_S_V_SHR|EGPS_S_V_RD|EGPS_S_V_NOMOD), (SEC_DATA|SEC_READONLY), (EGPS_S_V_PIC|EGPS_S_V_REL|EGPS_S_V_SHR|EGPS_S_V_RD), (SEC_IN_MEMORY|SEC_DATA|SEC_HAS_CONTENTS|SEC_ALLOC|SEC_READONLY|SEC_LOAD) }, + { EVAX_LOCAL_NAME, + (EGPS_S_V_REL|EGPS_S_V_RD|EGPS_S_V_WRT), + (SEC_DATA), + (EGPS_S_V_REL|EGPS_S_V_RD|EGPS_S_V_WRT), + (SEC_IN_MEMORY|SEC_DATA|SEC_HAS_CONTENTS|SEC_ALLOC|SEC_LOAD) }, { NULL, (EGPS_S_V_REL|EGPS_S_V_RD|EGPS_S_V_WRT), (SEC_DATA),