| Index: third_party/yasm/patched-yasm/modules/objfmts/xdf/xdf-objfmt.c
|
| ===================================================================
|
| --- third_party/yasm/patched-yasm/modules/objfmts/xdf/xdf-objfmt.c (revision 71129)
|
| +++ third_party/yasm/patched-yasm/modules/objfmts/xdf/xdf-objfmt.c (working copy)
|
| @@ -25,7 +25,7 @@
|
| * POSSIBILITY OF SUCH DAMAGE.
|
| */
|
| #include <util.h>
|
| -/*@unused@*/ RCSID("$Id: xdf-objfmt.c 2166 2009-01-02 08:33:21Z peter $");
|
| +/*@unused@*/ RCSID("$Id: xdf-objfmt.c 2310 2010-03-28 19:28:54Z peter $");
|
|
|
| #include <libyasm.h>
|
|
|
| @@ -604,10 +604,11 @@
|
| yasm_xfree(objfmt);
|
| }
|
|
|
| -static xdf_section_data *
|
| -xdf_objfmt_init_new_section(yasm_object *object, yasm_section *sect,
|
| - const char *sectname, unsigned long line)
|
| +static void
|
| +xdf_objfmt_init_new_section(yasm_section *sect, unsigned long line)
|
| {
|
| + yasm_object *object = yasm_section_get_object(sect);
|
| + const char *sectname = yasm_section_get_name(sect);
|
| yasm_objfmt_xdf *objfmt_xdf = (yasm_objfmt_xdf *)object->objfmt;
|
| xdf_section_data *data;
|
| yasm_symrec *sym;
|
| @@ -626,21 +627,17 @@
|
| sym = yasm_symtab_define_label(object->symtab, sectname,
|
| yasm_section_bcs_first(sect), 1, line);
|
| data->sym = sym;
|
| - return data;
|
| }
|
|
|
| static yasm_section *
|
| xdf_objfmt_add_default_section(yasm_object *object)
|
| {
|
| yasm_section *retval;
|
| - xdf_section_data *xsd;
|
| int isnew;
|
|
|
| retval = yasm_object_get_general(object, ".text", 0, 1, 0, &isnew, 0);
|
| - if (isnew) {
|
| - xsd = xdf_objfmt_init_new_section(object, retval, ".text", 0);
|
| + if (isnew)
|
| yasm_section_set_default(retval, 1);
|
| - }
|
| return retval;
|
| }
|
|
|
| @@ -750,10 +747,7 @@
|
| retval = yasm_object_get_general(object, sectname, align, 1, resonly,
|
| &isnew, line);
|
|
|
| - if (isnew)
|
| - xsd = xdf_objfmt_init_new_section(object, retval, sectname, line);
|
| - else
|
| - xsd = yasm_section_get_data(retval, &xdf_section_data_cb);
|
| + xsd = yasm_section_get_data(retval, &xdf_section_data_cb);
|
|
|
| if (isnew || yasm_section_is_default(retval)) {
|
| yasm_section_set_default(retval, 0);
|
| @@ -847,6 +841,7 @@
|
| xdf_objfmt_output,
|
| xdf_objfmt_destroy,
|
| xdf_objfmt_add_default_section,
|
| + xdf_objfmt_init_new_section,
|
| xdf_objfmt_section_switch,
|
| xdf_objfmt_get_special_sym
|
| };
|
|
|