diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 15dc6f4f37..1151b3f7b8 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2002-07-09 Richard Sandiford + + * ld-scripts/dynamic-sections*: New test. + 2002-07-09 Hans-Peter Nilsson * ld-cris/libdso-3.d, ld-cris/dso-3.s, ld-cris/noglob1.s, diff --git a/ld/testsuite/ld-scripts/dynamic-sections-1.s b/ld/testsuite/ld-scripts/dynamic-sections-1.s new file mode 100644 index 0000000000..9a72c96561 --- /dev/null +++ b/ld/testsuite/ld-scripts/dynamic-sections-1.s @@ -0,0 +1,2 @@ + .data + .4byte foo diff --git a/ld/testsuite/ld-scripts/dynamic-sections-2.s b/ld/testsuite/ld-scripts/dynamic-sections-2.s new file mode 100644 index 0000000000..57cb02dad7 --- /dev/null +++ b/ld/testsuite/ld-scripts/dynamic-sections-2.s @@ -0,0 +1,3 @@ + .data + .global foo +foo: .4byte 0 diff --git a/ld/testsuite/ld-scripts/dynamic-sections.d b/ld/testsuite/ld-scripts/dynamic-sections.d new file mode 100644 index 0000000000..279107d537 --- /dev/null +++ b/ld/testsuite/ld-scripts/dynamic-sections.d @@ -0,0 +1,6 @@ +# nm: -C +# ld: -T dynamic-sections.t +# name: dynamic sections +# source: dynamic-sections-1.s +# source: dynamic-sections-2.s +#pass diff --git a/ld/testsuite/ld-scripts/dynamic-sections.exp b/ld/testsuite/ld-scripts/dynamic-sections.exp new file mode 100644 index 0000000000..9aee0cdaca --- /dev/null +++ b/ld/testsuite/ld-scripts/dynamic-sections.exp @@ -0,0 +1,8 @@ +# Check for bug introduced on 2002-06-10. See dynamic-sections.t for +# more details + +if ![is_elf_format] { + return +} + +run_dump_test dynamic-sections diff --git a/ld/testsuite/ld-scripts/dynamic-sections.t b/ld/testsuite/ld-scripts/dynamic-sections.t new file mode 100644 index 0000000000..f1f24c830e --- /dev/null +++ b/ld/testsuite/ld-scripts/dynamic-sections.t @@ -0,0 +1,11 @@ +SECTIONS +{ + .data : { *(.data) } + .rodata : { *(.rodata) } + + /* The .rel* sections are typically placed here, because of the way + elf32.em handles orphaned sections. A bug introduced on 2002-06-10 + would cause . to be 0 at this point. */ + + _bar = ASSERT (. > 0, "Bad . value"); +}