From: Ken Raeburn Date: Mon, 25 Oct 1993 16:46:55 +0000 (+0000) Subject: new test case for relocations with addends X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b59797d28a241ad66a80519300d318df0556cabd;p=binutils-gdb.git new test case for relocations with addends --- diff --git a/gas/testsuite/gas/sparc-solaris/.Sanitize b/gas/testsuite/gas/sparc-solaris/.Sanitize index a16036053e4..3233d0b8ba3 100644 --- a/gas/testsuite/gas/sparc-solaris/.Sanitize +++ b/gas/testsuite/gas/sparc-solaris/.Sanitize @@ -26,6 +26,8 @@ Do-first: Things-to-keep: +addend.exp +addend.s gas.exp sol-cc.s sol-gcc.s diff --git a/gas/testsuite/gas/sparc-solaris/addend.exp b/gas/testsuite/gas/sparc-solaris/addend.exp new file mode 100644 index 00000000000..a0ac8753c45 --- /dev/null +++ b/gas/testsuite/gas/sparc-solaris/addend.exp @@ -0,0 +1,36 @@ +# +# SunOS4 on SPARC tests +# + +if [istarget sparc-*-solaris2*] then { + set x1 0 + set x2 0 + set x3 0 + set x4 0 + set x5 0 + set x6 0 + set testname "addends (part 2)" + if [gas_test_old "addend.s" "" "addends (part 1)"] then { + objdump_start_no_subdir "a.out" "-r" + while 1 { + # These are what we get using the Solaris assembler. + expect { + -re "08 R_SPARC_WDISP22 +foo1\+0x0+04\r\n" { incr x1 } + -re "0c R_SPARC_WDISP22 +foo1\+0x0+04\r\n" { incr x2 } + -re "10 R_SPARC_WDISP22 +foo1\r\n" { incr x3 } + -re "14 R_SPARC_WDISP22 +foo1\r\n" { incr x4 } + -re "1c R_SPARC_32 +foo1\r\n" { incr x5 } + -re "20 R_SPARC_32 +foo1\+0x0*04\r\n" { incr x6 } + -re "\[^\n\]*\n" { } + timeout { error "timeout\n"; break } + eof { break } + } + } + objdump_finish + if [all_ones $x1 $x2 $x3 $x4 $x5 $x6] then { + pass $testname + } else { + fail $testname + } + } +} diff --git a/gas/testsuite/gas/sparc-solaris/addend.s b/gas/testsuite/gas/sparc-solaris/addend.s new file mode 100644 index 00000000000..18eb108a9b3 --- /dev/null +++ b/gas/testsuite/gas/sparc-solaris/addend.s @@ -0,0 +1,11 @@ + .global foo +foo: + nop + nop + ba foo1+0x4 + ba foo1+0x4 + ba foo1 + ba foo1 + nop + .word foo1 + .word foo1+4