aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-mips-elf/mips-elf.exp
diff options
context:
space:
mode:
authorMaciej W. Rozycki <macro@imgtec.com>2016-08-10 22:10:30 +0100
committerMaciej W. Rozycki <macro@imgtec.com>2016-08-10 22:24:43 +0100
commit0375b0a53725b5b0bddcf8d31b707909f91afcb0 (patch)
tree26fd195026d0d1c44125dd00ad0f6f5ca63ca22f /ld/testsuite/ld-mips-elf/mips-elf.exp
parentfe152e64f65de9cfb6f2059b76be98712baa7b56 (diff)
downloadgdb-0375b0a53725b5b0bddcf8d31b707909f91afcb0.zip
gdb-0375b0a53725b5b0bddcf8d31b707909f91afcb0.tar.gz
gdb-0375b0a53725b5b0bddcf8d31b707909f91afcb0.tar.bz2
MIPS/LD/testsuite: Verify microMIPS LA25 stub generation
Repeat `PIC and non-PIC test 1' checks for microMIPS LA25 stubs, covering code generation and stub symbol annotation. ld/ * testsuite/ld-mips-elf/pic-and-nonpic-1-micromips-rel.dd: New test. * testsuite/ld-mips-elf/pic-and-nonpic-1-micromips-rel.nd: New test. * testsuite/ld-mips-elf/pic-and-nonpic-1-micromips.dd: New test. * testsuite/ld-mips-elf/pic-and-nonpic-1-micromips.nd: New test. * testsuite/ld-mips-elf/pic-and-nonpic-1a-micromips.s: New test source. * testsuite/ld-mips-elf/pic-and-nonpic-1b-micromips.s: New test source. * testsuite/ld-mips-elf/mips-elf.exp: Run the new tests.
Diffstat (limited to 'ld/testsuite/ld-mips-elf/mips-elf.exp')
-rw-r--r--ld/testsuite/ld-mips-elf/mips-elf.exp38
1 files changed, 38 insertions, 0 deletions
diff --git a/ld/testsuite/ld-mips-elf/mips-elf.exp b/ld/testsuite/ld-mips-elf/mips-elf.exp
index 731f419..9696156 100644
--- a/ld/testsuite/ld-mips-elf/mips-elf.exp
+++ b/ld/testsuite/ld-mips-elf/mips-elf.exp
@@ -357,6 +357,8 @@ if { $linux_gnu } {
#
# The third test checks that we do the same when linking the
# result of the first link (with no other source files).
+ #
+ # We then repeat the same three tests for microMIPS stubs.
run_ld_link_tests {
{"PIC and non-PIC test 1 (relocatable)" "-r -melf32btsmip" ""
"-32 -EB -mips2" {pic-and-nonpic-1a.s pic-and-nonpic-1b.s}
@@ -375,6 +377,42 @@ if { $linux_gnu } {
{{objdump -dr pic-and-nonpic-1.dd}
{readelf --symbols pic-and-nonpic-1.nd}}
"pic-and-nonpic-1-static2.o"}
+ {"PIC and non-PIC test 1, microMIPS (relocatable)"
+ "-r -melf32btsmip" ""
+ "-32 -EB -mips2"
+ {pic-and-nonpic-1a-micromips.s pic-and-nonpic-1b-micromips.s}
+ {{objdump -dr pic-and-nonpic-1-micromips-rel.dd}
+ {readelf --symbols pic-and-nonpic-1-micromips-rel.nd}}
+ "pic-and-nonpic-1-micromips-rel.o"}
+ {"PIC and non-PIC test 1, microMIPS (static 1)"
+ "-melf32btsmip -Tpic-and-nonpic-1.ld" ""
+ "-32 -EB -mips2"
+ {pic-and-nonpic-1a-micromips.s pic-and-nonpic-1b-micromips.s}
+ {{objdump -dr pic-and-nonpic-1-micromips.dd}
+ {readelf --symbols pic-and-nonpic-1-micromips.nd}}
+ "pic-and-nonpic-1-micromips-static1.o"}
+ }
+ # The final executable produced with the following test is supposed
+ # to be the same as one produced with the preceding test, however
+ # as noted in PR ld/20453 it is not. Consequently output from
+ # `objdump -dr' is not the same either. Expect:
+ #
+ # regexp_diff match failure
+ # regexp "^ 4103c: f001 0415 jalx 41054 <f3>$"
+ # line " 4103c: f001 0400 jalx 41000 <.pic.f3>"
+ #
+ # from the test below due to this problem.
+ setup_kfail "mips*-*-*" "ld/20453"
+ # The final check below should be folded into the `run_ld_link_tests'
+ # call above once `setup_kfail' has been removed.
+ run_ld_link_tests {
+ {"PIC and non-PIC test 1, microMIPS (static 2)"
+ "-melf32btsmip -Tpic-and-nonpic-1.ld \
+ tmpdir/pic-and-nonpic-1-micromips-rel.o" ""
+ "" {}
+ {{objdump -dr pic-and-nonpic-1-micromips.dd}
+ {readelf --symbols pic-and-nonpic-1-micromips.nd}}
+ "pic-and-nonpic-1-micromips-static2.o"}
}
run_dump_test "pic-and-nonpic-2"
run_ld_link_tests {