mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 670323 - Fixes for nanojit on ARMv4T. r=jbramley
--HG-- extra : convert_revision : 6943e40c4f0a2f9b3c0551306ce89aa535579178
This commit is contained in:
parent
8814b013c4
commit
7faca4feac
@ -129,10 +129,16 @@ Assembler::CountLeadingZeroes(uint32_t data)
|
||||
// On Android gcc compiler, the clz instruction is not supported with a
|
||||
// target smaller than armv7, despite it being legal for armv5+.
|
||||
" .arch armv7-a\n"
|
||||
// Force the object to be tagged as armv4t to avoid it bumping the final
|
||||
// binary target.
|
||||
" .object_arch armv4t\n"
|
||||
#elif (NJ_COMPILER_ARM_ARCH < 5)
|
||||
// Targetting armv5t allows a toolchain with armv4t target to still build
|
||||
// with clz, and clz to be used when appropriate at runtime.
|
||||
" .arch armv5t\n"
|
||||
// Force the object file to be tagged as armv4t to avoid it bumping the
|
||||
// final binary target.
|
||||
" .object_arch armv4t\n"
|
||||
#endif
|
||||
" clz %0, %1 \n"
|
||||
: "=r" (leading_zeroes)
|
||||
|
@ -96,7 +96,7 @@ namespace nanojit
|
||||
harden_nop_insertion = false;
|
||||
|
||||
#if defined(NANOJIT_ARM)
|
||||
NanoStaticAssert(NJ_COMPILER_ARM_ARCH >= 5 && NJ_COMPILER_ARM_ARCH <= 7);
|
||||
NanoStaticAssert(NJ_COMPILER_ARM_ARCH >= 4 && NJ_COMPILER_ARM_ARCH <= 7);
|
||||
arm_arch = NJ_COMPILER_ARM_ARCH;
|
||||
arm_vfp = (arm_arch >= 7);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user