diff options
author | Iain Sandoe <iain@codesourcery.com> | 2012-02-10 13:12:55 +0000 |
---|---|---|
committer | Iain Sandoe <iain@codesourcery.com> | 2012-02-10 13:12:55 +0000 |
commit | fb4914b0e6e9d5fd99e4f5f3214591bf29da24cb (patch) | |
tree | f9c640827592978fd1cf5757f501d11e67e6af8f | |
parent | 09903f4b533109ab6d161a6c9b513b6f85aa8028 (diff) | |
download | gdb-fb4914b0e6e9d5fd99e4f5f3214591bf29da24cb.zip gdb-fb4914b0e6e9d5fd99e4f5f3214591bf29da24cb.tar.gz gdb-fb4914b0e6e9d5fd99e4f5f3214591bf29da24cb.tar.bz2 |
gas:
* config/obj-macho.c (obj_mach_o_make_or_get_sect): Always fill in
stub size when provided. (obj_mach_o_section): Flag that stub-size
has been provided.
-rw-r--r-- | gas/ChangeLog | 6 | ||||
-rw-r--r-- | gas/config/obj-macho.c | 7 |
2 files changed, 12 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index dc5da04..757db70 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2012-02-10 Iain Sandoe <idsandoe@googlemail.com> + + * config/obj-macho.c (obj_mach_o_make_or_get_sect): Always fill in + stub size when provided. (obj_mach_o_section): Flag that stub-size + has been provided. + 2012-02-08 H.J. Lu <hongjiu.lu@intel.com> * config/tc-i386.c (HLE_PREFIX): New. diff --git a/gas/config/obj-macho.c b/gas/config/obj-macho.c index f4706ab..c32398f 100644 --- a/gas/config/obj-macho.c +++ b/gas/config/obj-macho.c @@ -161,6 +161,7 @@ obj_mach_o_get_section_names (char *seg, char *sec, #define SECT_TYPE_SPECIFIED 0x0001 #define SECT_ATTR_SPECIFIED 0x0002 #define SECT_ALGN_SPECIFIED 0x0004 +#define SECT_STUB_SPECIFIED 0x0008 static segT obj_mach_o_make_or_get_sect (char * segname, char * sectname, @@ -250,7 +251,6 @@ obj_mach_o_make_or_get_sect (char * segname, char * sectname, msect->align = secalign; msect->flags = sectype | secattr; - msect->reserved2 = stub_size; if (sectype == BFD_MACH_O_S_ZEROFILL || sectype == BFD_MACH_O_S_GB_ZEROFILL) @@ -263,6 +263,10 @@ obj_mach_o_make_or_get_sect (char * segname, char * sectname, as_warn (_("Ignoring changed section attributes for %s"), name); } + if (specified_mask & SECT_STUB_SPECIFIED) + /* At present, the stub size is not supplied from the BFD tables. */ + msect->reserved2 = stub_size; + return sec; } @@ -396,6 +400,7 @@ obj_mach_o_section (int ignore ATTRIBUTE_UNUSED) input_line_pointer++; sizeof_stub = get_absolute_expression (); + specified_mask |= SECT_STUB_SPECIFIED; } else if ((specified_mask & SECT_ATTR_SPECIFIED) && sectype == BFD_MACH_O_S_SYMBOL_STUBS) |