This is the mail archive of the
mailing list for the Cygwin project.
- From: Achim Gratz <Stromeko at nexgo dot de>
- To: cygwin-apps at cygwin dot com
- Date: Sun, 15 Feb 2015 17:22:16 +0100
- Subject: Re: perl-5.14.4
- Authentication-results: sourceware.org; auth=none
- References: <87iofh8l54 dot fsf at Rainer dot invalid> <87bnl6n8uw dot fsf at Rainer dot invalid> <87386gtaub dot fsf at Rainer dot invalid> <87fva8cl9v dot fsf at Rainer dot invalid> <87bnkwci40 dot fsf at Rainer dot invalid> <20150215103230 dot GN7225 at calimero dot vinschen dot de> <87bnkvxqi6 dot fsf at Rainer dot invalid> <20150215143117 dot GT7225 at calimero dot vinschen dot de>
Corinna Vinschen writes:
> Where? rebase.c calls ReBaseImage64, which is
> a) a Windows function in imagehlp.dll and
> b) the function name of a function in the imagebase library, implemented
> in rebaseimage.cc.
> We're going path b. The core of imagebase's implementation of
> ReBaseImage64 is the call to LinkedObjectFile::performRelocation (line
> 123 in imagehelper/rebaseimage.cc), which in turn calls
> Relocations::relocate in imagehelper/sections.cc. This function
> performs the actual relocation.
OK, I hadn't realized there were two implementations.
>> that doesn't seem to allow
>> individual sections to be skipped. The code you pointed at seems just
>> to be checking if any sections need additional fixups.
> Well, it's the code doing the actual relocation. The outer for-loop
> jumps from relocation block to relocation block. Line 391
> Section *cursec = sections->find(va);
> computes the actual section the relocation block is pointing to.
> Then it checks if it points to a valid section and if not it bails
> out. Otherwise it loops over the relocation entries in the block
> and performas the actual relocation.
> The idea is to add something along the lines of
> if (cursec && !strncmp (cursec->getName (), ".debug_", 7))
I'll try later. Let's see what happens.
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+
Factory and User Sound Singles for Waldorf rackAttack: