This is the mail archive of the mailing list for the GCC 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]

Re: [RFC/Patch] : Enable Dwarf2 unwind on cygwin and mingw32

Richard Henderson wrote:
> On Wed, Nov 24, 2004 at 11:30:59PM +1300, Danny Smith wrote:
>> It adds crtbegin.o and crtend.o as startfile/endfiles based on
>> crtstuff
>> code, but separated out for now to allow easier specialization for a
>> system that does not have .init/.fini sections.
> In theory, you shouldn't have to do this; these files should already
> work on systems without .init/.fini sections.  What, specifically,
> did you run into?

The main problem was that I kept getting lost amongst all the ifdefs.
The only way I could get it to work was to define HAS_INIT_SECTION
whiched seemed likely to get me into trouble elsewhere.
>> + /* cygwin has its own version of __do_globl_{c,d}tors in
>> cygwin1.dll. These +    could be changed to incorporate calls to
>> frame registry functions. +    For now, just add a ctor and dtor to
>> be called by the libary code. +    It does mean, however, that
>> linker scripts needs to be modified to ensure +    ctor in this
>> endfile is always called before ctors with non-default +    init
>> priority. */
> If you support init priorities, why not use them?  Set the
> registration functions to the maximum prioirity.  That plus link-line
> position is sufficient to ensure the proper invocation sequence.

void my_ctor (void) __attribute__ ((constructor,

gets me:

 error: can only use 'init_priority' attribute on file-scope definitions
of objects of class type

Are you suggesting that I write out the section directive in asm, rather
than use attributes?


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