[Bug 30134] Wine on ARM: .init/.text sections passed to assembler need directives to allow for mixed/pure arm32/thumb2 builds (.init section thumb2 libc ctors vs. Wine arm32 ctor)

wine-bugs at winehq.org wine-bugs at winehq.org
Thu Mar 29 15:00:01 CDT 2012


http://bugs.winehq.org/show_bug.cgi?id=30134

--- Comment #8 from André H. <nerv at dawncrow.de> 2012-03-29 15:00:01 CDT ---
the point is:
as long as we don't know how much native applications WOA(Windows on ARM) will
have that we could run, ARM is a good winelib target for all ARMs. And there
are also >=armv5 that don't support thumb, so i don't like b.w, blx and so on.

i played a bit with:
        case CPU_ARM:
            output( "\tldr r0,[pc,#0]\n" );
            output( "\tmov pc, r0\n" );
            output( "\t.long 1f\n" );
and forcing "as" to -mthumb
(that code can be compiled to arm and thumb)
without good results... maybe you can debug that further...

further we can't just do a "#ifdef __thumb2__" in winebuild's spec32.c, because
winebuild is also for crosscompiling and that would break it. And the toolchain
doesn't tell by it's name that it's targets thumb(2) so we can't introduce
CPU_THUMB...
Sadly we can't cleanly detect what crti.o is compiled for...

the blx in libwine maybe can be activated per "#ifdef __thumb2__", but first we
need to fix the winebuild problem in a clean way. I'm running out of ideas.
thoughts?

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.


More information about the wine-bugs mailing list