diff options
-rw-r--r-- | ld/testsuite/ChangeLog | 3 | ||||
-rw-r--r-- | ld/testsuite/ld-cris/locref1.d | 23 | ||||
-rw-r--r-- | ld/testsuite/ld-cris/locref1.s | 3 | ||||
-rw-r--r-- | ld/testsuite/ld-cris/locref2.d | 23 | ||||
-rw-r--r-- | ld/testsuite/ld-cris/locref2.s | 5 |
5 files changed, 57 insertions, 0 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index e54d285..23e8b58 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,5 +1,8 @@ 2003-06-18 Hans-Peter Nilsson <hp@axis.com> + * ld-cris/locref1.d, ld-cris/locref1.s, ld-cris/locref2.d, + ld-cris/locref2.s: New tests. + * ld-elfcomm/elfcomm.exp (dump_common1): Use $READELF, not plain readelf as found using default path. diff --git a/ld/testsuite/ld-cris/locref1.d b/ld/testsuite/ld-cris/locref1.d new file mode 100644 index 0000000..aa8e4c5 --- /dev/null +++ b/ld/testsuite/ld-cris/locref1.d @@ -0,0 +1,23 @@ +#as: --no-underscore --pic +#source: expdyn1.s +#source: locref1.s +#ld: -m crislinux +#objdump: -dt + +# Referencing a "normal" (non-hidden) symbol with a local-only PIC +# relocation is ok when building an executable. + +.*: file format elf32-cris + +SYMBOL TABLE: +#... +0+80076 g F \.text 0+2 expfn +0+820a0 g O \.data 0+ expobj +#... +0+820a4 g O \.got 0+ _GLOBAL_OFFSET_TABLE_ +#... +Disassembly of section \.text: +#... +0+80078 <y>: + 80078: 6fae d2df ffff .* + 8007e: 6fbe fcff ffff .* diff --git a/ld/testsuite/ld-cris/locref1.s b/ld/testsuite/ld-cris/locref1.s new file mode 100644 index 0000000..7a29841 --- /dev/null +++ b/ld/testsuite/ld-cris/locref1.s @@ -0,0 +1,3 @@ +y: + move.d expfn:GOTOFF,$r10 + move.d expobj:GOTOFF,$r11 diff --git a/ld/testsuite/ld-cris/locref2.d b/ld/testsuite/ld-cris/locref2.d new file mode 100644 index 0000000..ca25dd8 --- /dev/null +++ b/ld/testsuite/ld-cris/locref2.d @@ -0,0 +1,23 @@ +#as: --no-underscore --pic +#source: gotrel1.s +#source: locref2.s +#ld: -m crislinux +#objdump: -dt + +# Referencing an undefined weak (non-hidden) symbol with a local-only +# PIC relocation is ok when building an executable. + +.*: file format elf32-cris + +SYMBOL TABLE: +#... +0+ w \*UND\* 0+ expfn +0+ w \*UND\* 0+ expobj +#... +0+820a0 g O \.got 0+ _GLOBAL_OFFSET_TABLE_ +#... +Disassembly of section \.text: +#... +0+8007c <y>: + 8007c: 6fae 60df f7ff .* + 80082: 6fbe 60df f7ff .* diff --git a/ld/testsuite/ld-cris/locref2.s b/ld/testsuite/ld-cris/locref2.s new file mode 100644 index 0000000..3b407a6 --- /dev/null +++ b/ld/testsuite/ld-cris/locref2.s @@ -0,0 +1,5 @@ + .weak expfn + .weak expobj +y: + move.d expfn:GOTOFF,$r10 + move.d expobj:GOTOFF,$r11 |