This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Add .secrel32 gas pseudo-op and reloc for ix86 PE


This patch adds a gas pseudo-op ".secrel32 symbol" to generate a 32-bit
section relative address/relocation on ix86 PE targets (Cygwin/Mingw).  It
is a necessary prerequisite for the forth coming DWARF 2/3 support.

DJ did this for us under a Red Hat contract.  Task 2 of the
contract stipulates:

Red Hat will use commercially reasonable efforts to get all Red Hat and
FlightSafety International code changes back into the FSF source
repositories.

My FSF binutils copyright assignment for all changes past and future
should be current, along with the associated employer disclaimer.

I hope that is enough to get past the assignment issues ;-).

A couple of comments about the patch.

1.) There are several new test case files.  Since I don't have write
access to the binutils CVS repository, I can't "cvs add" them. Thus, they
are not included in the "cvs diff" generated patch file.  As such, I have
attached them separately.  However, there was one name conflict.  I have
attached what should be gas/testsuite/gas/i386/secrel.d as gas_secrel.d to
avoid it.

2.) Rather than create yet another ld testsuite directory named for a
specific PE test, I chose to create a more generically named directory
(ld-pe).  As a possible future clean-up, the tests in ld-auto-import and
ld-fastcall could be consolidated here.

3.) DJ only made some of this code conditional on TE_PE/COFF_WITH_PE.
I consolidated it and added several more conditionals to assure no
other ix86 targets were affected.  Maybe DJ had a good reason for not
doing that.  I haven't asked him about it, yet ;->.

Thanks in advance for the review :).

-- 
Brian Ford
Senior Realtime Software Engineer
VITAL - Visual Simulation Systems
FlightSafety International
Phone: 314-551-8460
Fax:   314-551-8444

Attachment: ChangeLog
Description: Text document

Attachment: ix86_pe_secrel32.patch
Description: Text document

Attachment: secrel.s
Description: Text document

Attachment: gas_secrel.d
Description: Text document

Attachment: secrel1.s
Description: Text document

Attachment: secrel2.s
Description: Text document

Attachment: secrel.d
Description: Text document

Attachment: pe.exp
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]