diff options
Diffstat (limited to 'Source/JavaScriptCore/assembler')
-rw-r--r-- | Source/JavaScriptCore/assembler/MacroAssemblerARM.cpp | 14 | ||||
-rw-r--r-- | Source/JavaScriptCore/assembler/SH4Assembler.h | 14 |
2 files changed, 17 insertions, 11 deletions
diff --git a/Source/JavaScriptCore/assembler/MacroAssemblerARM.cpp b/Source/JavaScriptCore/assembler/MacroAssemblerARM.cpp index 98dc3e987..a523939b7 100644 --- a/Source/JavaScriptCore/assembler/MacroAssemblerARM.cpp +++ b/Source/JavaScriptCore/assembler/MacroAssemblerARM.cpp @@ -36,7 +36,19 @@ #include <fcntl.h> #include <unistd.h> #include <elf.h> -#include <asm/hwcap.h> +#if !OS(ANDROID) && !PLATFORM(QT) +# include <asm/hwcap.h> +# else +# include <asm/procinfo.h> +typedef struct +{ + uint32_t a_type; + union + { + uint32_t a_val; + } a_un; +} Elf32_auxv_t; +# endif #endif namespace JSC { diff --git a/Source/JavaScriptCore/assembler/SH4Assembler.h b/Source/JavaScriptCore/assembler/SH4Assembler.h index fded7df89..55f974a29 100644 --- a/Source/JavaScriptCore/assembler/SH4Assembler.h +++ b/Source/JavaScriptCore/assembler/SH4Assembler.h @@ -1545,17 +1545,11 @@ public: insn[0] = getOpcodeGroup3(MOVL_READ_OFFPC_OPCODE, SH4Registers::r13, insn[0] & 0x00ff); insn[1] = (insn[1] & 0xf00f) | (rd << 8) | (SH4Registers::r13 << 4); cacheFlush(insn, 2 * sizeof(SH4Word)); - changePCrelativeAddress(insn[0] & 0x00ff, insn, imm); - return; - } - - if ((insn[0] & 0x00ff) == 1) + } else { insn[1] = getOpcodeGroup6(BRA_OPCODE, 3); - else - insn[1] = NOP_OPCODE; - - insn[2] = NOP_OPCODE; - cacheFlush(&insn[1], 2 * sizeof(SH4Word)); + insn[2] = NOP_OPCODE; + cacheFlush(&insn[1], 2 * sizeof(SH4Word)); + } changePCrelativeAddress(insn[0] & 0x00ff, insn, imm); } |