From a7120aeaef2df67f657cf6b85960964529c0fffe Mon Sep 17 00:00:00 2001 From: Gunther Nikl Date: Sun, 8 Mar 2015 20:02:08 +0000 Subject: [PATCH] Fix N_WARNING .stabs handling. * gas/config/obj-aout.h (N_REGISTER): Use 18 as fake N_TYPE for SEG_REGISTER. * gas/config/obj-aout.c (N_TYPE_seg): Move SEG_REGISTER to its new position. * gas/symbols.h (N_REGISTER): Do not redefine if already present. --- gas/config/obj-aout.c | 4 ++-- gas/config/obj-aout.h | 1 + gas/symbols.h | 2 ++ 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/gas/config/obj-aout.c b/gas/config/obj-aout.c index 06ca91a..f823c74 100644 --- a/gas/config/obj-aout.c +++ b/gas/config/obj-aout.c @@ -65,9 +65,9 @@ const segT N_TYPE_seg[N_TYPE + 2] = SEG_BSS, /* N_BSS == 8 */ SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, - SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, + SEG_REGISTER, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, SEG_GOOF, - SEG_REGISTER, /* dummy N_REGISTER for regs = 30 */ + SEG_GOOF, SEG_GOOF, }; #endif diff --git a/gas/config/obj-aout.h b/gas/config/obj-aout.h index 7fca45d..57aa36e 100644 --- a/gas/config/obj-aout.h +++ b/gas/config/obj-aout.h @@ -44,6 +44,7 @@ extern const short seg_N_TYPE[]; extern const segT N_TYPE_seg[]; +#define N_REGISTER 18 /* abuse N_COMM; 30 conflicts with N_WARNING! */ #ifndef DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE #define DEFAULT_MAGIC_NUMBER_FOR_OBJECT_FILE (OMAGIC) diff --git a/gas/symbols.h b/gas/symbols.h index 65fb849..5746275 100644 --- a/gas/symbols.h +++ b/gas/symbols.h @@ -144,7 +144,9 @@ extern const segT N_TYPE_seg[]; /* subseg.c */ #define SEGMENT_TO_SYMBOL_TYPE(seg) ( seg_N_TYPE [(int) (seg)] ) extern const short seg_N_TYPE[];/* subseg.c */ +#ifndef N_REGISTER #define N_REGISTER 30 /* Fake N_TYPE value for SEG_REGISTER */ +#endif /* N_REGISTER */ void symbol_clear_list_pointers PARAMS ((symbolS * symbolP));