From e347ef3b343fc42ed312d5125047d59ae15df795 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Mon, 20 Dec 2010 06:27:09 +0000 Subject: PR ld/12001 Revert 2010-11-03 Nick Clifton * ldlang.c (ldlang_def_chain_list): Delete. (insert_defined, ldlang_add_def, lang_place_defineds): Delete. (lang_process): Don't call lang_place_defineds. (lang_add_assignment): Don't do anything special for --defsym. * ldexp.h (struct ldexp_control): Add uses_defined. (exp_fold_tree_no_dot): Declare. * ldexp.c (exp_fold_tree): Clear uses_defined. (exp_fold_tree_no_dot): Likewise. Make global. (fold_name ): Set uses_defined. (exp_fold_tree_1 ): Define symbol during first phase even when the value being assigned isn't valid. * ldlang.c (open_input_bfds): Process assignment statements. (lang_process): Bump lang_statement_iteration. (scan_for_self_assignment): Formatting. (print_assignment): Style. testsuite/ * ld-scripts/default-script2.d: Revert 2010-11-03 change. --- ld/ldexp.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'ld/ldexp.h') diff --git a/ld/ldexp.h b/ld/ldexp.h index a15f64a79c..ac73bd1167 100644 --- a/ld/ldexp.h +++ b/ld/ldexp.h @@ -127,6 +127,7 @@ struct ldexp_control { /* Working results. */ etree_value_type result; bfd_vma dot; + bfd_boolean uses_defined; /* Current dot and section passed to ldexp folder. */ bfd_vma *dotp; @@ -173,6 +174,8 @@ etree_type *exp_relop (asection *, bfd_vma); void exp_fold_tree (etree_type *, asection *, bfd_vma *); +void exp_fold_tree_no_dot + (etree_type *); etree_type *exp_binop (int, etree_type *, etree_type *); etree_type *exp_trinop -- cgit v1.2.1