OSDN Git Service

ld/
authorhjl <hjl>
Tue, 8 Aug 2006 15:07:15 +0000 (15:07 +0000)
committerhjl <hjl>
Tue, 8 Aug 2006 15:07:15 +0000 (15:07 +0000)
2006-08-08  H.J. Lu  <hongjiu.lu@intel.com>

PR ld/3009
* ldlang.c (update_wild_statements): Update the whole wild
section list.

ld/testsuite/

2006-08-08  H.J. Lu  <hongjiu.lu@intel.com>

PR ld/3009
* ld-scripts/sort.t: New file.
* ld-scripts/sort_b_a-1.d: Likewise.
* ld-scripts/sort_b_a-1.s: Likewise.
* ld-scripts/sort_b_n-1.d: Likewise.
* ld-scripts/sort_b_n-1.s: Likewise.

ld/ChangeLog
ld/ldlang.c
ld/testsuite/ChangeLog
ld/testsuite/ld-scripts/sort.t [new file with mode: 0644]
ld/testsuite/ld-scripts/sort_b_a-1.d [new file with mode: 0644]
ld/testsuite/ld-scripts/sort_b_a-1.s [new file with mode: 0644]
ld/testsuite/ld-scripts/sort_b_n-1.d [new file with mode: 0644]
ld/testsuite/ld-scripts/sort_b_n-1.s [new file with mode: 0644]

index 6273fbf..39d7d1f 100644 (file)
@@ -1,3 +1,9 @@
+2006-08-08  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/3009
+       * ldlang.c (update_wild_statements): Update the whole wild
+       section list.
+
 2006-08-04  Nick Clifton  <nickc@redhat.com>
            Mike Frysinger  <michael.frysinger@analog.com>
 
index 73d4053..51dfe36 100644 (file)
@@ -3157,7 +3157,8 @@ update_wild_statements (lang_statement_union_type *s)
 
            case lang_wild_statement_enum:
              sec = s->wild_statement.section_list;
-             if (sec != NULL)
+             for (sec = s->wild_statement.section_list; sec != NULL;
+                  sec = sec->next)
                {
                  switch (sec->spec.sorted)
                    {
index 9267588..de2f8a0 100644 (file)
@@ -1,3 +1,12 @@
+2006-08-08  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/3009
+       * ld-scripts/sort.t: New file.
+       * ld-scripts/sort_b_a-1.d: Likewise.
+       * ld-scripts/sort_b_a-1.s: Likewise.
+       * ld-scripts/sort_b_n-1.d: Likewise.
+       * ld-scripts/sort_b_n-1.s: Likewise.
+
 2006-08-05  Pedro Alves  <pedro_alves@portugalmail.pt>
 
        * ld-pe/pe.exp: Enable tests on arm-wince-pe.
diff --git a/ld/testsuite/ld-scripts/sort.t b/ld/testsuite/ld-scripts/sort.t
new file mode 100644 (file)
index 0000000..c53481f
--- /dev/null
@@ -0,0 +1,5 @@
+SECTIONS
+{
+  .text : {*(.text .text.*)}
+  /DISCARD/ : { *(.*) }
+}
diff --git a/ld/testsuite/ld-scripts/sort_b_a-1.d b/ld/testsuite/ld-scripts/sort_b_a-1.d
new file mode 100644 (file)
index 0000000..eaa917d
--- /dev/null
@@ -0,0 +1,9 @@
+#source: sort_b_a-1.s
+#ld: -T sort.t --sort-section alignment
+#name: --sort-section alignment
+#nm: -n
+
+0[0-9a-f]* t text3
+0[0-9a-f]* t text1
+0[0-9a-f]* t text
+0[0-9a-f]* t text2
diff --git a/ld/testsuite/ld-scripts/sort_b_a-1.s b/ld/testsuite/ld-scripts/sort_b_a-1.s
new file mode 100644 (file)
index 0000000..87d3613
--- /dev/null
@@ -0,0 +1,16 @@
+       .section .text.2
+       .p2align 3
+text2:
+       .long 0
+       .section .text.3
+       .p2align 6
+text3:
+       .long 0
+       .section .text.1
+       .p2align 5
+text1:
+       .long 0
+       .text
+text:
+       .p2align 4
+       .long 0
diff --git a/ld/testsuite/ld-scripts/sort_b_n-1.d b/ld/testsuite/ld-scripts/sort_b_n-1.d
new file mode 100644 (file)
index 0000000..42bdcf9
--- /dev/null
@@ -0,0 +1,9 @@
+#source: sort_b_n-1.s
+#ld: -T sort.t --sort-section name
+#name: --sort-section name
+#nm: -n
+
+0[0-9a-f]* t text
+0[0-9a-f]* t text1
+0[0-9a-f]* t text2
+0[0-9a-f]* t text3
diff --git a/ld/testsuite/ld-scripts/sort_b_n-1.s b/ld/testsuite/ld-scripts/sort_b_n-1.s
new file mode 100644 (file)
index 0000000..5a49170
--- /dev/null
@@ -0,0 +1,12 @@
+       .section .text.2
+text2:
+       .long 0
+       .section .text.3
+text3:
+       .long 0
+       .section .text.1
+text1:
+       .long 0
+       .text
+text:
+       .long 0