From 6482c264f4a6d239f2abd356e09ae465e74efeb1 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Tue, 20 Apr 2004 12:17:16 +0000 Subject: Add support for a .secrel32 x86 reloc to allow DWARF" debug information to used with COFF based x86 ports. --- gas/testsuite/ChangeLog | 7 ++++ gas/testsuite/gas/i386/i386.exp | 7 ++++ gas/testsuite/gas/i386/secrel.d | 43 +++++++++++++++++++++++ gas/testsuite/gas/i386/secrel.s | 77 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 134 insertions(+) create mode 100644 gas/testsuite/gas/i386/secrel.d create mode 100644 gas/testsuite/gas/i386/secrel.s (limited to 'gas/testsuite') diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index c99e91f..6d6dfdf 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2004-04-20 Brian Ford + DJ Delorie + + * gas/i386/secrel.s: New test for .secrel32. + * gas/i386/secrel.d: Likewise. + * gas/i386/i386.exp: Call it for PE targets. + 2004-04-19 Jakub Jelinek * gas/cfi/cfi-sparc64-1.d: Update. diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp index 3ccb7e2..946cf9e 100644 --- a/gas/testsuite/gas/i386/i386.exp +++ b/gas/testsuite/gas/i386/i386.exp @@ -88,6 +88,13 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_32_check]] run_dump_test "tlsnopic" } + # This is a PE specific test. + if { [istarget "*-*-cygwin*"] || [istarget "*-*-pe"] + || [istarget "*-*-mingw*"] + } then { + run_dump_test "secrel" + } + set ASFLAGS "$old_ASFLAGS" } diff --git a/gas/testsuite/gas/i386/secrel.d b/gas/testsuite/gas/i386/secrel.d new file mode 100644 index 0000000..7df55f7 --- /dev/null +++ b/gas/testsuite/gas/i386/secrel.d @@ -0,0 +1,43 @@ +#objdump: -rs +#name: i386 secrel reloc + +.*: +file format pe-i386 + +RELOCATION RECORDS FOR \[\.data\]: +OFFSET TYPE VALUE +00000024 secrel32 \.text +00000029 secrel32 \.text +0000002e secrel32 \.text +00000033 secrel32 \.text +00000044 secrel32 \.data +00000049 secrel32 \.data +0000004e secrel32 \.data +00000053 secrel32 \.data +00000064 secrel32 \.rdata +00000069 secrel32 \.rdata +0000006e secrel32 \.rdata +00000073 secrel32 \.rdata +00000084 secrel32 ext24 +00000089 secrel32 ext2d +0000008e secrel32 ext36 +00000093 secrel32 ext3f + + +Contents of section \.text: + 0000 3e3e3e3e 3c3c3c3c 3e3e3e3e 3e3c3c3c >>>><<<<>>>>><<< + 0010 3e3e3e3e 3e3e3c3c 3e3e3e3e 3e3e3e3c >>>>>><<>>>>>>>< +Contents of section \.data: + 0000 3e3e3e3e 3c3c3c3c 3e3e3e3e 3e3c3c3c >>>><<<<>>>>><<< + 0010 3e3e3e3e 3e3e3c3c 3e3e3e3e 3e3e3e3c >>>>>><<>>>>>>>< + 0020 3e3e3e3e 04000000 110d0000 00111600 >>>>............ + 0030 0000111f 00000011 3c3c3c3c 3c3c3c3c ........<<<<<<<< + 0040 3e3e3e3e 04000000 110d0000 00111600 >>>>............ + 0050 0000111f 00000011 3c3c3c3c 3c3c3c3c ........<<<<<<<< + 0060 3e3e3e3e 04000000 110d0000 00111600 >>>>............ + 0070 0000111f 00000011 3c3c3c3c 3c3c3c3c ........<<<<<<<< + 0080 3e3e3e3e 00000000 11000000 00110000 >>>>............ + 0090 00001100 00000011 3c3c3c3c 3c3c3c3c ........<<<<<<<< +Contents of section \.rdata: + 0000 3e3e3e3e 3c3c3c3c 3e3e3e3e 3e3c3c3c >>>><<<<>>>>><<< + 0010 3e3e3e3e 3e3e3c3c 3e3e3e3e 3e3e3e3c >>>>>><<>>>>>>>< + 0020 3e3e3e3e >>>> diff --git a/gas/testsuite/gas/i386/secrel.s b/gas/testsuite/gas/i386/secrel.s new file mode 100644 index 0000000..eaf59cd --- /dev/null +++ b/gas/testsuite/gas/i386/secrel.s @@ -0,0 +1,77 @@ +.text + + .ascii ">>>>" +pre04: .ascii "<<<<" + .ascii ">>>>>" +pre0d: .ascii "<<<" + .ascii ">>>>>>" +pre16: .ascii "<<" + .ascii ">>>>>>>" +pre1f: .ascii "<" + +.data + + .ascii ">>>>" +sam04: .ascii "<<<<" + .ascii ">>>>>" +sam0d: .ascii "<<<" + .ascii ">>>>>>" +sam16: .ascii "<<" + .ascii ">>>>>>>" +sam1f: .ascii "<" + + .ascii ">>>>" + .secrel32 pre04 + .byte 0x11 + .secrel32 pre0d + .byte 0x11 + .secrel32 pre16 + .byte 0x11 + .secrel32 pre1f + .byte 0x11 + .ascii "<<<<<<<<" + + .ascii ">>>>" + .secrel32 sam04 + .byte 0x11 + .secrel32 sam0d + .byte 0x11 + .secrel32 sam16 + .byte 0x11 + .secrel32 sam1f + .byte 0x11 + .ascii "<<<<<<<<" + + .ascii ">>>>" + .secrel32 nex04 + .byte 0x11 + .secrel32 nex0d + .byte 0x11 + .secrel32 nex16 + .byte 0x11 + .secrel32 nex1f + .byte 0x11 + .ascii "<<<<<<<<" + + .ascii ">>>>" + .secrel32 ext24 + .byte 0x11 + .secrel32 ext2d + .byte 0x11 + .secrel32 ext36 + .byte 0x11 + .secrel32 ext3f + .byte 0x11 + .ascii "<<<<<<<<" + +.section .rdata + + .ascii ">>>>" +nex04: .ascii "<<<<" + .ascii ">>>>>" +nex0d: .ascii "<<<" + .ascii ">>>>>>" +nex16: .ascii "<<" + .ascii ">>>>>>>" +nex1f: .ascii "<" + .ascii ">>>>" -- cgit v1.1