* [Qemu-devel] [PATCH 1/4] [arm] trivial whitespace/indentation fixes
@ 2011-04-13 16:38 Lluís
2011-04-13 16:38 ` [Qemu-devel] [PATCH 2/4] [arm] move helpers.h to helper.h Lluís
` (3 more replies)
0 siblings, 4 replies; 9+ messages in thread
From: Lluís @ 2011-04-13 16:38 UTC (permalink / raw)
To: qemu-devel; +Cc: aurelien
Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
---
target-arm/helper.c | 246 ++++++++++++++++++++++----------------------
target-arm/iwmmxt_helper.c | 28 +++--
target-arm/translate.c | 26 ++---
3 files changed, 150 insertions(+), 150 deletions(-)
diff --git a/target-arm/helper.c b/target-arm/helper.c
index 9172fc7..d2e0bf4 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -959,7 +959,7 @@ static uint32_t get_level1_table_address(CPUState *env, uint32_t address)
}
static int get_phys_addr_v5(CPUState *env, uint32_t address, int access_type,
- int is_user, uint32_t *phys_ptr, int *prot,
+ int is_user, uint32_t *phys_ptr, int *prot,
target_ulong *page_size)
{
int code;
@@ -996,13 +996,13 @@ static int get_phys_addr_v5(CPUState *env, uint32_t address, int access_type,
*page_size = 1024 * 1024;
} else {
/* Lookup l2 entry. */
- if (type == 1) {
- /* Coarse pagetable. */
- table = (desc & 0xfffffc00) | ((address >> 10) & 0x3fc);
- } else {
- /* Fine pagetable. */
- table = (desc & 0xfffff000) | ((address >> 8) & 0xffc);
- }
+ if (type == 1) {
+ /* Coarse pagetable. */
+ table = (desc & 0xfffffc00) | ((address >> 10) & 0x3fc);
+ } else {
+ /* Fine pagetable. */
+ table = (desc & 0xfffff000) | ((address >> 8) & 0xffc);
+ }
desc = ldl_phys(table);
switch (desc & 3) {
case 0: /* Page translation fault. */
@@ -1019,17 +1019,17 @@ static int get_phys_addr_v5(CPUState *env, uint32_t address, int access_type,
*page_size = 0x1000;
break;
case 3: /* 1k page. */
- if (type == 1) {
- if (arm_feature(env, ARM_FEATURE_XSCALE)) {
- phys_addr = (desc & 0xfffff000) | (address & 0xfff);
- } else {
- /* Page translation fault. */
- code = 7;
- goto do_fault;
- }
- } else {
- phys_addr = (desc & 0xfffffc00) | (address & 0x3ff);
- }
+ if (type == 1) {
+ if (arm_feature(env, ARM_FEATURE_XSCALE)) {
+ phys_addr = (desc & 0xfffff000) | (address & 0xfff);
+ } else {
+ /* Page translation fault. */
+ code = 7;
+ goto do_fault;
+ }
+ } else {
+ phys_addr = (desc & 0xfffffc00) | (address & 0x3ff);
+ }
ap = (desc >> 4) & 3;
*page_size = 0x400;
break;
@@ -1052,7 +1052,7 @@ do_fault:
}
static int get_phys_addr_v6(CPUState *env, uint32_t address, int access_type,
- int is_user, uint32_t *phys_ptr, int *prot,
+ int is_user, uint32_t *phys_ptr, int *prot,
target_ulong *page_size)
{
int code;
@@ -1155,7 +1155,7 @@ do_fault:
}
static int get_phys_addr_mpu(CPUState *env, uint32_t address, int access_type,
- int is_user, uint32_t *phys_ptr, int *prot)
+ int is_user, uint32_t *phys_ptr, int *prot)
{
int n;
uint32_t mask;
@@ -1163,52 +1163,52 @@ static int get_phys_addr_mpu(CPUState *env, uint32_t address, int access_type,
*phys_ptr = address;
for (n = 7; n >= 0; n--) {
- base = env->cp15.c6_region[n];
- if ((base & 1) == 0)
- continue;
- mask = 1 << ((base >> 1) & 0x1f);
- /* Keep this shift separate from the above to avoid an
- (undefined) << 32. */
- mask = (mask << 1) - 1;
- if (((base ^ address) & ~mask) == 0)
- break;
+ base = env->cp15.c6_region[n];
+ if ((base & 1) == 0)
+ continue;
+ mask = 1 << ((base >> 1) & 0x1f);
+ /* Keep this shift separate from the above to avoid an
+ (undefined) << 32. */
+ mask = (mask << 1) - 1;
+ if (((base ^ address) & ~mask) == 0)
+ break;
}
if (n < 0)
- return 2;
+ return 2;
if (access_type == 2) {
- mask = env->cp15.c5_insn;
+ mask = env->cp15.c5_insn;
} else {
- mask = env->cp15.c5_data;
+ mask = env->cp15.c5_data;
}
mask = (mask >> (n * 4)) & 0xf;
switch (mask) {
case 0:
- return 1;
+ return 1;
case 1:
- if (is_user)
- return 1;
- *prot = PAGE_READ | PAGE_WRITE;
- break;
+ if (is_user)
+ return 1;
+ *prot = PAGE_READ | PAGE_WRITE;
+ break;
case 2:
- *prot = PAGE_READ;
- if (!is_user)
- *prot |= PAGE_WRITE;
- break;
+ *prot = PAGE_READ;
+ if (!is_user)
+ *prot |= PAGE_WRITE;
+ break;
case 3:
- *prot = PAGE_READ | PAGE_WRITE;
- break;
+ *prot = PAGE_READ | PAGE_WRITE;
+ break;
case 5:
- if (is_user)
- return 1;
- *prot = PAGE_READ;
- break;
+ if (is_user)
+ return 1;
+ *prot = PAGE_READ;
+ break;
case 6:
- *prot = PAGE_READ;
- break;
+ *prot = PAGE_READ;
+ break;
default:
- /* Bad permission. */
- return 1;
+ /* Bad permission. */
+ return 1;
}
*prot |= PAGE_EXEC;
return 0;
@@ -1231,8 +1231,8 @@ static inline int get_phys_addr(CPUState *env, uint32_t address,
return 0;
} else if (arm_feature(env, ARM_FEATURE_MPU)) {
*page_size = TARGET_PAGE_SIZE;
- return get_phys_addr_mpu(env, address, access_type, is_user, phys_ptr,
- prot);
+ return get_phys_addr_mpu(env, address, access_type, is_user, phys_ptr,
+ prot);
} else if (env->cp15.c1_sys & (1 << 23)) {
return get_phys_addr_v6(env, address, access_type, is_user, phys_ptr,
prot, page_size);
@@ -1411,22 +1411,22 @@ void HELPER(set_cp15)(CPUState *env, uint32_t insn, uint32_t val)
goto bad_reg;
}
} else {
- switch (op2) {
- case 0:
- env->cp15.c2_base0 = val;
- break;
- case 1:
- env->cp15.c2_base1 = val;
- break;
- case 2:
+ switch (op2) {
+ case 0:
+ env->cp15.c2_base0 = val;
+ break;
+ case 1:
+ env->cp15.c2_base1 = val;
+ break;
+ case 2:
val &= 7;
env->cp15.c2_control = val;
- env->cp15.c2_mask = ~(((uint32_t)0xffffffffu) >> val);
+ env->cp15.c2_mask = ~(((uint32_t)0xffffffffu) >> val);
env->cp15.c2_base_mask = ~((uint32_t)0x3fffu >> val);
- break;
- default:
- goto bad_reg;
- }
+ break;
+ default:
+ goto bad_reg;
+ }
}
break;
case 3: /* MMU Domain access control / MPU write buffer control. */
@@ -1555,26 +1555,26 @@ void HELPER(set_cp15)(CPUState *env, uint32_t insn, uint32_t val)
break;
switch (crm) {
case 0: /* Cache lockdown. */
- switch (op1) {
- case 0: /* L1 cache. */
- switch (op2) {
- case 0:
- env->cp15.c9_data = val;
- break;
- case 1:
- env->cp15.c9_insn = val;
- break;
- default:
- goto bad_reg;
- }
- break;
- case 1: /* L2 cache. */
- /* Ignore writes to L2 lockdown/auxiliary registers. */
- break;
- default:
- goto bad_reg;
- }
- break;
+ switch (op1) {
+ case 0: /* L1 cache. */
+ switch (op2) {
+ case 0:
+ env->cp15.c9_data = val;
+ break;
+ case 1:
+ env->cp15.c9_insn = val;
+ break;
+ default:
+ goto bad_reg;
+ }
+ break;
+ case 1: /* L2 cache. */
+ /* Ignore writes to L2 lockdown/auxiliary registers. */
+ break;
+ default:
+ goto bad_reg;
+ }
+ break;
case 1: /* TCM memory region registers. */
/* Not implemented. */
goto bad_reg;
@@ -1675,7 +1675,7 @@ uint32_t HELPER(get_cp15)(CPUState *env, uint32_t insn)
case 0: /* Device ID. */
return env->cp15.c0_cpuid;
case 1: /* Cache Type. */
- return env->cp15.c0_cachetype;
+ return env->cp15.c0_cachetype;
case 2: /* TCM status. */
return 0;
case 3: /* TLB type register. */
@@ -1790,17 +1790,17 @@ uint32_t HELPER(get_cp15)(CPUState *env, uint32_t insn)
goto bad_reg;
}
} else {
- switch (op2) {
- case 0:
- return env->cp15.c2_base0;
- case 1:
- return env->cp15.c2_base1;
- case 2:
+ switch (op2) {
+ case 0:
+ return env->cp15.c2_base0;
+ case 1:
+ return env->cp15.c2_base1;
+ case 2:
return env->cp15.c2_control;
- default:
- goto bad_reg;
- }
- }
+ default:
+ goto bad_reg;
+ }
+ }
case 3: /* MMU Domain access control / MPU write buffer control. */
return env->cp15.c3;
case 4: /* Reserved. */
@@ -1836,29 +1836,29 @@ uint32_t HELPER(get_cp15)(CPUState *env, uint32_t insn)
} else {
if (arm_feature(env, ARM_FEATURE_OMAPCP))
op2 = 0;
- switch (op2) {
- case 0:
- return env->cp15.c6_data;
- case 1:
- if (arm_feature(env, ARM_FEATURE_V6)) {
- /* Watchpoint Fault Adrress. */
- return 0; /* Not implemented. */
- } else {
- /* Instruction Fault Adrress. */
- /* Arm9 doesn't have an IFAR, but implementing it anyway
- shouldn't do any harm. */
- return env->cp15.c6_insn;
- }
- case 2:
- if (arm_feature(env, ARM_FEATURE_V6)) {
- /* Instruction Fault Adrress. */
- return env->cp15.c6_insn;
- } else {
- goto bad_reg;
- }
- default:
- goto bad_reg;
- }
+ switch (op2) {
+ case 0:
+ return env->cp15.c6_data;
+ case 1:
+ if (arm_feature(env, ARM_FEATURE_V6)) {
+ /* Watchpoint Fault Adrress. */
+ return 0; /* Not implemented. */
+ } else {
+ /* Instruction Fault Adrress. */
+ /* Arm9 doesn't have an IFAR, but implementing it anyway
+ shouldn't do any harm. */
+ return env->cp15.c6_insn;
+ }
+ case 2:
+ if (arm_feature(env, ARM_FEATURE_V6)) {
+ /* Instruction Fault Adrress. */
+ return env->cp15.c6_insn;
+ } else {
+ goto bad_reg;
+ }
+ default:
+ goto bad_reg;
+ }
}
case 7: /* Cache control. */
if (crm == 4 && op1 == 0 && op2 == 0) {
@@ -1872,8 +1872,8 @@ uint32_t HELPER(get_cp15)(CPUState *env, uint32_t insn)
case 9: /* Cache lockdown. */
switch (op1) {
case 0: /* L1 cache. */
- if (arm_feature(env, ARM_FEATURE_OMAPCP))
- return 0;
+ if (arm_feature(env, ARM_FEATURE_OMAPCP))
+ return 0;
switch (op2) {
case 0:
return env->cp15.c9_data;
diff --git a/target-arm/iwmmxt_helper.c b/target-arm/iwmmxt_helper.c
index 3941f1f..b13ffc7 100644
--- a/target-arm/iwmmxt_helper.c
+++ b/target-arm/iwmmxt_helper.c
@@ -164,13 +164,13 @@ uint64_t HELPER(iwmmxt_macuw)(uint64_t a, uint64_t b)
#define IWMMXT_OP_UNPACK(S, SH0, SH1, SH2, SH3) \
uint64_t HELPER(glue(iwmmxt_unpack, glue(S, b)))(uint64_t a, uint64_t b) \
{ \
- a = \
+ a = \
(((a >> SH0) & 0xff) << 0) | (((b >> SH0) & 0xff) << 8) | \
(((a >> SH1) & 0xff) << 16) | (((b >> SH1) & 0xff) << 24) | \
(((a >> SH2) & 0xff) << 32) | (((b >> SH2) & 0xff) << 40) | \
(((a >> SH3) & 0xff) << 48) | (((b >> SH3) & 0xff) << 56); \
env->iwmmxt.cregs[ARM_IWMMXT_wCASF] = \
- NZBIT8(a >> 0, 0) | NZBIT8(a >> 8, 1) | \
+ NZBIT8(a >> 0, 0) | NZBIT8(a >> 8, 1) | \
NZBIT8(a >> 16, 2) | NZBIT8(a >> 24, 3) | \
NZBIT8(a >> 32, 4) | NZBIT8(a >> 40, 5) | \
NZBIT8(a >> 48, 6) | NZBIT8(a >> 56, 7); \
@@ -178,10 +178,10 @@ uint64_t HELPER(glue(iwmmxt_unpack, glue(S, b)))(uint64_t a, uint64_t b) \
} \
uint64_t HELPER(glue(iwmmxt_unpack, glue(S, w)))(uint64_t a, uint64_t b) \
{ \
- a = \
+ a = \
(((a >> SH0) & 0xffff) << 0) | \
- (((b >> SH0) & 0xffff) << 16) | \
- (((a >> SH2) & 0xffff) << 32) | \
+ (((b >> SH0) & 0xffff) << 16) | \
+ (((a >> SH2) & 0xffff) << 32) | \
(((b >> SH2) & 0xffff) << 48); \
env->iwmmxt.cregs[ARM_IWMMXT_wCASF] = \
NZBIT8(a >> 0, 0) | NZBIT8(a >> 16, 1) | \
@@ -190,7 +190,7 @@ uint64_t HELPER(glue(iwmmxt_unpack, glue(S, w)))(uint64_t a, uint64_t b) \
} \
uint64_t HELPER(glue(iwmmxt_unpack, glue(S, l)))(uint64_t a, uint64_t b) \
{ \
- a = \
+ a = \
(((a >> SH0) & 0xffffffff) << 0) | \
(((b >> SH0) & 0xffffffff) << 32); \
env->iwmmxt.cregs[ARM_IWMMXT_wCASF] = \
@@ -199,7 +199,7 @@ uint64_t HELPER(glue(iwmmxt_unpack, glue(S, l)))(uint64_t a, uint64_t b) \
} \
uint64_t HELPER(glue(iwmmxt_unpack, glue(S, ub)))(uint64_t x) \
{ \
- x = \
+ x = \
(((x >> SH0) & 0xff) << 0) | \
(((x >> SH1) & 0xff) << 16) | \
(((x >> SH2) & 0xff) << 32) | \
@@ -211,7 +211,7 @@ uint64_t HELPER(glue(iwmmxt_unpack, glue(S, ub)))(uint64_t x) \
} \
uint64_t HELPER(glue(iwmmxt_unpack, glue(S, uw)))(uint64_t x) \
{ \
- x = \
+ x = \
(((x >> SH0) & 0xffff) << 0) | \
(((x >> SH2) & 0xffff) << 32); \
env->iwmmxt.cregs[ARM_IWMMXT_wCASF] = \
@@ -226,11 +226,11 @@ uint64_t HELPER(glue(iwmmxt_unpack, glue(S, ul)))(uint64_t x) \
} \
uint64_t HELPER(glue(iwmmxt_unpack, glue(S, sb)))(uint64_t x) \
{ \
- x = \
- ((uint64_t) EXTEND8H((x >> SH0) & 0xff) << 0) | \
+ x = \
+ ((uint64_t) EXTEND8H((x >> SH0) & 0xff) << 0) | \
((uint64_t) EXTEND8H((x >> SH1) & 0xff) << 16) | \
((uint64_t) EXTEND8H((x >> SH2) & 0xff) << 32) | \
- ((uint64_t) EXTEND8H((x >> SH3) & 0xff) << 48); \
+ ((uint64_t) EXTEND8H((x >> SH3) & 0xff) << 48); \
env->iwmmxt.cregs[ARM_IWMMXT_wCASF] = \
NZBIT16(x >> 0, 0) | NZBIT16(x >> 16, 1) | \
NZBIT16(x >> 32, 2) | NZBIT16(x >> 48, 3); \
@@ -238,7 +238,7 @@ uint64_t HELPER(glue(iwmmxt_unpack, glue(S, sb)))(uint64_t x) \
} \
uint64_t HELPER(glue(iwmmxt_unpack, glue(S, sw)))(uint64_t x) \
{ \
- x = \
+ x = \
((uint64_t) EXTEND16((x >> SH0) & 0xffff) << 0) | \
((uint64_t) EXTEND16((x >> SH2) & 0xffff) << 32); \
env->iwmmxt.cregs[ARM_IWMMXT_wCASF] = \
@@ -257,13 +257,13 @@ IWMMXT_OP_UNPACK(h, 32, 40, 48, 56)
#define IWMMXT_OP_CMP(SUFF, Tb, Tw, Tl, O) \
uint64_t HELPER(glue(iwmmxt_, glue(SUFF, b)))(uint64_t a, uint64_t b) \
{ \
- a = \
+ a = \
CMP(0, Tb, O, 0xff) | CMP(8, Tb, O, 0xff) | \
CMP(16, Tb, O, 0xff) | CMP(24, Tb, O, 0xff) | \
CMP(32, Tb, O, 0xff) | CMP(40, Tb, O, 0xff) | \
CMP(48, Tb, O, 0xff) | CMP(56, Tb, O, 0xff); \
env->iwmmxt.cregs[ARM_IWMMXT_wCASF] = \
- NZBIT8(a >> 0, 0) | NZBIT8(a >> 8, 1) | \
+ NZBIT8(a >> 0, 0) | NZBIT8(a >> 8, 1) | \
NZBIT8(a >> 16, 2) | NZBIT8(a >> 24, 3) | \
NZBIT8(a >> 32, 4) | NZBIT8(a >> 40, 5) | \
NZBIT8(a >> 48, 6) | NZBIT8(a >> 56, 7); \
diff --git a/target-arm/translate.c b/target-arm/translate.c
index 6190028..cf59d63 100644
--- a/target-arm/translate.c
+++ b/target-arm/translate.c
@@ -2516,7 +2516,7 @@ static int disas_cp15_insn(CPUState *env, DisasContext *s, uint32_t insn)
/* M profile cores use memory mapped registers instead of cp15. */
if (arm_feature(env, ARM_FEATURE_M))
- return 1;
+ return 1;
if ((insn & (1 << 25)) == 0) {
if (insn & (1 << 20)) {
@@ -6186,21 +6186,21 @@ static int disas_coproc_insn(CPUState * env, DisasContext *s, uint32_t insn)
cpnum = (insn >> 8) & 0xf;
if (arm_feature(env, ARM_FEATURE_XSCALE)
- && ((env->cp15.c15_cpar ^ 0x3fff) & (1 << cpnum)))
- return 1;
+ && ((env->cp15.c15_cpar ^ 0x3fff) & (1 << cpnum)))
+ return 1;
switch (cpnum) {
case 0:
case 1:
- if (arm_feature(env, ARM_FEATURE_IWMMXT)) {
- return disas_iwmmxt_insn(env, s, insn);
- } else if (arm_feature(env, ARM_FEATURE_XSCALE)) {
- return disas_dsp_insn(env, s, insn);
- }
- return 1;
+ if (arm_feature(env, ARM_FEATURE_IWMMXT)) {
+ return disas_iwmmxt_insn(env, s, insn);
+ } else if (arm_feature(env, ARM_FEATURE_XSCALE)) {
+ return disas_dsp_insn(env, s, insn);
+ }
+ return 1;
case 10:
case 11:
- return disas_vfp_insn (env, s, insn);
+ return disas_vfp_insn (env, s, insn);
case 14:
/* Coprocessors 7-15 are architecturally reserved by ARM.
Unfortunately Intel decided to ignore this. */
@@ -6211,11 +6211,11 @@ static int disas_coproc_insn(CPUState * env, DisasContext *s, uint32_t insn)
else
return disas_cp14_write(env, s, insn);
case 15:
- return disas_cp15_insn (env, s, insn);
+ return disas_cp15_insn (env, s, insn);
default:
board:
- /* Unknown coprocessor. See if the board has hooked it. */
- return disas_cp_insn (env, s, insn);
+ /* Unknown coprocessor. See if the board has hooked it. */
+ return disas_cp_insn (env, s, insn);
}
}
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH 2/4] [arm] move helpers.h to helper.h
2011-04-13 16:38 [Qemu-devel] [PATCH 1/4] [arm] trivial whitespace/indentation fixes Lluís
@ 2011-04-13 16:38 ` Lluís
2011-04-18 19:18 ` Aurelien Jarno
2011-04-13 16:38 ` [Qemu-devel] [PATCH 3/4] [m68k] trivial whitespace/indentation fixes Lluís
` (2 subsequent siblings)
3 siblings, 1 reply; 9+ messages in thread
From: Lluís @ 2011-04-13 16:38 UTC (permalink / raw)
To: qemu-devel; +Cc: aurelien
This provides a consistent naming scheme across all targets.
Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
---
target-arm/helper.c | 2
target-arm/helper.h | 475 ++++++++++++++++++++++++++++++++++++++++++++
target-arm/helpers.h | 475 --------------------------------------------
target-arm/iwmmxt_helper.c | 2
target-arm/neon_helper.c | 2
target-arm/op_helper.c | 2
target-arm/translate.c | 6 -
7 files changed, 482 insertions(+), 482 deletions(-)
create mode 100644 target-arm/helper.h
delete mode 100644 target-arm/helpers.h
diff --git a/target-arm/helper.c b/target-arm/helper.c
index d2e0bf4..2adf3ca 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -5,7 +5,7 @@
#include "cpu.h"
#include "exec-all.h"
#include "gdbstub.h"
-#include "helpers.h"
+#include "helper.h"
#include "qemu-common.h"
#include "host-utils.h"
#if !defined(CONFIG_USER_ONLY)
diff --git a/target-arm/helper.h b/target-arm/helper.h
new file mode 100644
index 0000000..ae701e8
--- /dev/null
+++ b/target-arm/helper.h
@@ -0,0 +1,475 @@
+#include "def-helper.h"
+
+DEF_HELPER_1(clz, i32, i32)
+DEF_HELPER_1(sxtb16, i32, i32)
+DEF_HELPER_1(uxtb16, i32, i32)
+
+DEF_HELPER_2(add_setq, i32, i32, i32)
+DEF_HELPER_2(add_saturate, i32, i32, i32)
+DEF_HELPER_2(sub_saturate, i32, i32, i32)
+DEF_HELPER_2(add_usaturate, i32, i32, i32)
+DEF_HELPER_2(sub_usaturate, i32, i32, i32)
+DEF_HELPER_1(double_saturate, i32, s32)
+DEF_HELPER_2(sdiv, s32, s32, s32)
+DEF_HELPER_2(udiv, i32, i32, i32)
+DEF_HELPER_1(rbit, i32, i32)
+DEF_HELPER_1(abs, i32, i32)
+
+#define PAS_OP(pfx) \
+ DEF_HELPER_3(pfx ## add8, i32, i32, i32, ptr) \
+ DEF_HELPER_3(pfx ## sub8, i32, i32, i32, ptr) \
+ DEF_HELPER_3(pfx ## sub16, i32, i32, i32, ptr) \
+ DEF_HELPER_3(pfx ## add16, i32, i32, i32, ptr) \
+ DEF_HELPER_3(pfx ## addsubx, i32, i32, i32, ptr) \
+ DEF_HELPER_3(pfx ## subaddx, i32, i32, i32, ptr)
+
+PAS_OP(s)
+PAS_OP(u)
+#undef PAS_OP
+
+#define PAS_OP(pfx) \
+ DEF_HELPER_2(pfx ## add8, i32, i32, i32) \
+ DEF_HELPER_2(pfx ## sub8, i32, i32, i32) \
+ DEF_HELPER_2(pfx ## sub16, i32, i32, i32) \
+ DEF_HELPER_2(pfx ## add16, i32, i32, i32) \
+ DEF_HELPER_2(pfx ## addsubx, i32, i32, i32) \
+ DEF_HELPER_2(pfx ## subaddx, i32, i32, i32)
+PAS_OP(q)
+PAS_OP(sh)
+PAS_OP(uq)
+PAS_OP(uh)
+#undef PAS_OP
+
+DEF_HELPER_2(ssat, i32, i32, i32)
+DEF_HELPER_2(usat, i32, i32, i32)
+DEF_HELPER_2(ssat16, i32, i32, i32)
+DEF_HELPER_2(usat16, i32, i32, i32)
+
+DEF_HELPER_2(usad8, i32, i32, i32)
+
+DEF_HELPER_1(logicq_cc, i32, i64)
+
+DEF_HELPER_3(sel_flags, i32, i32, i32, i32)
+DEF_HELPER_1(exception, void, i32)
+DEF_HELPER_0(wfi, void)
+
+DEF_HELPER_2(cpsr_write, void, i32, i32)
+DEF_HELPER_0(cpsr_read, i32)
+
+DEF_HELPER_3(v7m_msr, void, env, i32, i32)
+DEF_HELPER_2(v7m_mrs, i32, env, i32)
+
+DEF_HELPER_3(set_cp15, void, env, i32, i32)
+DEF_HELPER_2(get_cp15, i32, env, i32)
+
+DEF_HELPER_3(set_cp, void, env, i32, i32)
+DEF_HELPER_2(get_cp, i32, env, i32)
+
+DEF_HELPER_2(get_r13_banked, i32, env, i32)
+DEF_HELPER_3(set_r13_banked, void, env, i32, i32)
+
+DEF_HELPER_1(get_user_reg, i32, i32)
+DEF_HELPER_2(set_user_reg, void, i32, i32)
+
+DEF_HELPER_1(vfp_get_fpscr, i32, env)
+DEF_HELPER_2(vfp_set_fpscr, void, env, i32)
+
+DEF_HELPER_3(vfp_adds, f32, f32, f32, env)
+DEF_HELPER_3(vfp_addd, f64, f64, f64, env)
+DEF_HELPER_3(vfp_subs, f32, f32, f32, env)
+DEF_HELPER_3(vfp_subd, f64, f64, f64, env)
+DEF_HELPER_3(vfp_muls, f32, f32, f32, env)
+DEF_HELPER_3(vfp_muld, f64, f64, f64, env)
+DEF_HELPER_3(vfp_divs, f32, f32, f32, env)
+DEF_HELPER_3(vfp_divd, f64, f64, f64, env)
+DEF_HELPER_1(vfp_negs, f32, f32)
+DEF_HELPER_1(vfp_negd, f64, f64)
+DEF_HELPER_1(vfp_abss, f32, f32)
+DEF_HELPER_1(vfp_absd, f64, f64)
+DEF_HELPER_2(vfp_sqrts, f32, f32, env)
+DEF_HELPER_2(vfp_sqrtd, f64, f64, env)
+DEF_HELPER_3(vfp_cmps, void, f32, f32, env)
+DEF_HELPER_3(vfp_cmpd, void, f64, f64, env)
+DEF_HELPER_3(vfp_cmpes, void, f32, f32, env)
+DEF_HELPER_3(vfp_cmped, void, f64, f64, env)
+
+DEF_HELPER_2(vfp_fcvtds, f64, f32, env)
+DEF_HELPER_2(vfp_fcvtsd, f32, f64, env)
+
+DEF_HELPER_2(vfp_uitos, f32, i32, env)
+DEF_HELPER_2(vfp_uitod, f64, i32, env)
+DEF_HELPER_2(vfp_sitos, f32, i32, env)
+DEF_HELPER_2(vfp_sitod, f64, i32, env)
+
+DEF_HELPER_2(vfp_touis, i32, f32, env)
+DEF_HELPER_2(vfp_touid, i32, f64, env)
+DEF_HELPER_2(vfp_touizs, i32, f32, env)
+DEF_HELPER_2(vfp_touizd, i32, f64, env)
+DEF_HELPER_2(vfp_tosis, i32, f32, env)
+DEF_HELPER_2(vfp_tosid, i32, f64, env)
+DEF_HELPER_2(vfp_tosizs, i32, f32, env)
+DEF_HELPER_2(vfp_tosizd, i32, f64, env)
+
+DEF_HELPER_3(vfp_toshs, i32, f32, i32, env)
+DEF_HELPER_3(vfp_tosls, i32, f32, i32, env)
+DEF_HELPER_3(vfp_touhs, i32, f32, i32, env)
+DEF_HELPER_3(vfp_touls, i32, f32, i32, env)
+DEF_HELPER_3(vfp_toshd, i64, f64, i32, env)
+DEF_HELPER_3(vfp_tosld, i64, f64, i32, env)
+DEF_HELPER_3(vfp_touhd, i64, f64, i32, env)
+DEF_HELPER_3(vfp_tould, i64, f64, i32, env)
+DEF_HELPER_3(vfp_shtos, f32, i32, i32, env)
+DEF_HELPER_3(vfp_sltos, f32, i32, i32, env)
+DEF_HELPER_3(vfp_uhtos, f32, i32, i32, env)
+DEF_HELPER_3(vfp_ultos, f32, i32, i32, env)
+DEF_HELPER_3(vfp_shtod, f64, i64, i32, env)
+DEF_HELPER_3(vfp_sltod, f64, i64, i32, env)
+DEF_HELPER_3(vfp_uhtod, f64, i64, i32, env)
+DEF_HELPER_3(vfp_ultod, f64, i64, i32, env)
+
+DEF_HELPER_2(vfp_fcvt_f16_to_f32, f32, i32, env)
+DEF_HELPER_2(vfp_fcvt_f32_to_f16, i32, f32, env)
+DEF_HELPER_2(neon_fcvt_f16_to_f32, f32, i32, env)
+DEF_HELPER_2(neon_fcvt_f32_to_f16, i32, f32, env)
+
+DEF_HELPER_3(recps_f32, f32, f32, f32, env)
+DEF_HELPER_3(rsqrts_f32, f32, f32, f32, env)
+DEF_HELPER_2(recpe_f32, f32, f32, env)
+DEF_HELPER_2(rsqrte_f32, f32, f32, env)
+DEF_HELPER_2(recpe_u32, i32, i32, env)
+DEF_HELPER_2(rsqrte_u32, i32, i32, env)
+DEF_HELPER_4(neon_tbl, i32, i32, i32, i32, i32)
+
+DEF_HELPER_2(add_cc, i32, i32, i32)
+DEF_HELPER_2(adc_cc, i32, i32, i32)
+DEF_HELPER_2(sub_cc, i32, i32, i32)
+DEF_HELPER_2(sbc_cc, i32, i32, i32)
+
+DEF_HELPER_2(shl, i32, i32, i32)
+DEF_HELPER_2(shr, i32, i32, i32)
+DEF_HELPER_2(sar, i32, i32, i32)
+DEF_HELPER_2(shl_cc, i32, i32, i32)
+DEF_HELPER_2(shr_cc, i32, i32, i32)
+DEF_HELPER_2(sar_cc, i32, i32, i32)
+DEF_HELPER_2(ror_cc, i32, i32, i32)
+
+/* neon_helper.c */
+DEF_HELPER_2(neon_qadd_u8, i32, i32, i32)
+DEF_HELPER_2(neon_qadd_s8, i32, i32, i32)
+DEF_HELPER_2(neon_qadd_u16, i32, i32, i32)
+DEF_HELPER_2(neon_qadd_s16, i32, i32, i32)
+DEF_HELPER_2(neon_qadd_u32, i32, i32, i32)
+DEF_HELPER_2(neon_qadd_s32, i32, i32, i32)
+DEF_HELPER_2(neon_qsub_u8, i32, i32, i32)
+DEF_HELPER_2(neon_qsub_s8, i32, i32, i32)
+DEF_HELPER_2(neon_qsub_u16, i32, i32, i32)
+DEF_HELPER_2(neon_qsub_s16, i32, i32, i32)
+DEF_HELPER_2(neon_qsub_u32, i32, i32, i32)
+DEF_HELPER_2(neon_qsub_s32, i32, i32, i32)
+DEF_HELPER_2(neon_qadd_u64, i64, i64, i64)
+DEF_HELPER_2(neon_qadd_s64, i64, i64, i64)
+DEF_HELPER_2(neon_qsub_u64, i64, i64, i64)
+DEF_HELPER_2(neon_qsub_s64, i64, i64, i64)
+
+DEF_HELPER_2(neon_hadd_s8, i32, i32, i32)
+DEF_HELPER_2(neon_hadd_u8, i32, i32, i32)
+DEF_HELPER_2(neon_hadd_s16, i32, i32, i32)
+DEF_HELPER_2(neon_hadd_u16, i32, i32, i32)
+DEF_HELPER_2(neon_hadd_s32, s32, s32, s32)
+DEF_HELPER_2(neon_hadd_u32, i32, i32, i32)
+DEF_HELPER_2(neon_rhadd_s8, i32, i32, i32)
+DEF_HELPER_2(neon_rhadd_u8, i32, i32, i32)
+DEF_HELPER_2(neon_rhadd_s16, i32, i32, i32)
+DEF_HELPER_2(neon_rhadd_u16, i32, i32, i32)
+DEF_HELPER_2(neon_rhadd_s32, s32, s32, s32)
+DEF_HELPER_2(neon_rhadd_u32, i32, i32, i32)
+DEF_HELPER_2(neon_hsub_s8, i32, i32, i32)
+DEF_HELPER_2(neon_hsub_u8, i32, i32, i32)
+DEF_HELPER_2(neon_hsub_s16, i32, i32, i32)
+DEF_HELPER_2(neon_hsub_u16, i32, i32, i32)
+DEF_HELPER_2(neon_hsub_s32, s32, s32, s32)
+DEF_HELPER_2(neon_hsub_u32, i32, i32, i32)
+
+DEF_HELPER_2(neon_cgt_u8, i32, i32, i32)
+DEF_HELPER_2(neon_cgt_s8, i32, i32, i32)
+DEF_HELPER_2(neon_cgt_u16, i32, i32, i32)
+DEF_HELPER_2(neon_cgt_s16, i32, i32, i32)
+DEF_HELPER_2(neon_cgt_u32, i32, i32, i32)
+DEF_HELPER_2(neon_cgt_s32, i32, i32, i32)
+DEF_HELPER_2(neon_cge_u8, i32, i32, i32)
+DEF_HELPER_2(neon_cge_s8, i32, i32, i32)
+DEF_HELPER_2(neon_cge_u16, i32, i32, i32)
+DEF_HELPER_2(neon_cge_s16, i32, i32, i32)
+DEF_HELPER_2(neon_cge_u32, i32, i32, i32)
+DEF_HELPER_2(neon_cge_s32, i32, i32, i32)
+
+DEF_HELPER_2(neon_min_u8, i32, i32, i32)
+DEF_HELPER_2(neon_min_s8, i32, i32, i32)
+DEF_HELPER_2(neon_min_u16, i32, i32, i32)
+DEF_HELPER_2(neon_min_s16, i32, i32, i32)
+DEF_HELPER_2(neon_min_u32, i32, i32, i32)
+DEF_HELPER_2(neon_min_s32, i32, i32, i32)
+DEF_HELPER_2(neon_max_u8, i32, i32, i32)
+DEF_HELPER_2(neon_max_s8, i32, i32, i32)
+DEF_HELPER_2(neon_max_u16, i32, i32, i32)
+DEF_HELPER_2(neon_max_s16, i32, i32, i32)
+DEF_HELPER_2(neon_max_u32, i32, i32, i32)
+DEF_HELPER_2(neon_max_s32, i32, i32, i32)
+DEF_HELPER_2(neon_pmin_u8, i32, i32, i32)
+DEF_HELPER_2(neon_pmin_s8, i32, i32, i32)
+DEF_HELPER_2(neon_pmin_u16, i32, i32, i32)
+DEF_HELPER_2(neon_pmin_s16, i32, i32, i32)
+DEF_HELPER_2(neon_pmax_u8, i32, i32, i32)
+DEF_HELPER_2(neon_pmax_s8, i32, i32, i32)
+DEF_HELPER_2(neon_pmax_u16, i32, i32, i32)
+DEF_HELPER_2(neon_pmax_s16, i32, i32, i32)
+
+DEF_HELPER_2(neon_abd_u8, i32, i32, i32)
+DEF_HELPER_2(neon_abd_s8, i32, i32, i32)
+DEF_HELPER_2(neon_abd_u16, i32, i32, i32)
+DEF_HELPER_2(neon_abd_s16, i32, i32, i32)
+DEF_HELPER_2(neon_abd_u32, i32, i32, i32)
+DEF_HELPER_2(neon_abd_s32, i32, i32, i32)
+
+DEF_HELPER_2(neon_shl_u8, i32, i32, i32)
+DEF_HELPER_2(neon_shl_s8, i32, i32, i32)
+DEF_HELPER_2(neon_shl_u16, i32, i32, i32)
+DEF_HELPER_2(neon_shl_s16, i32, i32, i32)
+DEF_HELPER_2(neon_shl_u32, i32, i32, i32)
+DEF_HELPER_2(neon_shl_s32, i32, i32, i32)
+DEF_HELPER_2(neon_shl_u64, i64, i64, i64)
+DEF_HELPER_2(neon_shl_s64, i64, i64, i64)
+DEF_HELPER_2(neon_rshl_u8, i32, i32, i32)
+DEF_HELPER_2(neon_rshl_s8, i32, i32, i32)
+DEF_HELPER_2(neon_rshl_u16, i32, i32, i32)
+DEF_HELPER_2(neon_rshl_s16, i32, i32, i32)
+DEF_HELPER_2(neon_rshl_u32, i32, i32, i32)
+DEF_HELPER_2(neon_rshl_s32, i32, i32, i32)
+DEF_HELPER_2(neon_rshl_u64, i64, i64, i64)
+DEF_HELPER_2(neon_rshl_s64, i64, i64, i64)
+DEF_HELPER_2(neon_qshl_u8, i32, i32, i32)
+DEF_HELPER_2(neon_qshl_s8, i32, i32, i32)
+DEF_HELPER_2(neon_qshl_u16, i32, i32, i32)
+DEF_HELPER_2(neon_qshl_s16, i32, i32, i32)
+DEF_HELPER_2(neon_qshl_u32, i32, i32, i32)
+DEF_HELPER_2(neon_qshl_s32, i32, i32, i32)
+DEF_HELPER_2(neon_qshl_u64, i64, i64, i64)
+DEF_HELPER_2(neon_qshl_s64, i64, i64, i64)
+DEF_HELPER_2(neon_qshlu_s8, i32, i32, i32);
+DEF_HELPER_2(neon_qshlu_s16, i32, i32, i32);
+DEF_HELPER_2(neon_qshlu_s32, i32, i32, i32);
+DEF_HELPER_2(neon_qshlu_s64, i64, i64, i64);
+DEF_HELPER_2(neon_qrshl_u8, i32, i32, i32)
+DEF_HELPER_2(neon_qrshl_s8, i32, i32, i32)
+DEF_HELPER_2(neon_qrshl_u16, i32, i32, i32)
+DEF_HELPER_2(neon_qrshl_s16, i32, i32, i32)
+DEF_HELPER_2(neon_qrshl_u32, i32, i32, i32)
+DEF_HELPER_2(neon_qrshl_s32, i32, i32, i32)
+DEF_HELPER_2(neon_qrshl_u64, i64, i64, i64)
+DEF_HELPER_2(neon_qrshl_s64, i64, i64, i64)
+
+DEF_HELPER_2(neon_add_u8, i32, i32, i32)
+DEF_HELPER_2(neon_add_u16, i32, i32, i32)
+DEF_HELPER_2(neon_padd_u8, i32, i32, i32)
+DEF_HELPER_2(neon_padd_u16, i32, i32, i32)
+DEF_HELPER_2(neon_sub_u8, i32, i32, i32)
+DEF_HELPER_2(neon_sub_u16, i32, i32, i32)
+DEF_HELPER_2(neon_mul_u8, i32, i32, i32)
+DEF_HELPER_2(neon_mul_u16, i32, i32, i32)
+DEF_HELPER_2(neon_mul_p8, i32, i32, i32)
+DEF_HELPER_2(neon_mull_p8, i64, i32, i32)
+
+DEF_HELPER_2(neon_tst_u8, i32, i32, i32)
+DEF_HELPER_2(neon_tst_u16, i32, i32, i32)
+DEF_HELPER_2(neon_tst_u32, i32, i32, i32)
+DEF_HELPER_2(neon_ceq_u8, i32, i32, i32)
+DEF_HELPER_2(neon_ceq_u16, i32, i32, i32)
+DEF_HELPER_2(neon_ceq_u32, i32, i32, i32)
+
+DEF_HELPER_1(neon_abs_s8, i32, i32)
+DEF_HELPER_1(neon_abs_s16, i32, i32)
+DEF_HELPER_1(neon_clz_u8, i32, i32)
+DEF_HELPER_1(neon_clz_u16, i32, i32)
+DEF_HELPER_1(neon_cls_s8, i32, i32)
+DEF_HELPER_1(neon_cls_s16, i32, i32)
+DEF_HELPER_1(neon_cls_s32, i32, i32)
+DEF_HELPER_1(neon_cnt_u8, i32, i32)
+
+DEF_HELPER_2(neon_qdmulh_s16, i32, i32, i32)
+DEF_HELPER_2(neon_qrdmulh_s16, i32, i32, i32)
+DEF_HELPER_2(neon_qdmulh_s32, i32, i32, i32)
+DEF_HELPER_2(neon_qrdmulh_s32, i32, i32, i32)
+
+DEF_HELPER_1(neon_narrow_u8, i32, i64)
+DEF_HELPER_1(neon_narrow_u16, i32, i64)
+DEF_HELPER_1(neon_unarrow_sat8, i32, i64)
+DEF_HELPER_1(neon_narrow_sat_u8, i32, i64)
+DEF_HELPER_1(neon_narrow_sat_s8, i32, i64)
+DEF_HELPER_1(neon_unarrow_sat16, i32, i64)
+DEF_HELPER_1(neon_narrow_sat_u16, i32, i64)
+DEF_HELPER_1(neon_narrow_sat_s16, i32, i64)
+DEF_HELPER_1(neon_unarrow_sat32, i32, i64)
+DEF_HELPER_1(neon_narrow_sat_u32, i32, i64)
+DEF_HELPER_1(neon_narrow_sat_s32, i32, i64)
+DEF_HELPER_1(neon_narrow_high_u8, i32, i64)
+DEF_HELPER_1(neon_narrow_high_u16, i32, i64)
+DEF_HELPER_1(neon_narrow_round_high_u8, i32, i64)
+DEF_HELPER_1(neon_narrow_round_high_u16, i32, i64)
+DEF_HELPER_1(neon_widen_u8, i64, i32)
+DEF_HELPER_1(neon_widen_s8, i64, i32)
+DEF_HELPER_1(neon_widen_u16, i64, i32)
+DEF_HELPER_1(neon_widen_s16, i64, i32)
+
+DEF_HELPER_2(neon_addl_u16, i64, i64, i64)
+DEF_HELPER_2(neon_addl_u32, i64, i64, i64)
+DEF_HELPER_2(neon_paddl_u16, i64, i64, i64)
+DEF_HELPER_2(neon_paddl_u32, i64, i64, i64)
+DEF_HELPER_2(neon_subl_u16, i64, i64, i64)
+DEF_HELPER_2(neon_subl_u32, i64, i64, i64)
+DEF_HELPER_2(neon_addl_saturate_s32, i64, i64, i64)
+DEF_HELPER_2(neon_addl_saturate_s64, i64, i64, i64)
+DEF_HELPER_2(neon_abdl_u16, i64, i32, i32)
+DEF_HELPER_2(neon_abdl_s16, i64, i32, i32)
+DEF_HELPER_2(neon_abdl_u32, i64, i32, i32)
+DEF_HELPER_2(neon_abdl_s32, i64, i32, i32)
+DEF_HELPER_2(neon_abdl_u64, i64, i32, i32)
+DEF_HELPER_2(neon_abdl_s64, i64, i32, i32)
+DEF_HELPER_2(neon_mull_u8, i64, i32, i32)
+DEF_HELPER_2(neon_mull_s8, i64, i32, i32)
+DEF_HELPER_2(neon_mull_u16, i64, i32, i32)
+DEF_HELPER_2(neon_mull_s16, i64, i32, i32)
+
+DEF_HELPER_1(neon_negl_u16, i64, i64)
+DEF_HELPER_1(neon_negl_u32, i64, i64)
+DEF_HELPER_1(neon_negl_u64, i64, i64)
+
+DEF_HELPER_1(neon_qabs_s8, i32, i32)
+DEF_HELPER_1(neon_qabs_s16, i32, i32)
+DEF_HELPER_1(neon_qabs_s32, i32, i32)
+DEF_HELPER_1(neon_qneg_s8, i32, i32)
+DEF_HELPER_1(neon_qneg_s16, i32, i32)
+DEF_HELPER_1(neon_qneg_s32, i32, i32)
+
+DEF_HELPER_2(neon_min_f32, i32, i32, i32)
+DEF_HELPER_2(neon_max_f32, i32, i32, i32)
+DEF_HELPER_2(neon_abd_f32, i32, i32, i32)
+DEF_HELPER_2(neon_add_f32, i32, i32, i32)
+DEF_HELPER_2(neon_sub_f32, i32, i32, i32)
+DEF_HELPER_2(neon_mul_f32, i32, i32, i32)
+DEF_HELPER_2(neon_ceq_f32, i32, i32, i32)
+DEF_HELPER_2(neon_cge_f32, i32, i32, i32)
+DEF_HELPER_2(neon_cgt_f32, i32, i32, i32)
+DEF_HELPER_2(neon_acge_f32, i32, i32, i32)
+DEF_HELPER_2(neon_acgt_f32, i32, i32, i32)
+
+/* iwmmxt_helper.c */
+DEF_HELPER_2(iwmmxt_maddsq, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_madduq, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_sadb, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_sadw, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_mulslw, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_mulshw, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_mululw, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_muluhw, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_macsw, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_macuw, i64, i64, i64)
+DEF_HELPER_1(iwmmxt_setpsr_nz, i32, i64)
+
+#define DEF_IWMMXT_HELPER_SIZE(name) \
+DEF_HELPER_2(iwmmxt_##name##b, i64, i64, i64) \
+DEF_HELPER_2(iwmmxt_##name##w, i64, i64, i64) \
+DEF_HELPER_2(iwmmxt_##name##l, i64, i64, i64) \
+
+DEF_IWMMXT_HELPER_SIZE(unpackl)
+DEF_IWMMXT_HELPER_SIZE(unpackh)
+
+DEF_HELPER_1(iwmmxt_unpacklub, i64, i64)
+DEF_HELPER_1(iwmmxt_unpackluw, i64, i64)
+DEF_HELPER_1(iwmmxt_unpacklul, i64, i64)
+DEF_HELPER_1(iwmmxt_unpackhub, i64, i64)
+DEF_HELPER_1(iwmmxt_unpackhuw, i64, i64)
+DEF_HELPER_1(iwmmxt_unpackhul, i64, i64)
+DEF_HELPER_1(iwmmxt_unpacklsb, i64, i64)
+DEF_HELPER_1(iwmmxt_unpacklsw, i64, i64)
+DEF_HELPER_1(iwmmxt_unpacklsl, i64, i64)
+DEF_HELPER_1(iwmmxt_unpackhsb, i64, i64)
+DEF_HELPER_1(iwmmxt_unpackhsw, i64, i64)
+DEF_HELPER_1(iwmmxt_unpackhsl, i64, i64)
+
+DEF_IWMMXT_HELPER_SIZE(cmpeq)
+DEF_IWMMXT_HELPER_SIZE(cmpgtu)
+DEF_IWMMXT_HELPER_SIZE(cmpgts)
+
+DEF_IWMMXT_HELPER_SIZE(mins)
+DEF_IWMMXT_HELPER_SIZE(minu)
+DEF_IWMMXT_HELPER_SIZE(maxs)
+DEF_IWMMXT_HELPER_SIZE(maxu)
+
+DEF_IWMMXT_HELPER_SIZE(subn)
+DEF_IWMMXT_HELPER_SIZE(addn)
+DEF_IWMMXT_HELPER_SIZE(subu)
+DEF_IWMMXT_HELPER_SIZE(addu)
+DEF_IWMMXT_HELPER_SIZE(subs)
+DEF_IWMMXT_HELPER_SIZE(adds)
+
+DEF_HELPER_2(iwmmxt_avgb0, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_avgb1, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_avgw0, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_avgw1, i64, i64, i64)
+
+DEF_HELPER_2(iwmmxt_msadb, i64, i64, i64)
+
+DEF_HELPER_3(iwmmxt_align, i64, i64, i64, i32)
+DEF_HELPER_4(iwmmxt_insr, i64, i64, i32, i32, i32)
+
+DEF_HELPER_1(iwmmxt_bcstb, i64, i32)
+DEF_HELPER_1(iwmmxt_bcstw, i64, i32)
+DEF_HELPER_1(iwmmxt_bcstl, i64, i32)
+
+DEF_HELPER_1(iwmmxt_addcb, i64, i64)
+DEF_HELPER_1(iwmmxt_addcw, i64, i64)
+DEF_HELPER_1(iwmmxt_addcl, i64, i64)
+
+DEF_HELPER_1(iwmmxt_msbb, i32, i64)
+DEF_HELPER_1(iwmmxt_msbw, i32, i64)
+DEF_HELPER_1(iwmmxt_msbl, i32, i64)
+
+DEF_HELPER_2(iwmmxt_srlw, i64, i64, i32)
+DEF_HELPER_2(iwmmxt_srll, i64, i64, i32)
+DEF_HELPER_2(iwmmxt_srlq, i64, i64, i32)
+DEF_HELPER_2(iwmmxt_sllw, i64, i64, i32)
+DEF_HELPER_2(iwmmxt_slll, i64, i64, i32)
+DEF_HELPER_2(iwmmxt_sllq, i64, i64, i32)
+DEF_HELPER_2(iwmmxt_sraw, i64, i64, i32)
+DEF_HELPER_2(iwmmxt_sral, i64, i64, i32)
+DEF_HELPER_2(iwmmxt_sraq, i64, i64, i32)
+DEF_HELPER_2(iwmmxt_rorw, i64, i64, i32)
+DEF_HELPER_2(iwmmxt_rorl, i64, i64, i32)
+DEF_HELPER_2(iwmmxt_rorq, i64, i64, i32)
+DEF_HELPER_2(iwmmxt_shufh, i64, i64, i32)
+
+DEF_HELPER_2(iwmmxt_packuw, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_packul, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_packuq, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_packsw, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_packsl, i64, i64, i64)
+DEF_HELPER_2(iwmmxt_packsq, i64, i64, i64)
+
+DEF_HELPER_3(iwmmxt_muladdsl, i64, i64, i32, i32)
+DEF_HELPER_3(iwmmxt_muladdsw, i64, i64, i32, i32)
+DEF_HELPER_3(iwmmxt_muladdswl, i64, i64, i32, i32)
+
+DEF_HELPER_2(set_teecr, void, env, i32)
+
+DEF_HELPER_2(neon_unzip8, void, i32, i32)
+DEF_HELPER_2(neon_unzip16, void, i32, i32)
+DEF_HELPER_2(neon_qunzip8, void, i32, i32)
+DEF_HELPER_2(neon_qunzip16, void, i32, i32)
+DEF_HELPER_2(neon_qunzip32, void, i32, i32)
+DEF_HELPER_2(neon_zip8, void, i32, i32)
+DEF_HELPER_2(neon_zip16, void, i32, i32)
+DEF_HELPER_2(neon_qzip8, void, i32, i32)
+DEF_HELPER_2(neon_qzip16, void, i32, i32)
+DEF_HELPER_2(neon_qzip32, void, i32, i32)
+
+#include "def-helper.h"
diff --git a/target-arm/helpers.h b/target-arm/helpers.h
deleted file mode 100644
index ae701e8..0000000
--- a/target-arm/helpers.h
+++ /dev/null
@@ -1,475 +0,0 @@
-#include "def-helper.h"
-
-DEF_HELPER_1(clz, i32, i32)
-DEF_HELPER_1(sxtb16, i32, i32)
-DEF_HELPER_1(uxtb16, i32, i32)
-
-DEF_HELPER_2(add_setq, i32, i32, i32)
-DEF_HELPER_2(add_saturate, i32, i32, i32)
-DEF_HELPER_2(sub_saturate, i32, i32, i32)
-DEF_HELPER_2(add_usaturate, i32, i32, i32)
-DEF_HELPER_2(sub_usaturate, i32, i32, i32)
-DEF_HELPER_1(double_saturate, i32, s32)
-DEF_HELPER_2(sdiv, s32, s32, s32)
-DEF_HELPER_2(udiv, i32, i32, i32)
-DEF_HELPER_1(rbit, i32, i32)
-DEF_HELPER_1(abs, i32, i32)
-
-#define PAS_OP(pfx) \
- DEF_HELPER_3(pfx ## add8, i32, i32, i32, ptr) \
- DEF_HELPER_3(pfx ## sub8, i32, i32, i32, ptr) \
- DEF_HELPER_3(pfx ## sub16, i32, i32, i32, ptr) \
- DEF_HELPER_3(pfx ## add16, i32, i32, i32, ptr) \
- DEF_HELPER_3(pfx ## addsubx, i32, i32, i32, ptr) \
- DEF_HELPER_3(pfx ## subaddx, i32, i32, i32, ptr)
-
-PAS_OP(s)
-PAS_OP(u)
-#undef PAS_OP
-
-#define PAS_OP(pfx) \
- DEF_HELPER_2(pfx ## add8, i32, i32, i32) \
- DEF_HELPER_2(pfx ## sub8, i32, i32, i32) \
- DEF_HELPER_2(pfx ## sub16, i32, i32, i32) \
- DEF_HELPER_2(pfx ## add16, i32, i32, i32) \
- DEF_HELPER_2(pfx ## addsubx, i32, i32, i32) \
- DEF_HELPER_2(pfx ## subaddx, i32, i32, i32)
-PAS_OP(q)
-PAS_OP(sh)
-PAS_OP(uq)
-PAS_OP(uh)
-#undef PAS_OP
-
-DEF_HELPER_2(ssat, i32, i32, i32)
-DEF_HELPER_2(usat, i32, i32, i32)
-DEF_HELPER_2(ssat16, i32, i32, i32)
-DEF_HELPER_2(usat16, i32, i32, i32)
-
-DEF_HELPER_2(usad8, i32, i32, i32)
-
-DEF_HELPER_1(logicq_cc, i32, i64)
-
-DEF_HELPER_3(sel_flags, i32, i32, i32, i32)
-DEF_HELPER_1(exception, void, i32)
-DEF_HELPER_0(wfi, void)
-
-DEF_HELPER_2(cpsr_write, void, i32, i32)
-DEF_HELPER_0(cpsr_read, i32)
-
-DEF_HELPER_3(v7m_msr, void, env, i32, i32)
-DEF_HELPER_2(v7m_mrs, i32, env, i32)
-
-DEF_HELPER_3(set_cp15, void, env, i32, i32)
-DEF_HELPER_2(get_cp15, i32, env, i32)
-
-DEF_HELPER_3(set_cp, void, env, i32, i32)
-DEF_HELPER_2(get_cp, i32, env, i32)
-
-DEF_HELPER_2(get_r13_banked, i32, env, i32)
-DEF_HELPER_3(set_r13_banked, void, env, i32, i32)
-
-DEF_HELPER_1(get_user_reg, i32, i32)
-DEF_HELPER_2(set_user_reg, void, i32, i32)
-
-DEF_HELPER_1(vfp_get_fpscr, i32, env)
-DEF_HELPER_2(vfp_set_fpscr, void, env, i32)
-
-DEF_HELPER_3(vfp_adds, f32, f32, f32, env)
-DEF_HELPER_3(vfp_addd, f64, f64, f64, env)
-DEF_HELPER_3(vfp_subs, f32, f32, f32, env)
-DEF_HELPER_3(vfp_subd, f64, f64, f64, env)
-DEF_HELPER_3(vfp_muls, f32, f32, f32, env)
-DEF_HELPER_3(vfp_muld, f64, f64, f64, env)
-DEF_HELPER_3(vfp_divs, f32, f32, f32, env)
-DEF_HELPER_3(vfp_divd, f64, f64, f64, env)
-DEF_HELPER_1(vfp_negs, f32, f32)
-DEF_HELPER_1(vfp_negd, f64, f64)
-DEF_HELPER_1(vfp_abss, f32, f32)
-DEF_HELPER_1(vfp_absd, f64, f64)
-DEF_HELPER_2(vfp_sqrts, f32, f32, env)
-DEF_HELPER_2(vfp_sqrtd, f64, f64, env)
-DEF_HELPER_3(vfp_cmps, void, f32, f32, env)
-DEF_HELPER_3(vfp_cmpd, void, f64, f64, env)
-DEF_HELPER_3(vfp_cmpes, void, f32, f32, env)
-DEF_HELPER_3(vfp_cmped, void, f64, f64, env)
-
-DEF_HELPER_2(vfp_fcvtds, f64, f32, env)
-DEF_HELPER_2(vfp_fcvtsd, f32, f64, env)
-
-DEF_HELPER_2(vfp_uitos, f32, i32, env)
-DEF_HELPER_2(vfp_uitod, f64, i32, env)
-DEF_HELPER_2(vfp_sitos, f32, i32, env)
-DEF_HELPER_2(vfp_sitod, f64, i32, env)
-
-DEF_HELPER_2(vfp_touis, i32, f32, env)
-DEF_HELPER_2(vfp_touid, i32, f64, env)
-DEF_HELPER_2(vfp_touizs, i32, f32, env)
-DEF_HELPER_2(vfp_touizd, i32, f64, env)
-DEF_HELPER_2(vfp_tosis, i32, f32, env)
-DEF_HELPER_2(vfp_tosid, i32, f64, env)
-DEF_HELPER_2(vfp_tosizs, i32, f32, env)
-DEF_HELPER_2(vfp_tosizd, i32, f64, env)
-
-DEF_HELPER_3(vfp_toshs, i32, f32, i32, env)
-DEF_HELPER_3(vfp_tosls, i32, f32, i32, env)
-DEF_HELPER_3(vfp_touhs, i32, f32, i32, env)
-DEF_HELPER_3(vfp_touls, i32, f32, i32, env)
-DEF_HELPER_3(vfp_toshd, i64, f64, i32, env)
-DEF_HELPER_3(vfp_tosld, i64, f64, i32, env)
-DEF_HELPER_3(vfp_touhd, i64, f64, i32, env)
-DEF_HELPER_3(vfp_tould, i64, f64, i32, env)
-DEF_HELPER_3(vfp_shtos, f32, i32, i32, env)
-DEF_HELPER_3(vfp_sltos, f32, i32, i32, env)
-DEF_HELPER_3(vfp_uhtos, f32, i32, i32, env)
-DEF_HELPER_3(vfp_ultos, f32, i32, i32, env)
-DEF_HELPER_3(vfp_shtod, f64, i64, i32, env)
-DEF_HELPER_3(vfp_sltod, f64, i64, i32, env)
-DEF_HELPER_3(vfp_uhtod, f64, i64, i32, env)
-DEF_HELPER_3(vfp_ultod, f64, i64, i32, env)
-
-DEF_HELPER_2(vfp_fcvt_f16_to_f32, f32, i32, env)
-DEF_HELPER_2(vfp_fcvt_f32_to_f16, i32, f32, env)
-DEF_HELPER_2(neon_fcvt_f16_to_f32, f32, i32, env)
-DEF_HELPER_2(neon_fcvt_f32_to_f16, i32, f32, env)
-
-DEF_HELPER_3(recps_f32, f32, f32, f32, env)
-DEF_HELPER_3(rsqrts_f32, f32, f32, f32, env)
-DEF_HELPER_2(recpe_f32, f32, f32, env)
-DEF_HELPER_2(rsqrte_f32, f32, f32, env)
-DEF_HELPER_2(recpe_u32, i32, i32, env)
-DEF_HELPER_2(rsqrte_u32, i32, i32, env)
-DEF_HELPER_4(neon_tbl, i32, i32, i32, i32, i32)
-
-DEF_HELPER_2(add_cc, i32, i32, i32)
-DEF_HELPER_2(adc_cc, i32, i32, i32)
-DEF_HELPER_2(sub_cc, i32, i32, i32)
-DEF_HELPER_2(sbc_cc, i32, i32, i32)
-
-DEF_HELPER_2(shl, i32, i32, i32)
-DEF_HELPER_2(shr, i32, i32, i32)
-DEF_HELPER_2(sar, i32, i32, i32)
-DEF_HELPER_2(shl_cc, i32, i32, i32)
-DEF_HELPER_2(shr_cc, i32, i32, i32)
-DEF_HELPER_2(sar_cc, i32, i32, i32)
-DEF_HELPER_2(ror_cc, i32, i32, i32)
-
-/* neon_helper.c */
-DEF_HELPER_2(neon_qadd_u8, i32, i32, i32)
-DEF_HELPER_2(neon_qadd_s8, i32, i32, i32)
-DEF_HELPER_2(neon_qadd_u16, i32, i32, i32)
-DEF_HELPER_2(neon_qadd_s16, i32, i32, i32)
-DEF_HELPER_2(neon_qadd_u32, i32, i32, i32)
-DEF_HELPER_2(neon_qadd_s32, i32, i32, i32)
-DEF_HELPER_2(neon_qsub_u8, i32, i32, i32)
-DEF_HELPER_2(neon_qsub_s8, i32, i32, i32)
-DEF_HELPER_2(neon_qsub_u16, i32, i32, i32)
-DEF_HELPER_2(neon_qsub_s16, i32, i32, i32)
-DEF_HELPER_2(neon_qsub_u32, i32, i32, i32)
-DEF_HELPER_2(neon_qsub_s32, i32, i32, i32)
-DEF_HELPER_2(neon_qadd_u64, i64, i64, i64)
-DEF_HELPER_2(neon_qadd_s64, i64, i64, i64)
-DEF_HELPER_2(neon_qsub_u64, i64, i64, i64)
-DEF_HELPER_2(neon_qsub_s64, i64, i64, i64)
-
-DEF_HELPER_2(neon_hadd_s8, i32, i32, i32)
-DEF_HELPER_2(neon_hadd_u8, i32, i32, i32)
-DEF_HELPER_2(neon_hadd_s16, i32, i32, i32)
-DEF_HELPER_2(neon_hadd_u16, i32, i32, i32)
-DEF_HELPER_2(neon_hadd_s32, s32, s32, s32)
-DEF_HELPER_2(neon_hadd_u32, i32, i32, i32)
-DEF_HELPER_2(neon_rhadd_s8, i32, i32, i32)
-DEF_HELPER_2(neon_rhadd_u8, i32, i32, i32)
-DEF_HELPER_2(neon_rhadd_s16, i32, i32, i32)
-DEF_HELPER_2(neon_rhadd_u16, i32, i32, i32)
-DEF_HELPER_2(neon_rhadd_s32, s32, s32, s32)
-DEF_HELPER_2(neon_rhadd_u32, i32, i32, i32)
-DEF_HELPER_2(neon_hsub_s8, i32, i32, i32)
-DEF_HELPER_2(neon_hsub_u8, i32, i32, i32)
-DEF_HELPER_2(neon_hsub_s16, i32, i32, i32)
-DEF_HELPER_2(neon_hsub_u16, i32, i32, i32)
-DEF_HELPER_2(neon_hsub_s32, s32, s32, s32)
-DEF_HELPER_2(neon_hsub_u32, i32, i32, i32)
-
-DEF_HELPER_2(neon_cgt_u8, i32, i32, i32)
-DEF_HELPER_2(neon_cgt_s8, i32, i32, i32)
-DEF_HELPER_2(neon_cgt_u16, i32, i32, i32)
-DEF_HELPER_2(neon_cgt_s16, i32, i32, i32)
-DEF_HELPER_2(neon_cgt_u32, i32, i32, i32)
-DEF_HELPER_2(neon_cgt_s32, i32, i32, i32)
-DEF_HELPER_2(neon_cge_u8, i32, i32, i32)
-DEF_HELPER_2(neon_cge_s8, i32, i32, i32)
-DEF_HELPER_2(neon_cge_u16, i32, i32, i32)
-DEF_HELPER_2(neon_cge_s16, i32, i32, i32)
-DEF_HELPER_2(neon_cge_u32, i32, i32, i32)
-DEF_HELPER_2(neon_cge_s32, i32, i32, i32)
-
-DEF_HELPER_2(neon_min_u8, i32, i32, i32)
-DEF_HELPER_2(neon_min_s8, i32, i32, i32)
-DEF_HELPER_2(neon_min_u16, i32, i32, i32)
-DEF_HELPER_2(neon_min_s16, i32, i32, i32)
-DEF_HELPER_2(neon_min_u32, i32, i32, i32)
-DEF_HELPER_2(neon_min_s32, i32, i32, i32)
-DEF_HELPER_2(neon_max_u8, i32, i32, i32)
-DEF_HELPER_2(neon_max_s8, i32, i32, i32)
-DEF_HELPER_2(neon_max_u16, i32, i32, i32)
-DEF_HELPER_2(neon_max_s16, i32, i32, i32)
-DEF_HELPER_2(neon_max_u32, i32, i32, i32)
-DEF_HELPER_2(neon_max_s32, i32, i32, i32)
-DEF_HELPER_2(neon_pmin_u8, i32, i32, i32)
-DEF_HELPER_2(neon_pmin_s8, i32, i32, i32)
-DEF_HELPER_2(neon_pmin_u16, i32, i32, i32)
-DEF_HELPER_2(neon_pmin_s16, i32, i32, i32)
-DEF_HELPER_2(neon_pmax_u8, i32, i32, i32)
-DEF_HELPER_2(neon_pmax_s8, i32, i32, i32)
-DEF_HELPER_2(neon_pmax_u16, i32, i32, i32)
-DEF_HELPER_2(neon_pmax_s16, i32, i32, i32)
-
-DEF_HELPER_2(neon_abd_u8, i32, i32, i32)
-DEF_HELPER_2(neon_abd_s8, i32, i32, i32)
-DEF_HELPER_2(neon_abd_u16, i32, i32, i32)
-DEF_HELPER_2(neon_abd_s16, i32, i32, i32)
-DEF_HELPER_2(neon_abd_u32, i32, i32, i32)
-DEF_HELPER_2(neon_abd_s32, i32, i32, i32)
-
-DEF_HELPER_2(neon_shl_u8, i32, i32, i32)
-DEF_HELPER_2(neon_shl_s8, i32, i32, i32)
-DEF_HELPER_2(neon_shl_u16, i32, i32, i32)
-DEF_HELPER_2(neon_shl_s16, i32, i32, i32)
-DEF_HELPER_2(neon_shl_u32, i32, i32, i32)
-DEF_HELPER_2(neon_shl_s32, i32, i32, i32)
-DEF_HELPER_2(neon_shl_u64, i64, i64, i64)
-DEF_HELPER_2(neon_shl_s64, i64, i64, i64)
-DEF_HELPER_2(neon_rshl_u8, i32, i32, i32)
-DEF_HELPER_2(neon_rshl_s8, i32, i32, i32)
-DEF_HELPER_2(neon_rshl_u16, i32, i32, i32)
-DEF_HELPER_2(neon_rshl_s16, i32, i32, i32)
-DEF_HELPER_2(neon_rshl_u32, i32, i32, i32)
-DEF_HELPER_2(neon_rshl_s32, i32, i32, i32)
-DEF_HELPER_2(neon_rshl_u64, i64, i64, i64)
-DEF_HELPER_2(neon_rshl_s64, i64, i64, i64)
-DEF_HELPER_2(neon_qshl_u8, i32, i32, i32)
-DEF_HELPER_2(neon_qshl_s8, i32, i32, i32)
-DEF_HELPER_2(neon_qshl_u16, i32, i32, i32)
-DEF_HELPER_2(neon_qshl_s16, i32, i32, i32)
-DEF_HELPER_2(neon_qshl_u32, i32, i32, i32)
-DEF_HELPER_2(neon_qshl_s32, i32, i32, i32)
-DEF_HELPER_2(neon_qshl_u64, i64, i64, i64)
-DEF_HELPER_2(neon_qshl_s64, i64, i64, i64)
-DEF_HELPER_2(neon_qshlu_s8, i32, i32, i32);
-DEF_HELPER_2(neon_qshlu_s16, i32, i32, i32);
-DEF_HELPER_2(neon_qshlu_s32, i32, i32, i32);
-DEF_HELPER_2(neon_qshlu_s64, i64, i64, i64);
-DEF_HELPER_2(neon_qrshl_u8, i32, i32, i32)
-DEF_HELPER_2(neon_qrshl_s8, i32, i32, i32)
-DEF_HELPER_2(neon_qrshl_u16, i32, i32, i32)
-DEF_HELPER_2(neon_qrshl_s16, i32, i32, i32)
-DEF_HELPER_2(neon_qrshl_u32, i32, i32, i32)
-DEF_HELPER_2(neon_qrshl_s32, i32, i32, i32)
-DEF_HELPER_2(neon_qrshl_u64, i64, i64, i64)
-DEF_HELPER_2(neon_qrshl_s64, i64, i64, i64)
-
-DEF_HELPER_2(neon_add_u8, i32, i32, i32)
-DEF_HELPER_2(neon_add_u16, i32, i32, i32)
-DEF_HELPER_2(neon_padd_u8, i32, i32, i32)
-DEF_HELPER_2(neon_padd_u16, i32, i32, i32)
-DEF_HELPER_2(neon_sub_u8, i32, i32, i32)
-DEF_HELPER_2(neon_sub_u16, i32, i32, i32)
-DEF_HELPER_2(neon_mul_u8, i32, i32, i32)
-DEF_HELPER_2(neon_mul_u16, i32, i32, i32)
-DEF_HELPER_2(neon_mul_p8, i32, i32, i32)
-DEF_HELPER_2(neon_mull_p8, i64, i32, i32)
-
-DEF_HELPER_2(neon_tst_u8, i32, i32, i32)
-DEF_HELPER_2(neon_tst_u16, i32, i32, i32)
-DEF_HELPER_2(neon_tst_u32, i32, i32, i32)
-DEF_HELPER_2(neon_ceq_u8, i32, i32, i32)
-DEF_HELPER_2(neon_ceq_u16, i32, i32, i32)
-DEF_HELPER_2(neon_ceq_u32, i32, i32, i32)
-
-DEF_HELPER_1(neon_abs_s8, i32, i32)
-DEF_HELPER_1(neon_abs_s16, i32, i32)
-DEF_HELPER_1(neon_clz_u8, i32, i32)
-DEF_HELPER_1(neon_clz_u16, i32, i32)
-DEF_HELPER_1(neon_cls_s8, i32, i32)
-DEF_HELPER_1(neon_cls_s16, i32, i32)
-DEF_HELPER_1(neon_cls_s32, i32, i32)
-DEF_HELPER_1(neon_cnt_u8, i32, i32)
-
-DEF_HELPER_2(neon_qdmulh_s16, i32, i32, i32)
-DEF_HELPER_2(neon_qrdmulh_s16, i32, i32, i32)
-DEF_HELPER_2(neon_qdmulh_s32, i32, i32, i32)
-DEF_HELPER_2(neon_qrdmulh_s32, i32, i32, i32)
-
-DEF_HELPER_1(neon_narrow_u8, i32, i64)
-DEF_HELPER_1(neon_narrow_u16, i32, i64)
-DEF_HELPER_1(neon_unarrow_sat8, i32, i64)
-DEF_HELPER_1(neon_narrow_sat_u8, i32, i64)
-DEF_HELPER_1(neon_narrow_sat_s8, i32, i64)
-DEF_HELPER_1(neon_unarrow_sat16, i32, i64)
-DEF_HELPER_1(neon_narrow_sat_u16, i32, i64)
-DEF_HELPER_1(neon_narrow_sat_s16, i32, i64)
-DEF_HELPER_1(neon_unarrow_sat32, i32, i64)
-DEF_HELPER_1(neon_narrow_sat_u32, i32, i64)
-DEF_HELPER_1(neon_narrow_sat_s32, i32, i64)
-DEF_HELPER_1(neon_narrow_high_u8, i32, i64)
-DEF_HELPER_1(neon_narrow_high_u16, i32, i64)
-DEF_HELPER_1(neon_narrow_round_high_u8, i32, i64)
-DEF_HELPER_1(neon_narrow_round_high_u16, i32, i64)
-DEF_HELPER_1(neon_widen_u8, i64, i32)
-DEF_HELPER_1(neon_widen_s8, i64, i32)
-DEF_HELPER_1(neon_widen_u16, i64, i32)
-DEF_HELPER_1(neon_widen_s16, i64, i32)
-
-DEF_HELPER_2(neon_addl_u16, i64, i64, i64)
-DEF_HELPER_2(neon_addl_u32, i64, i64, i64)
-DEF_HELPER_2(neon_paddl_u16, i64, i64, i64)
-DEF_HELPER_2(neon_paddl_u32, i64, i64, i64)
-DEF_HELPER_2(neon_subl_u16, i64, i64, i64)
-DEF_HELPER_2(neon_subl_u32, i64, i64, i64)
-DEF_HELPER_2(neon_addl_saturate_s32, i64, i64, i64)
-DEF_HELPER_2(neon_addl_saturate_s64, i64, i64, i64)
-DEF_HELPER_2(neon_abdl_u16, i64, i32, i32)
-DEF_HELPER_2(neon_abdl_s16, i64, i32, i32)
-DEF_HELPER_2(neon_abdl_u32, i64, i32, i32)
-DEF_HELPER_2(neon_abdl_s32, i64, i32, i32)
-DEF_HELPER_2(neon_abdl_u64, i64, i32, i32)
-DEF_HELPER_2(neon_abdl_s64, i64, i32, i32)
-DEF_HELPER_2(neon_mull_u8, i64, i32, i32)
-DEF_HELPER_2(neon_mull_s8, i64, i32, i32)
-DEF_HELPER_2(neon_mull_u16, i64, i32, i32)
-DEF_HELPER_2(neon_mull_s16, i64, i32, i32)
-
-DEF_HELPER_1(neon_negl_u16, i64, i64)
-DEF_HELPER_1(neon_negl_u32, i64, i64)
-DEF_HELPER_1(neon_negl_u64, i64, i64)
-
-DEF_HELPER_1(neon_qabs_s8, i32, i32)
-DEF_HELPER_1(neon_qabs_s16, i32, i32)
-DEF_HELPER_1(neon_qabs_s32, i32, i32)
-DEF_HELPER_1(neon_qneg_s8, i32, i32)
-DEF_HELPER_1(neon_qneg_s16, i32, i32)
-DEF_HELPER_1(neon_qneg_s32, i32, i32)
-
-DEF_HELPER_2(neon_min_f32, i32, i32, i32)
-DEF_HELPER_2(neon_max_f32, i32, i32, i32)
-DEF_HELPER_2(neon_abd_f32, i32, i32, i32)
-DEF_HELPER_2(neon_add_f32, i32, i32, i32)
-DEF_HELPER_2(neon_sub_f32, i32, i32, i32)
-DEF_HELPER_2(neon_mul_f32, i32, i32, i32)
-DEF_HELPER_2(neon_ceq_f32, i32, i32, i32)
-DEF_HELPER_2(neon_cge_f32, i32, i32, i32)
-DEF_HELPER_2(neon_cgt_f32, i32, i32, i32)
-DEF_HELPER_2(neon_acge_f32, i32, i32, i32)
-DEF_HELPER_2(neon_acgt_f32, i32, i32, i32)
-
-/* iwmmxt_helper.c */
-DEF_HELPER_2(iwmmxt_maddsq, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_madduq, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_sadb, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_sadw, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_mulslw, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_mulshw, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_mululw, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_muluhw, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_macsw, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_macuw, i64, i64, i64)
-DEF_HELPER_1(iwmmxt_setpsr_nz, i32, i64)
-
-#define DEF_IWMMXT_HELPER_SIZE(name) \
-DEF_HELPER_2(iwmmxt_##name##b, i64, i64, i64) \
-DEF_HELPER_2(iwmmxt_##name##w, i64, i64, i64) \
-DEF_HELPER_2(iwmmxt_##name##l, i64, i64, i64) \
-
-DEF_IWMMXT_HELPER_SIZE(unpackl)
-DEF_IWMMXT_HELPER_SIZE(unpackh)
-
-DEF_HELPER_1(iwmmxt_unpacklub, i64, i64)
-DEF_HELPER_1(iwmmxt_unpackluw, i64, i64)
-DEF_HELPER_1(iwmmxt_unpacklul, i64, i64)
-DEF_HELPER_1(iwmmxt_unpackhub, i64, i64)
-DEF_HELPER_1(iwmmxt_unpackhuw, i64, i64)
-DEF_HELPER_1(iwmmxt_unpackhul, i64, i64)
-DEF_HELPER_1(iwmmxt_unpacklsb, i64, i64)
-DEF_HELPER_1(iwmmxt_unpacklsw, i64, i64)
-DEF_HELPER_1(iwmmxt_unpacklsl, i64, i64)
-DEF_HELPER_1(iwmmxt_unpackhsb, i64, i64)
-DEF_HELPER_1(iwmmxt_unpackhsw, i64, i64)
-DEF_HELPER_1(iwmmxt_unpackhsl, i64, i64)
-
-DEF_IWMMXT_HELPER_SIZE(cmpeq)
-DEF_IWMMXT_HELPER_SIZE(cmpgtu)
-DEF_IWMMXT_HELPER_SIZE(cmpgts)
-
-DEF_IWMMXT_HELPER_SIZE(mins)
-DEF_IWMMXT_HELPER_SIZE(minu)
-DEF_IWMMXT_HELPER_SIZE(maxs)
-DEF_IWMMXT_HELPER_SIZE(maxu)
-
-DEF_IWMMXT_HELPER_SIZE(subn)
-DEF_IWMMXT_HELPER_SIZE(addn)
-DEF_IWMMXT_HELPER_SIZE(subu)
-DEF_IWMMXT_HELPER_SIZE(addu)
-DEF_IWMMXT_HELPER_SIZE(subs)
-DEF_IWMMXT_HELPER_SIZE(adds)
-
-DEF_HELPER_2(iwmmxt_avgb0, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_avgb1, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_avgw0, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_avgw1, i64, i64, i64)
-
-DEF_HELPER_2(iwmmxt_msadb, i64, i64, i64)
-
-DEF_HELPER_3(iwmmxt_align, i64, i64, i64, i32)
-DEF_HELPER_4(iwmmxt_insr, i64, i64, i32, i32, i32)
-
-DEF_HELPER_1(iwmmxt_bcstb, i64, i32)
-DEF_HELPER_1(iwmmxt_bcstw, i64, i32)
-DEF_HELPER_1(iwmmxt_bcstl, i64, i32)
-
-DEF_HELPER_1(iwmmxt_addcb, i64, i64)
-DEF_HELPER_1(iwmmxt_addcw, i64, i64)
-DEF_HELPER_1(iwmmxt_addcl, i64, i64)
-
-DEF_HELPER_1(iwmmxt_msbb, i32, i64)
-DEF_HELPER_1(iwmmxt_msbw, i32, i64)
-DEF_HELPER_1(iwmmxt_msbl, i32, i64)
-
-DEF_HELPER_2(iwmmxt_srlw, i64, i64, i32)
-DEF_HELPER_2(iwmmxt_srll, i64, i64, i32)
-DEF_HELPER_2(iwmmxt_srlq, i64, i64, i32)
-DEF_HELPER_2(iwmmxt_sllw, i64, i64, i32)
-DEF_HELPER_2(iwmmxt_slll, i64, i64, i32)
-DEF_HELPER_2(iwmmxt_sllq, i64, i64, i32)
-DEF_HELPER_2(iwmmxt_sraw, i64, i64, i32)
-DEF_HELPER_2(iwmmxt_sral, i64, i64, i32)
-DEF_HELPER_2(iwmmxt_sraq, i64, i64, i32)
-DEF_HELPER_2(iwmmxt_rorw, i64, i64, i32)
-DEF_HELPER_2(iwmmxt_rorl, i64, i64, i32)
-DEF_HELPER_2(iwmmxt_rorq, i64, i64, i32)
-DEF_HELPER_2(iwmmxt_shufh, i64, i64, i32)
-
-DEF_HELPER_2(iwmmxt_packuw, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_packul, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_packuq, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_packsw, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_packsl, i64, i64, i64)
-DEF_HELPER_2(iwmmxt_packsq, i64, i64, i64)
-
-DEF_HELPER_3(iwmmxt_muladdsl, i64, i64, i32, i32)
-DEF_HELPER_3(iwmmxt_muladdsw, i64, i64, i32, i32)
-DEF_HELPER_3(iwmmxt_muladdswl, i64, i64, i32, i32)
-
-DEF_HELPER_2(set_teecr, void, env, i32)
-
-DEF_HELPER_2(neon_unzip8, void, i32, i32)
-DEF_HELPER_2(neon_unzip16, void, i32, i32)
-DEF_HELPER_2(neon_qunzip8, void, i32, i32)
-DEF_HELPER_2(neon_qunzip16, void, i32, i32)
-DEF_HELPER_2(neon_qunzip32, void, i32, i32)
-DEF_HELPER_2(neon_zip8, void, i32, i32)
-DEF_HELPER_2(neon_zip16, void, i32, i32)
-DEF_HELPER_2(neon_qzip8, void, i32, i32)
-DEF_HELPER_2(neon_qzip16, void, i32, i32)
-DEF_HELPER_2(neon_qzip32, void, i32, i32)
-
-#include "def-helper.h"
diff --git a/target-arm/iwmmxt_helper.c b/target-arm/iwmmxt_helper.c
index b13ffc7..b81e4a5 100644
--- a/target-arm/iwmmxt_helper.c
+++ b/target-arm/iwmmxt_helper.c
@@ -24,7 +24,7 @@
#include "cpu.h"
#include "exec.h"
-#include "helpers.h"
+#include "helper.h"
/* iwMMXt macros extracted from GNU gdb. */
diff --git a/target-arm/neon_helper.c b/target-arm/neon_helper.c
index c3ac96a..cd3b908 100644
--- a/target-arm/neon_helper.c
+++ b/target-arm/neon_helper.c
@@ -11,7 +11,7 @@
#include "cpu.h"
#include "exec.h"
-#include "helpers.h"
+#include "helper.h"
#define SIGNBIT (uint32_t)0x80000000
#define SIGNBIT64 ((uint64_t)1 << 63)
diff --git a/target-arm/op_helper.c b/target-arm/op_helper.c
index 3de2610..ee7286b 100644
--- a/target-arm/op_helper.c
+++ b/target-arm/op_helper.c
@@ -17,7 +17,7 @@
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
#include "exec.h"
-#include "helpers.h"
+#include "helper.h"
#define SIGNBIT (uint32_t)0x80000000
#define SIGNBIT64 ((uint64_t)1 << 63)
diff --git a/target-arm/translate.c b/target-arm/translate.c
index cf59d63..b401a76 100644
--- a/target-arm/translate.c
+++ b/target-arm/translate.c
@@ -30,9 +30,9 @@
#include "tcg-op.h"
#include "qemu-log.h"
-#include "helpers.h"
+#include "helper.h"
#define GEN_HELPER 1
-#include "helpers.h"
+#include "helper.h"
#define ENABLE_ARCH_4T arm_feature(env, ARM_FEATURE_V4T)
#define ENABLE_ARCH_5 arm_feature(env, ARM_FEATURE_V5)
@@ -129,7 +129,7 @@ void arm_translate_init(void)
#endif
#define GEN_HELPER 2
-#include "helpers.h"
+#include "helper.h"
}
static inline TCGv load_cpu_offset(int offset)
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH 3/4] [m68k] trivial whitespace/indentation fixes
2011-04-13 16:38 [Qemu-devel] [PATCH 1/4] [arm] trivial whitespace/indentation fixes Lluís
2011-04-13 16:38 ` [Qemu-devel] [PATCH 2/4] [arm] move helpers.h to helper.h Lluís
@ 2011-04-13 16:38 ` Lluís
2011-04-13 16:38 ` [Qemu-devel] [PATCH 4/4] [m68k] move helpers.h to helper.h Lluís
2011-04-13 17:16 ` [Qemu-devel] [PATCH 1/4] [arm] trivial whitespace/indentation fixes Peter Maydell
3 siblings, 0 replies; 9+ messages in thread
From: Lluís @ 2011-04-13 16:38 UTC (permalink / raw)
To: qemu-devel; +Cc: aurelien
Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
---
target-m68k/translate.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/target-m68k/translate.c b/target-m68k/translate.c
index 038c0af..15a650e 100644
--- a/target-m68k/translate.c
+++ b/target-m68k/translate.c
@@ -3022,7 +3022,7 @@ gen_intermediate_code_internal(CPUState *env, TranslationBlock *tb,
if (num_insns + 1 == max_insns && (tb->cflags & CF_LAST_IO))
gen_io_start();
dc->insn_pc = dc->pc;
- disas_m68k_insn(env, dc);
+ disas_m68k_insn(env, dc);
num_insns++;
} while (!dc->is_jmp && gen_opc_ptr < gen_opc_end &&
!env->singlestep_enabled &&
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH 4/4] [m68k] move helpers.h to helper.h
2011-04-13 16:38 [Qemu-devel] [PATCH 1/4] [arm] trivial whitespace/indentation fixes Lluís
2011-04-13 16:38 ` [Qemu-devel] [PATCH 2/4] [arm] move helpers.h to helper.h Lluís
2011-04-13 16:38 ` [Qemu-devel] [PATCH 3/4] [m68k] trivial whitespace/indentation fixes Lluís
@ 2011-04-13 16:38 ` Lluís
2011-04-13 17:16 ` [Qemu-devel] [PATCH 1/4] [arm] trivial whitespace/indentation fixes Peter Maydell
3 siblings, 0 replies; 9+ messages in thread
From: Lluís @ 2011-04-13 16:38 UTC (permalink / raw)
To: qemu-devel; +Cc: aurelien
This provides a consistent naming scheme across all targets.
Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
---
target-m68k/helper.c | 2 +-
target-m68k/helper.h | 54 +++++++++++++++++++++++++++++++++++++++++++++++
target-m68k/helpers.h | 54 -----------------------------------------------
target-m68k/op_helper.c | 2 +-
target-m68k/translate.c | 6 +++--
5 files changed, 59 insertions(+), 59 deletions(-)
create mode 100644 target-m68k/helper.h
delete mode 100644 target-m68k/helpers.h
diff --git a/target-m68k/helper.c b/target-m68k/helper.c
index 514b039..6dc275a 100644
--- a/target-m68k/helper.c
+++ b/target-m68k/helper.c
@@ -27,7 +27,7 @@
#include "qemu-common.h"
#include "gdbstub.h"
-#include "helpers.h"
+#include "helper.h"
#define SIGNBIT (1u << 31)
diff --git a/target-m68k/helper.h b/target-m68k/helper.h
new file mode 100644
index 0000000..cb8a0c7
--- /dev/null
+++ b/target-m68k/helper.h
@@ -0,0 +1,54 @@
+#include "def-helper.h"
+
+DEF_HELPER_1(bitrev, i32, i32)
+DEF_HELPER_1(ff1, i32, i32)
+DEF_HELPER_2(sats, i32, i32, i32)
+DEF_HELPER_2(divu, void, env, i32)
+DEF_HELPER_2(divs, void, env, i32)
+DEF_HELPER_3(addx_cc, i32, env, i32, i32)
+DEF_HELPER_3(subx_cc, i32, env, i32, i32)
+DEF_HELPER_3(shl_cc, i32, env, i32, i32)
+DEF_HELPER_3(shr_cc, i32, env, i32, i32)
+DEF_HELPER_3(sar_cc, i32, env, i32, i32)
+DEF_HELPER_2(xflag_lt, i32, i32, i32)
+DEF_HELPER_2(set_sr, void, env, i32)
+DEF_HELPER_3(movec, void, env, i32, i32)
+
+DEF_HELPER_2(f64_to_i32, f32, env, f64)
+DEF_HELPER_2(f64_to_f32, f32, env, f64)
+DEF_HELPER_2(i32_to_f64, f64, env, i32)
+DEF_HELPER_2(f32_to_f64, f64, env, f32)
+DEF_HELPER_2(iround_f64, f64, env, f64)
+DEF_HELPER_2(itrunc_f64, f64, env, f64)
+DEF_HELPER_2(sqrt_f64, f64, env, f64)
+DEF_HELPER_1(abs_f64, f64, f64)
+DEF_HELPER_1(chs_f64, f64, f64)
+DEF_HELPER_3(add_f64, f64, env, f64, f64)
+DEF_HELPER_3(sub_f64, f64, env, f64, f64)
+DEF_HELPER_3(mul_f64, f64, env, f64, f64)
+DEF_HELPER_3(div_f64, f64, env, f64, f64)
+DEF_HELPER_3(sub_cmp_f64, f64, env, f64, f64)
+DEF_HELPER_2(compare_f64, i32, env, f64)
+
+DEF_HELPER_3(mac_move, void, env, i32, i32)
+DEF_HELPER_3(macmulf, i64, env, i32, i32)
+DEF_HELPER_3(macmuls, i64, env, i32, i32)
+DEF_HELPER_3(macmulu, i64, env, i32, i32)
+DEF_HELPER_2(macsats, void, env, i32)
+DEF_HELPER_2(macsatu, void, env, i32)
+DEF_HELPER_2(macsatf, void, env, i32)
+DEF_HELPER_2(mac_set_flags, void, env, i32)
+DEF_HELPER_2(set_macsr, void, env, i32)
+DEF_HELPER_2(get_macf, i32, env, i64)
+DEF_HELPER_1(get_macs, i32, i64)
+DEF_HELPER_1(get_macu, i32, i64)
+DEF_HELPER_2(get_mac_extf, i32, env, i32)
+DEF_HELPER_2(get_mac_exti, i32, env, i32)
+DEF_HELPER_3(set_mac_extf, void, env, i32, i32)
+DEF_HELPER_3(set_mac_exts, void, env, i32, i32)
+DEF_HELPER_3(set_mac_extu, void, env, i32, i32)
+
+DEF_HELPER_2(flush_flags, void, env, i32)
+DEF_HELPER_1(raise_exception, void, i32)
+
+#include "def-helper.h"
diff --git a/target-m68k/helpers.h b/target-m68k/helpers.h
deleted file mode 100644
index cb8a0c7..0000000
--- a/target-m68k/helpers.h
+++ /dev/null
@@ -1,54 +0,0 @@
-#include "def-helper.h"
-
-DEF_HELPER_1(bitrev, i32, i32)
-DEF_HELPER_1(ff1, i32, i32)
-DEF_HELPER_2(sats, i32, i32, i32)
-DEF_HELPER_2(divu, void, env, i32)
-DEF_HELPER_2(divs, void, env, i32)
-DEF_HELPER_3(addx_cc, i32, env, i32, i32)
-DEF_HELPER_3(subx_cc, i32, env, i32, i32)
-DEF_HELPER_3(shl_cc, i32, env, i32, i32)
-DEF_HELPER_3(shr_cc, i32, env, i32, i32)
-DEF_HELPER_3(sar_cc, i32, env, i32, i32)
-DEF_HELPER_2(xflag_lt, i32, i32, i32)
-DEF_HELPER_2(set_sr, void, env, i32)
-DEF_HELPER_3(movec, void, env, i32, i32)
-
-DEF_HELPER_2(f64_to_i32, f32, env, f64)
-DEF_HELPER_2(f64_to_f32, f32, env, f64)
-DEF_HELPER_2(i32_to_f64, f64, env, i32)
-DEF_HELPER_2(f32_to_f64, f64, env, f32)
-DEF_HELPER_2(iround_f64, f64, env, f64)
-DEF_HELPER_2(itrunc_f64, f64, env, f64)
-DEF_HELPER_2(sqrt_f64, f64, env, f64)
-DEF_HELPER_1(abs_f64, f64, f64)
-DEF_HELPER_1(chs_f64, f64, f64)
-DEF_HELPER_3(add_f64, f64, env, f64, f64)
-DEF_HELPER_3(sub_f64, f64, env, f64, f64)
-DEF_HELPER_3(mul_f64, f64, env, f64, f64)
-DEF_HELPER_3(div_f64, f64, env, f64, f64)
-DEF_HELPER_3(sub_cmp_f64, f64, env, f64, f64)
-DEF_HELPER_2(compare_f64, i32, env, f64)
-
-DEF_HELPER_3(mac_move, void, env, i32, i32)
-DEF_HELPER_3(macmulf, i64, env, i32, i32)
-DEF_HELPER_3(macmuls, i64, env, i32, i32)
-DEF_HELPER_3(macmulu, i64, env, i32, i32)
-DEF_HELPER_2(macsats, void, env, i32)
-DEF_HELPER_2(macsatu, void, env, i32)
-DEF_HELPER_2(macsatf, void, env, i32)
-DEF_HELPER_2(mac_set_flags, void, env, i32)
-DEF_HELPER_2(set_macsr, void, env, i32)
-DEF_HELPER_2(get_macf, i32, env, i64)
-DEF_HELPER_1(get_macs, i32, i64)
-DEF_HELPER_1(get_macu, i32, i64)
-DEF_HELPER_2(get_mac_extf, i32, env, i32)
-DEF_HELPER_2(get_mac_exti, i32, env, i32)
-DEF_HELPER_3(set_mac_extf, void, env, i32, i32)
-DEF_HELPER_3(set_mac_exts, void, env, i32, i32)
-DEF_HELPER_3(set_mac_extu, void, env, i32, i32)
-
-DEF_HELPER_2(flush_flags, void, env, i32)
-DEF_HELPER_1(raise_exception, void, i32)
-
-#include "def-helper.h"
diff --git a/target-m68k/op_helper.c b/target-m68k/op_helper.c
index 0711107..c0698ff 100644
--- a/target-m68k/op_helper.c
+++ b/target-m68k/op_helper.c
@@ -17,7 +17,7 @@
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
#include "exec.h"
-#include "helpers.h"
+#include "helper.h"
#if defined(CONFIG_USER_ONLY)
diff --git a/target-m68k/translate.c b/target-m68k/translate.c
index 15a650e..8c424db 100644
--- a/target-m68k/translate.c
+++ b/target-m68k/translate.c
@@ -30,9 +30,9 @@
#include "tcg-op.h"
#include "qemu-log.h"
-#include "helpers.h"
+#include "helper.h"
#define GEN_HELPER 1
-#include "helpers.h"
+#include "helper.h"
//#define DEBUG_DISPATCH 1
@@ -111,7 +111,7 @@ void m68k_tcg_init(void)
store_dummy = tcg_global_mem_new(TCG_AREG0, -8, "NULL");
#define GEN_HELPER 2
-#include "helpers.h"
+#include "helper.h"
}
static inline void qemu_assert(int cond, const char *msg)
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PATCH 1/4] [arm] trivial whitespace/indentation fixes
2011-04-13 16:38 [Qemu-devel] [PATCH 1/4] [arm] trivial whitespace/indentation fixes Lluís
` (2 preceding siblings ...)
2011-04-13 16:38 ` [Qemu-devel] [PATCH 4/4] [m68k] move helpers.h to helper.h Lluís
@ 2011-04-13 17:16 ` Peter Maydell
2011-04-13 18:34 ` Aurelien Jarno
3 siblings, 1 reply; 9+ messages in thread
From: Peter Maydell @ 2011-04-13 17:16 UTC (permalink / raw)
To: Lluís; +Cc: qemu-devel, aurelien
On 13 April 2011 17:38, Lluís <xscript@gmx.net> wrote:
> Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
> ---
> target-arm/helper.c | 246 ++++++++++++++++++++++----------------------
> target-arm/iwmmxt_helper.c | 28 +++--
> target-arm/translate.c | 26 ++---
> 3 files changed, 150 insertions(+), 150 deletions(-)
My preference is not to do large-scale whitespace changes
unless the code's being touched in that area anyway, so
I'd prefer this not to be applied.
(They make things painful for forks and branches, and
they make git blame less useful; disadvantages outweigh
the minor benefits of the cleanup IMHO.)
-- PMM
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PATCH 1/4] [arm] trivial whitespace/indentation fixes
2011-04-13 17:16 ` [Qemu-devel] [PATCH 1/4] [arm] trivial whitespace/indentation fixes Peter Maydell
@ 2011-04-13 18:34 ` Aurelien Jarno
2011-04-13 20:06 ` Lluís
2011-04-13 20:09 ` Lluís
0 siblings, 2 replies; 9+ messages in thread
From: Aurelien Jarno @ 2011-04-13 18:34 UTC (permalink / raw)
To: Peter Maydell; +Cc: Lluís, qemu-devel
On Wed, Apr 13, 2011 at 06:16:55PM +0100, Peter Maydell wrote:
> On 13 April 2011 17:38, Lluís <xscript@gmx.net> wrote:
> > Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
> > ---
> > target-arm/helper.c | 246 ++++++++++++++++++++++----------------------
> > target-arm/iwmmxt_helper.c | 28 +++--
> > target-arm/translate.c | 26 ++---
> > 3 files changed, 150 insertions(+), 150 deletions(-)
>
> My preference is not to do large-scale whitespace changes
> unless the code's being touched in that area anyway, so
> I'd prefer this not to be applied.
>
> (They make things painful for forks and branches, and
> they make git blame less useful; disadvantages outweigh
> the minor benefits of the cleanup IMHO.)
>
I agree that this patch should not be applied.
--
Aurelien Jarno GPG: 1024D/F1BCDB73
aurelien@aurel32.net http://www.aurel32.net
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PATCH 1/4] [arm] trivial whitespace/indentation fixes
2011-04-13 18:34 ` Aurelien Jarno
@ 2011-04-13 20:06 ` Lluís
2011-04-13 20:09 ` Lluís
1 sibling, 0 replies; 9+ messages in thread
From: Lluís @ 2011-04-13 20:06 UTC (permalink / raw)
To: qemu-devel
Aurelien Jarno writes:
> On Wed, Apr 13, 2011 at 06:16:55PM +0100, Peter Maydell wrote:
>> On 13 April 2011 17:38, Lluís <xscript@gmx.net> wrote:
>> > Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
>> > ---
>> > target-arm/helper.c | 246 ++++++++++++++++++++++----------------------
>> > target-arm/iwmmxt_helper.c | 28 +++--
>> > target-arm/translate.c | 26 ++---
>> > 3 files changed, 150 insertions(+), 150 deletions(-)
>>
>> My preference is not to do large-scale whitespace changes
>> unless the code's being touched in that area anyway, so
>> I'd prefer this not to be applied.
>>
>> (They make things painful for forks and branches, and
>> they make git blame less useful; disadvantages outweigh
>> the minor benefits of the cleanup IMHO.)
>>
> I agree that this patch should not be applied.
Damned the day I decided to setup automatic whitespace and indentation
cleanup on my editor :)
Lluis
--
"And it's much the same thing with knowledge, for whenever you learn
something new, the whole world becomes that much richer."
-- The Princess of Pure Reason, as told by Norton Juster in The Phantom
Tollbooth
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PATCH 1/4] [arm] trivial whitespace/indentation fixes
2011-04-13 18:34 ` Aurelien Jarno
2011-04-13 20:06 ` Lluís
@ 2011-04-13 20:09 ` Lluís
1 sibling, 0 replies; 9+ messages in thread
From: Lluís @ 2011-04-13 20:09 UTC (permalink / raw)
To: qemu-devel; +Cc: Aurelien Jarno
Aurelien Jarno writes:
> On Wed, Apr 13, 2011 at 06:16:55PM +0100, Peter Maydell wrote:
>> On 13 April 2011 17:38, Lluís <xscript@gmx.net> wrote:
>> > Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
>> > ---
>> > target-arm/helper.c | 246 ++++++++++++++++++++++----------------------
>> > target-arm/iwmmxt_helper.c | 28 +++--
>> > target-arm/translate.c | 26 ++---
>> > 3 files changed, 150 insertions(+), 150 deletions(-)
>>
>> My preference is not to do large-scale whitespace changes
>> unless the code's being touched in that area anyway, so
>> I'd prefer this not to be applied.
>>
>> (They make things painful for forks and branches, and
>> they make git blame less useful; disadvantages outweigh
>> the minor benefits of the cleanup IMHO.)
>>
> I agree that this patch should not be applied.
BTW, the next patch applies nicely without this one, so I'm assuming you
don't need me to re-send anything.
Lluis
--
"And it's much the same thing with knowledge, for whenever you learn
something new, the whole world becomes that much richer."
-- The Princess of Pure Reason, as told by Norton Juster in The Phantom
Tollbooth
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PATCH 2/4] [arm] move helpers.h to helper.h
2011-04-13 16:38 ` [Qemu-devel] [PATCH 2/4] [arm] move helpers.h to helper.h Lluís
@ 2011-04-18 19:18 ` Aurelien Jarno
0 siblings, 0 replies; 9+ messages in thread
From: Aurelien Jarno @ 2011-04-18 19:18 UTC (permalink / raw)
To: Lluís; +Cc: qemu-devel
On Wed, Apr 13, 2011 at 06:38:24PM +0200, Lluís wrote:
> This provides a consistent naming scheme across all targets.
>
> Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
> ---
> target-arm/helper.c | 2
> target-arm/helper.h | 475 ++++++++++++++++++++++++++++++++++++++++++++
> target-arm/helpers.h | 475 --------------------------------------------
> target-arm/iwmmxt_helper.c | 2
> target-arm/neon_helper.c | 2
> target-arm/op_helper.c | 2
> target-arm/translate.c | 6 -
> 7 files changed, 482 insertions(+), 482 deletions(-)
> create mode 100644 target-arm/helper.h
> delete mode 100644 target-arm/helpers.h
Thanks, applied.
> diff --git a/target-arm/helper.c b/target-arm/helper.c
> index d2e0bf4..2adf3ca 100644
> --- a/target-arm/helper.c
> +++ b/target-arm/helper.c
> @@ -5,7 +5,7 @@
> #include "cpu.h"
> #include "exec-all.h"
> #include "gdbstub.h"
> -#include "helpers.h"
> +#include "helper.h"
> #include "qemu-common.h"
> #include "host-utils.h"
> #if !defined(CONFIG_USER_ONLY)
> diff --git a/target-arm/helper.h b/target-arm/helper.h
> new file mode 100644
> index 0000000..ae701e8
> --- /dev/null
> +++ b/target-arm/helper.h
> @@ -0,0 +1,475 @@
> +#include "def-helper.h"
> +
> +DEF_HELPER_1(clz, i32, i32)
> +DEF_HELPER_1(sxtb16, i32, i32)
> +DEF_HELPER_1(uxtb16, i32, i32)
> +
> +DEF_HELPER_2(add_setq, i32, i32, i32)
> +DEF_HELPER_2(add_saturate, i32, i32, i32)
> +DEF_HELPER_2(sub_saturate, i32, i32, i32)
> +DEF_HELPER_2(add_usaturate, i32, i32, i32)
> +DEF_HELPER_2(sub_usaturate, i32, i32, i32)
> +DEF_HELPER_1(double_saturate, i32, s32)
> +DEF_HELPER_2(sdiv, s32, s32, s32)
> +DEF_HELPER_2(udiv, i32, i32, i32)
> +DEF_HELPER_1(rbit, i32, i32)
> +DEF_HELPER_1(abs, i32, i32)
> +
> +#define PAS_OP(pfx) \
> + DEF_HELPER_3(pfx ## add8, i32, i32, i32, ptr) \
> + DEF_HELPER_3(pfx ## sub8, i32, i32, i32, ptr) \
> + DEF_HELPER_3(pfx ## sub16, i32, i32, i32, ptr) \
> + DEF_HELPER_3(pfx ## add16, i32, i32, i32, ptr) \
> + DEF_HELPER_3(pfx ## addsubx, i32, i32, i32, ptr) \
> + DEF_HELPER_3(pfx ## subaddx, i32, i32, i32, ptr)
> +
> +PAS_OP(s)
> +PAS_OP(u)
> +#undef PAS_OP
> +
> +#define PAS_OP(pfx) \
> + DEF_HELPER_2(pfx ## add8, i32, i32, i32) \
> + DEF_HELPER_2(pfx ## sub8, i32, i32, i32) \
> + DEF_HELPER_2(pfx ## sub16, i32, i32, i32) \
> + DEF_HELPER_2(pfx ## add16, i32, i32, i32) \
> + DEF_HELPER_2(pfx ## addsubx, i32, i32, i32) \
> + DEF_HELPER_2(pfx ## subaddx, i32, i32, i32)
> +PAS_OP(q)
> +PAS_OP(sh)
> +PAS_OP(uq)
> +PAS_OP(uh)
> +#undef PAS_OP
> +
> +DEF_HELPER_2(ssat, i32, i32, i32)
> +DEF_HELPER_2(usat, i32, i32, i32)
> +DEF_HELPER_2(ssat16, i32, i32, i32)
> +DEF_HELPER_2(usat16, i32, i32, i32)
> +
> +DEF_HELPER_2(usad8, i32, i32, i32)
> +
> +DEF_HELPER_1(logicq_cc, i32, i64)
> +
> +DEF_HELPER_3(sel_flags, i32, i32, i32, i32)
> +DEF_HELPER_1(exception, void, i32)
> +DEF_HELPER_0(wfi, void)
> +
> +DEF_HELPER_2(cpsr_write, void, i32, i32)
> +DEF_HELPER_0(cpsr_read, i32)
> +
> +DEF_HELPER_3(v7m_msr, void, env, i32, i32)
> +DEF_HELPER_2(v7m_mrs, i32, env, i32)
> +
> +DEF_HELPER_3(set_cp15, void, env, i32, i32)
> +DEF_HELPER_2(get_cp15, i32, env, i32)
> +
> +DEF_HELPER_3(set_cp, void, env, i32, i32)
> +DEF_HELPER_2(get_cp, i32, env, i32)
> +
> +DEF_HELPER_2(get_r13_banked, i32, env, i32)
> +DEF_HELPER_3(set_r13_banked, void, env, i32, i32)
> +
> +DEF_HELPER_1(get_user_reg, i32, i32)
> +DEF_HELPER_2(set_user_reg, void, i32, i32)
> +
> +DEF_HELPER_1(vfp_get_fpscr, i32, env)
> +DEF_HELPER_2(vfp_set_fpscr, void, env, i32)
> +
> +DEF_HELPER_3(vfp_adds, f32, f32, f32, env)
> +DEF_HELPER_3(vfp_addd, f64, f64, f64, env)
> +DEF_HELPER_3(vfp_subs, f32, f32, f32, env)
> +DEF_HELPER_3(vfp_subd, f64, f64, f64, env)
> +DEF_HELPER_3(vfp_muls, f32, f32, f32, env)
> +DEF_HELPER_3(vfp_muld, f64, f64, f64, env)
> +DEF_HELPER_3(vfp_divs, f32, f32, f32, env)
> +DEF_HELPER_3(vfp_divd, f64, f64, f64, env)
> +DEF_HELPER_1(vfp_negs, f32, f32)
> +DEF_HELPER_1(vfp_negd, f64, f64)
> +DEF_HELPER_1(vfp_abss, f32, f32)
> +DEF_HELPER_1(vfp_absd, f64, f64)
> +DEF_HELPER_2(vfp_sqrts, f32, f32, env)
> +DEF_HELPER_2(vfp_sqrtd, f64, f64, env)
> +DEF_HELPER_3(vfp_cmps, void, f32, f32, env)
> +DEF_HELPER_3(vfp_cmpd, void, f64, f64, env)
> +DEF_HELPER_3(vfp_cmpes, void, f32, f32, env)
> +DEF_HELPER_3(vfp_cmped, void, f64, f64, env)
> +
> +DEF_HELPER_2(vfp_fcvtds, f64, f32, env)
> +DEF_HELPER_2(vfp_fcvtsd, f32, f64, env)
> +
> +DEF_HELPER_2(vfp_uitos, f32, i32, env)
> +DEF_HELPER_2(vfp_uitod, f64, i32, env)
> +DEF_HELPER_2(vfp_sitos, f32, i32, env)
> +DEF_HELPER_2(vfp_sitod, f64, i32, env)
> +
> +DEF_HELPER_2(vfp_touis, i32, f32, env)
> +DEF_HELPER_2(vfp_touid, i32, f64, env)
> +DEF_HELPER_2(vfp_touizs, i32, f32, env)
> +DEF_HELPER_2(vfp_touizd, i32, f64, env)
> +DEF_HELPER_2(vfp_tosis, i32, f32, env)
> +DEF_HELPER_2(vfp_tosid, i32, f64, env)
> +DEF_HELPER_2(vfp_tosizs, i32, f32, env)
> +DEF_HELPER_2(vfp_tosizd, i32, f64, env)
> +
> +DEF_HELPER_3(vfp_toshs, i32, f32, i32, env)
> +DEF_HELPER_3(vfp_tosls, i32, f32, i32, env)
> +DEF_HELPER_3(vfp_touhs, i32, f32, i32, env)
> +DEF_HELPER_3(vfp_touls, i32, f32, i32, env)
> +DEF_HELPER_3(vfp_toshd, i64, f64, i32, env)
> +DEF_HELPER_3(vfp_tosld, i64, f64, i32, env)
> +DEF_HELPER_3(vfp_touhd, i64, f64, i32, env)
> +DEF_HELPER_3(vfp_tould, i64, f64, i32, env)
> +DEF_HELPER_3(vfp_shtos, f32, i32, i32, env)
> +DEF_HELPER_3(vfp_sltos, f32, i32, i32, env)
> +DEF_HELPER_3(vfp_uhtos, f32, i32, i32, env)
> +DEF_HELPER_3(vfp_ultos, f32, i32, i32, env)
> +DEF_HELPER_3(vfp_shtod, f64, i64, i32, env)
> +DEF_HELPER_3(vfp_sltod, f64, i64, i32, env)
> +DEF_HELPER_3(vfp_uhtod, f64, i64, i32, env)
> +DEF_HELPER_3(vfp_ultod, f64, i64, i32, env)
> +
> +DEF_HELPER_2(vfp_fcvt_f16_to_f32, f32, i32, env)
> +DEF_HELPER_2(vfp_fcvt_f32_to_f16, i32, f32, env)
> +DEF_HELPER_2(neon_fcvt_f16_to_f32, f32, i32, env)
> +DEF_HELPER_2(neon_fcvt_f32_to_f16, i32, f32, env)
> +
> +DEF_HELPER_3(recps_f32, f32, f32, f32, env)
> +DEF_HELPER_3(rsqrts_f32, f32, f32, f32, env)
> +DEF_HELPER_2(recpe_f32, f32, f32, env)
> +DEF_HELPER_2(rsqrte_f32, f32, f32, env)
> +DEF_HELPER_2(recpe_u32, i32, i32, env)
> +DEF_HELPER_2(rsqrte_u32, i32, i32, env)
> +DEF_HELPER_4(neon_tbl, i32, i32, i32, i32, i32)
> +
> +DEF_HELPER_2(add_cc, i32, i32, i32)
> +DEF_HELPER_2(adc_cc, i32, i32, i32)
> +DEF_HELPER_2(sub_cc, i32, i32, i32)
> +DEF_HELPER_2(sbc_cc, i32, i32, i32)
> +
> +DEF_HELPER_2(shl, i32, i32, i32)
> +DEF_HELPER_2(shr, i32, i32, i32)
> +DEF_HELPER_2(sar, i32, i32, i32)
> +DEF_HELPER_2(shl_cc, i32, i32, i32)
> +DEF_HELPER_2(shr_cc, i32, i32, i32)
> +DEF_HELPER_2(sar_cc, i32, i32, i32)
> +DEF_HELPER_2(ror_cc, i32, i32, i32)
> +
> +/* neon_helper.c */
> +DEF_HELPER_2(neon_qadd_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_qadd_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_qadd_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_qadd_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_qadd_u32, i32, i32, i32)
> +DEF_HELPER_2(neon_qadd_s32, i32, i32, i32)
> +DEF_HELPER_2(neon_qsub_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_qsub_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_qsub_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_qsub_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_qsub_u32, i32, i32, i32)
> +DEF_HELPER_2(neon_qsub_s32, i32, i32, i32)
> +DEF_HELPER_2(neon_qadd_u64, i64, i64, i64)
> +DEF_HELPER_2(neon_qadd_s64, i64, i64, i64)
> +DEF_HELPER_2(neon_qsub_u64, i64, i64, i64)
> +DEF_HELPER_2(neon_qsub_s64, i64, i64, i64)
> +
> +DEF_HELPER_2(neon_hadd_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_hadd_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_hadd_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_hadd_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_hadd_s32, s32, s32, s32)
> +DEF_HELPER_2(neon_hadd_u32, i32, i32, i32)
> +DEF_HELPER_2(neon_rhadd_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_rhadd_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_rhadd_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_rhadd_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_rhadd_s32, s32, s32, s32)
> +DEF_HELPER_2(neon_rhadd_u32, i32, i32, i32)
> +DEF_HELPER_2(neon_hsub_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_hsub_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_hsub_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_hsub_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_hsub_s32, s32, s32, s32)
> +DEF_HELPER_2(neon_hsub_u32, i32, i32, i32)
> +
> +DEF_HELPER_2(neon_cgt_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_cgt_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_cgt_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_cgt_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_cgt_u32, i32, i32, i32)
> +DEF_HELPER_2(neon_cgt_s32, i32, i32, i32)
> +DEF_HELPER_2(neon_cge_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_cge_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_cge_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_cge_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_cge_u32, i32, i32, i32)
> +DEF_HELPER_2(neon_cge_s32, i32, i32, i32)
> +
> +DEF_HELPER_2(neon_min_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_min_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_min_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_min_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_min_u32, i32, i32, i32)
> +DEF_HELPER_2(neon_min_s32, i32, i32, i32)
> +DEF_HELPER_2(neon_max_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_max_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_max_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_max_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_max_u32, i32, i32, i32)
> +DEF_HELPER_2(neon_max_s32, i32, i32, i32)
> +DEF_HELPER_2(neon_pmin_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_pmin_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_pmin_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_pmin_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_pmax_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_pmax_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_pmax_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_pmax_s16, i32, i32, i32)
> +
> +DEF_HELPER_2(neon_abd_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_abd_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_abd_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_abd_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_abd_u32, i32, i32, i32)
> +DEF_HELPER_2(neon_abd_s32, i32, i32, i32)
> +
> +DEF_HELPER_2(neon_shl_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_shl_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_shl_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_shl_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_shl_u32, i32, i32, i32)
> +DEF_HELPER_2(neon_shl_s32, i32, i32, i32)
> +DEF_HELPER_2(neon_shl_u64, i64, i64, i64)
> +DEF_HELPER_2(neon_shl_s64, i64, i64, i64)
> +DEF_HELPER_2(neon_rshl_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_rshl_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_rshl_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_rshl_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_rshl_u32, i32, i32, i32)
> +DEF_HELPER_2(neon_rshl_s32, i32, i32, i32)
> +DEF_HELPER_2(neon_rshl_u64, i64, i64, i64)
> +DEF_HELPER_2(neon_rshl_s64, i64, i64, i64)
> +DEF_HELPER_2(neon_qshl_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_qshl_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_qshl_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_qshl_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_qshl_u32, i32, i32, i32)
> +DEF_HELPER_2(neon_qshl_s32, i32, i32, i32)
> +DEF_HELPER_2(neon_qshl_u64, i64, i64, i64)
> +DEF_HELPER_2(neon_qshl_s64, i64, i64, i64)
> +DEF_HELPER_2(neon_qshlu_s8, i32, i32, i32);
> +DEF_HELPER_2(neon_qshlu_s16, i32, i32, i32);
> +DEF_HELPER_2(neon_qshlu_s32, i32, i32, i32);
> +DEF_HELPER_2(neon_qshlu_s64, i64, i64, i64);
> +DEF_HELPER_2(neon_qrshl_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_qrshl_s8, i32, i32, i32)
> +DEF_HELPER_2(neon_qrshl_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_qrshl_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_qrshl_u32, i32, i32, i32)
> +DEF_HELPER_2(neon_qrshl_s32, i32, i32, i32)
> +DEF_HELPER_2(neon_qrshl_u64, i64, i64, i64)
> +DEF_HELPER_2(neon_qrshl_s64, i64, i64, i64)
> +
> +DEF_HELPER_2(neon_add_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_add_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_padd_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_padd_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_sub_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_sub_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_mul_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_mul_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_mul_p8, i32, i32, i32)
> +DEF_HELPER_2(neon_mull_p8, i64, i32, i32)
> +
> +DEF_HELPER_2(neon_tst_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_tst_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_tst_u32, i32, i32, i32)
> +DEF_HELPER_2(neon_ceq_u8, i32, i32, i32)
> +DEF_HELPER_2(neon_ceq_u16, i32, i32, i32)
> +DEF_HELPER_2(neon_ceq_u32, i32, i32, i32)
> +
> +DEF_HELPER_1(neon_abs_s8, i32, i32)
> +DEF_HELPER_1(neon_abs_s16, i32, i32)
> +DEF_HELPER_1(neon_clz_u8, i32, i32)
> +DEF_HELPER_1(neon_clz_u16, i32, i32)
> +DEF_HELPER_1(neon_cls_s8, i32, i32)
> +DEF_HELPER_1(neon_cls_s16, i32, i32)
> +DEF_HELPER_1(neon_cls_s32, i32, i32)
> +DEF_HELPER_1(neon_cnt_u8, i32, i32)
> +
> +DEF_HELPER_2(neon_qdmulh_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_qrdmulh_s16, i32, i32, i32)
> +DEF_HELPER_2(neon_qdmulh_s32, i32, i32, i32)
> +DEF_HELPER_2(neon_qrdmulh_s32, i32, i32, i32)
> +
> +DEF_HELPER_1(neon_narrow_u8, i32, i64)
> +DEF_HELPER_1(neon_narrow_u16, i32, i64)
> +DEF_HELPER_1(neon_unarrow_sat8, i32, i64)
> +DEF_HELPER_1(neon_narrow_sat_u8, i32, i64)
> +DEF_HELPER_1(neon_narrow_sat_s8, i32, i64)
> +DEF_HELPER_1(neon_unarrow_sat16, i32, i64)
> +DEF_HELPER_1(neon_narrow_sat_u16, i32, i64)
> +DEF_HELPER_1(neon_narrow_sat_s16, i32, i64)
> +DEF_HELPER_1(neon_unarrow_sat32, i32, i64)
> +DEF_HELPER_1(neon_narrow_sat_u32, i32, i64)
> +DEF_HELPER_1(neon_narrow_sat_s32, i32, i64)
> +DEF_HELPER_1(neon_narrow_high_u8, i32, i64)
> +DEF_HELPER_1(neon_narrow_high_u16, i32, i64)
> +DEF_HELPER_1(neon_narrow_round_high_u8, i32, i64)
> +DEF_HELPER_1(neon_narrow_round_high_u16, i32, i64)
> +DEF_HELPER_1(neon_widen_u8, i64, i32)
> +DEF_HELPER_1(neon_widen_s8, i64, i32)
> +DEF_HELPER_1(neon_widen_u16, i64, i32)
> +DEF_HELPER_1(neon_widen_s16, i64, i32)
> +
> +DEF_HELPER_2(neon_addl_u16, i64, i64, i64)
> +DEF_HELPER_2(neon_addl_u32, i64, i64, i64)
> +DEF_HELPER_2(neon_paddl_u16, i64, i64, i64)
> +DEF_HELPER_2(neon_paddl_u32, i64, i64, i64)
> +DEF_HELPER_2(neon_subl_u16, i64, i64, i64)
> +DEF_HELPER_2(neon_subl_u32, i64, i64, i64)
> +DEF_HELPER_2(neon_addl_saturate_s32, i64, i64, i64)
> +DEF_HELPER_2(neon_addl_saturate_s64, i64, i64, i64)
> +DEF_HELPER_2(neon_abdl_u16, i64, i32, i32)
> +DEF_HELPER_2(neon_abdl_s16, i64, i32, i32)
> +DEF_HELPER_2(neon_abdl_u32, i64, i32, i32)
> +DEF_HELPER_2(neon_abdl_s32, i64, i32, i32)
> +DEF_HELPER_2(neon_abdl_u64, i64, i32, i32)
> +DEF_HELPER_2(neon_abdl_s64, i64, i32, i32)
> +DEF_HELPER_2(neon_mull_u8, i64, i32, i32)
> +DEF_HELPER_2(neon_mull_s8, i64, i32, i32)
> +DEF_HELPER_2(neon_mull_u16, i64, i32, i32)
> +DEF_HELPER_2(neon_mull_s16, i64, i32, i32)
> +
> +DEF_HELPER_1(neon_negl_u16, i64, i64)
> +DEF_HELPER_1(neon_negl_u32, i64, i64)
> +DEF_HELPER_1(neon_negl_u64, i64, i64)
> +
> +DEF_HELPER_1(neon_qabs_s8, i32, i32)
> +DEF_HELPER_1(neon_qabs_s16, i32, i32)
> +DEF_HELPER_1(neon_qabs_s32, i32, i32)
> +DEF_HELPER_1(neon_qneg_s8, i32, i32)
> +DEF_HELPER_1(neon_qneg_s16, i32, i32)
> +DEF_HELPER_1(neon_qneg_s32, i32, i32)
> +
> +DEF_HELPER_2(neon_min_f32, i32, i32, i32)
> +DEF_HELPER_2(neon_max_f32, i32, i32, i32)
> +DEF_HELPER_2(neon_abd_f32, i32, i32, i32)
> +DEF_HELPER_2(neon_add_f32, i32, i32, i32)
> +DEF_HELPER_2(neon_sub_f32, i32, i32, i32)
> +DEF_HELPER_2(neon_mul_f32, i32, i32, i32)
> +DEF_HELPER_2(neon_ceq_f32, i32, i32, i32)
> +DEF_HELPER_2(neon_cge_f32, i32, i32, i32)
> +DEF_HELPER_2(neon_cgt_f32, i32, i32, i32)
> +DEF_HELPER_2(neon_acge_f32, i32, i32, i32)
> +DEF_HELPER_2(neon_acgt_f32, i32, i32, i32)
> +
> +/* iwmmxt_helper.c */
> +DEF_HELPER_2(iwmmxt_maddsq, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_madduq, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_sadb, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_sadw, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_mulslw, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_mulshw, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_mululw, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_muluhw, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_macsw, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_macuw, i64, i64, i64)
> +DEF_HELPER_1(iwmmxt_setpsr_nz, i32, i64)
> +
> +#define DEF_IWMMXT_HELPER_SIZE(name) \
> +DEF_HELPER_2(iwmmxt_##name##b, i64, i64, i64) \
> +DEF_HELPER_2(iwmmxt_##name##w, i64, i64, i64) \
> +DEF_HELPER_2(iwmmxt_##name##l, i64, i64, i64) \
> +
> +DEF_IWMMXT_HELPER_SIZE(unpackl)
> +DEF_IWMMXT_HELPER_SIZE(unpackh)
> +
> +DEF_HELPER_1(iwmmxt_unpacklub, i64, i64)
> +DEF_HELPER_1(iwmmxt_unpackluw, i64, i64)
> +DEF_HELPER_1(iwmmxt_unpacklul, i64, i64)
> +DEF_HELPER_1(iwmmxt_unpackhub, i64, i64)
> +DEF_HELPER_1(iwmmxt_unpackhuw, i64, i64)
> +DEF_HELPER_1(iwmmxt_unpackhul, i64, i64)
> +DEF_HELPER_1(iwmmxt_unpacklsb, i64, i64)
> +DEF_HELPER_1(iwmmxt_unpacklsw, i64, i64)
> +DEF_HELPER_1(iwmmxt_unpacklsl, i64, i64)
> +DEF_HELPER_1(iwmmxt_unpackhsb, i64, i64)
> +DEF_HELPER_1(iwmmxt_unpackhsw, i64, i64)
> +DEF_HELPER_1(iwmmxt_unpackhsl, i64, i64)
> +
> +DEF_IWMMXT_HELPER_SIZE(cmpeq)
> +DEF_IWMMXT_HELPER_SIZE(cmpgtu)
> +DEF_IWMMXT_HELPER_SIZE(cmpgts)
> +
> +DEF_IWMMXT_HELPER_SIZE(mins)
> +DEF_IWMMXT_HELPER_SIZE(minu)
> +DEF_IWMMXT_HELPER_SIZE(maxs)
> +DEF_IWMMXT_HELPER_SIZE(maxu)
> +
> +DEF_IWMMXT_HELPER_SIZE(subn)
> +DEF_IWMMXT_HELPER_SIZE(addn)
> +DEF_IWMMXT_HELPER_SIZE(subu)
> +DEF_IWMMXT_HELPER_SIZE(addu)
> +DEF_IWMMXT_HELPER_SIZE(subs)
> +DEF_IWMMXT_HELPER_SIZE(adds)
> +
> +DEF_HELPER_2(iwmmxt_avgb0, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_avgb1, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_avgw0, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_avgw1, i64, i64, i64)
> +
> +DEF_HELPER_2(iwmmxt_msadb, i64, i64, i64)
> +
> +DEF_HELPER_3(iwmmxt_align, i64, i64, i64, i32)
> +DEF_HELPER_4(iwmmxt_insr, i64, i64, i32, i32, i32)
> +
> +DEF_HELPER_1(iwmmxt_bcstb, i64, i32)
> +DEF_HELPER_1(iwmmxt_bcstw, i64, i32)
> +DEF_HELPER_1(iwmmxt_bcstl, i64, i32)
> +
> +DEF_HELPER_1(iwmmxt_addcb, i64, i64)
> +DEF_HELPER_1(iwmmxt_addcw, i64, i64)
> +DEF_HELPER_1(iwmmxt_addcl, i64, i64)
> +
> +DEF_HELPER_1(iwmmxt_msbb, i32, i64)
> +DEF_HELPER_1(iwmmxt_msbw, i32, i64)
> +DEF_HELPER_1(iwmmxt_msbl, i32, i64)
> +
> +DEF_HELPER_2(iwmmxt_srlw, i64, i64, i32)
> +DEF_HELPER_2(iwmmxt_srll, i64, i64, i32)
> +DEF_HELPER_2(iwmmxt_srlq, i64, i64, i32)
> +DEF_HELPER_2(iwmmxt_sllw, i64, i64, i32)
> +DEF_HELPER_2(iwmmxt_slll, i64, i64, i32)
> +DEF_HELPER_2(iwmmxt_sllq, i64, i64, i32)
> +DEF_HELPER_2(iwmmxt_sraw, i64, i64, i32)
> +DEF_HELPER_2(iwmmxt_sral, i64, i64, i32)
> +DEF_HELPER_2(iwmmxt_sraq, i64, i64, i32)
> +DEF_HELPER_2(iwmmxt_rorw, i64, i64, i32)
> +DEF_HELPER_2(iwmmxt_rorl, i64, i64, i32)
> +DEF_HELPER_2(iwmmxt_rorq, i64, i64, i32)
> +DEF_HELPER_2(iwmmxt_shufh, i64, i64, i32)
> +
> +DEF_HELPER_2(iwmmxt_packuw, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_packul, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_packuq, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_packsw, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_packsl, i64, i64, i64)
> +DEF_HELPER_2(iwmmxt_packsq, i64, i64, i64)
> +
> +DEF_HELPER_3(iwmmxt_muladdsl, i64, i64, i32, i32)
> +DEF_HELPER_3(iwmmxt_muladdsw, i64, i64, i32, i32)
> +DEF_HELPER_3(iwmmxt_muladdswl, i64, i64, i32, i32)
> +
> +DEF_HELPER_2(set_teecr, void, env, i32)
> +
> +DEF_HELPER_2(neon_unzip8, void, i32, i32)
> +DEF_HELPER_2(neon_unzip16, void, i32, i32)
> +DEF_HELPER_2(neon_qunzip8, void, i32, i32)
> +DEF_HELPER_2(neon_qunzip16, void, i32, i32)
> +DEF_HELPER_2(neon_qunzip32, void, i32, i32)
> +DEF_HELPER_2(neon_zip8, void, i32, i32)
> +DEF_HELPER_2(neon_zip16, void, i32, i32)
> +DEF_HELPER_2(neon_qzip8, void, i32, i32)
> +DEF_HELPER_2(neon_qzip16, void, i32, i32)
> +DEF_HELPER_2(neon_qzip32, void, i32, i32)
> +
> +#include "def-helper.h"
> diff --git a/target-arm/helpers.h b/target-arm/helpers.h
> deleted file mode 100644
> index ae701e8..0000000
> --- a/target-arm/helpers.h
> +++ /dev/null
> @@ -1,475 +0,0 @@
> -#include "def-helper.h"
> -
> -DEF_HELPER_1(clz, i32, i32)
> -DEF_HELPER_1(sxtb16, i32, i32)
> -DEF_HELPER_1(uxtb16, i32, i32)
> -
> -DEF_HELPER_2(add_setq, i32, i32, i32)
> -DEF_HELPER_2(add_saturate, i32, i32, i32)
> -DEF_HELPER_2(sub_saturate, i32, i32, i32)
> -DEF_HELPER_2(add_usaturate, i32, i32, i32)
> -DEF_HELPER_2(sub_usaturate, i32, i32, i32)
> -DEF_HELPER_1(double_saturate, i32, s32)
> -DEF_HELPER_2(sdiv, s32, s32, s32)
> -DEF_HELPER_2(udiv, i32, i32, i32)
> -DEF_HELPER_1(rbit, i32, i32)
> -DEF_HELPER_1(abs, i32, i32)
> -
> -#define PAS_OP(pfx) \
> - DEF_HELPER_3(pfx ## add8, i32, i32, i32, ptr) \
> - DEF_HELPER_3(pfx ## sub8, i32, i32, i32, ptr) \
> - DEF_HELPER_3(pfx ## sub16, i32, i32, i32, ptr) \
> - DEF_HELPER_3(pfx ## add16, i32, i32, i32, ptr) \
> - DEF_HELPER_3(pfx ## addsubx, i32, i32, i32, ptr) \
> - DEF_HELPER_3(pfx ## subaddx, i32, i32, i32, ptr)
> -
> -PAS_OP(s)
> -PAS_OP(u)
> -#undef PAS_OP
> -
> -#define PAS_OP(pfx) \
> - DEF_HELPER_2(pfx ## add8, i32, i32, i32) \
> - DEF_HELPER_2(pfx ## sub8, i32, i32, i32) \
> - DEF_HELPER_2(pfx ## sub16, i32, i32, i32) \
> - DEF_HELPER_2(pfx ## add16, i32, i32, i32) \
> - DEF_HELPER_2(pfx ## addsubx, i32, i32, i32) \
> - DEF_HELPER_2(pfx ## subaddx, i32, i32, i32)
> -PAS_OP(q)
> -PAS_OP(sh)
> -PAS_OP(uq)
> -PAS_OP(uh)
> -#undef PAS_OP
> -
> -DEF_HELPER_2(ssat, i32, i32, i32)
> -DEF_HELPER_2(usat, i32, i32, i32)
> -DEF_HELPER_2(ssat16, i32, i32, i32)
> -DEF_HELPER_2(usat16, i32, i32, i32)
> -
> -DEF_HELPER_2(usad8, i32, i32, i32)
> -
> -DEF_HELPER_1(logicq_cc, i32, i64)
> -
> -DEF_HELPER_3(sel_flags, i32, i32, i32, i32)
> -DEF_HELPER_1(exception, void, i32)
> -DEF_HELPER_0(wfi, void)
> -
> -DEF_HELPER_2(cpsr_write, void, i32, i32)
> -DEF_HELPER_0(cpsr_read, i32)
> -
> -DEF_HELPER_3(v7m_msr, void, env, i32, i32)
> -DEF_HELPER_2(v7m_mrs, i32, env, i32)
> -
> -DEF_HELPER_3(set_cp15, void, env, i32, i32)
> -DEF_HELPER_2(get_cp15, i32, env, i32)
> -
> -DEF_HELPER_3(set_cp, void, env, i32, i32)
> -DEF_HELPER_2(get_cp, i32, env, i32)
> -
> -DEF_HELPER_2(get_r13_banked, i32, env, i32)
> -DEF_HELPER_3(set_r13_banked, void, env, i32, i32)
> -
> -DEF_HELPER_1(get_user_reg, i32, i32)
> -DEF_HELPER_2(set_user_reg, void, i32, i32)
> -
> -DEF_HELPER_1(vfp_get_fpscr, i32, env)
> -DEF_HELPER_2(vfp_set_fpscr, void, env, i32)
> -
> -DEF_HELPER_3(vfp_adds, f32, f32, f32, env)
> -DEF_HELPER_3(vfp_addd, f64, f64, f64, env)
> -DEF_HELPER_3(vfp_subs, f32, f32, f32, env)
> -DEF_HELPER_3(vfp_subd, f64, f64, f64, env)
> -DEF_HELPER_3(vfp_muls, f32, f32, f32, env)
> -DEF_HELPER_3(vfp_muld, f64, f64, f64, env)
> -DEF_HELPER_3(vfp_divs, f32, f32, f32, env)
> -DEF_HELPER_3(vfp_divd, f64, f64, f64, env)
> -DEF_HELPER_1(vfp_negs, f32, f32)
> -DEF_HELPER_1(vfp_negd, f64, f64)
> -DEF_HELPER_1(vfp_abss, f32, f32)
> -DEF_HELPER_1(vfp_absd, f64, f64)
> -DEF_HELPER_2(vfp_sqrts, f32, f32, env)
> -DEF_HELPER_2(vfp_sqrtd, f64, f64, env)
> -DEF_HELPER_3(vfp_cmps, void, f32, f32, env)
> -DEF_HELPER_3(vfp_cmpd, void, f64, f64, env)
> -DEF_HELPER_3(vfp_cmpes, void, f32, f32, env)
> -DEF_HELPER_3(vfp_cmped, void, f64, f64, env)
> -
> -DEF_HELPER_2(vfp_fcvtds, f64, f32, env)
> -DEF_HELPER_2(vfp_fcvtsd, f32, f64, env)
> -
> -DEF_HELPER_2(vfp_uitos, f32, i32, env)
> -DEF_HELPER_2(vfp_uitod, f64, i32, env)
> -DEF_HELPER_2(vfp_sitos, f32, i32, env)
> -DEF_HELPER_2(vfp_sitod, f64, i32, env)
> -
> -DEF_HELPER_2(vfp_touis, i32, f32, env)
> -DEF_HELPER_2(vfp_touid, i32, f64, env)
> -DEF_HELPER_2(vfp_touizs, i32, f32, env)
> -DEF_HELPER_2(vfp_touizd, i32, f64, env)
> -DEF_HELPER_2(vfp_tosis, i32, f32, env)
> -DEF_HELPER_2(vfp_tosid, i32, f64, env)
> -DEF_HELPER_2(vfp_tosizs, i32, f32, env)
> -DEF_HELPER_2(vfp_tosizd, i32, f64, env)
> -
> -DEF_HELPER_3(vfp_toshs, i32, f32, i32, env)
> -DEF_HELPER_3(vfp_tosls, i32, f32, i32, env)
> -DEF_HELPER_3(vfp_touhs, i32, f32, i32, env)
> -DEF_HELPER_3(vfp_touls, i32, f32, i32, env)
> -DEF_HELPER_3(vfp_toshd, i64, f64, i32, env)
> -DEF_HELPER_3(vfp_tosld, i64, f64, i32, env)
> -DEF_HELPER_3(vfp_touhd, i64, f64, i32, env)
> -DEF_HELPER_3(vfp_tould, i64, f64, i32, env)
> -DEF_HELPER_3(vfp_shtos, f32, i32, i32, env)
> -DEF_HELPER_3(vfp_sltos, f32, i32, i32, env)
> -DEF_HELPER_3(vfp_uhtos, f32, i32, i32, env)
> -DEF_HELPER_3(vfp_ultos, f32, i32, i32, env)
> -DEF_HELPER_3(vfp_shtod, f64, i64, i32, env)
> -DEF_HELPER_3(vfp_sltod, f64, i64, i32, env)
> -DEF_HELPER_3(vfp_uhtod, f64, i64, i32, env)
> -DEF_HELPER_3(vfp_ultod, f64, i64, i32, env)
> -
> -DEF_HELPER_2(vfp_fcvt_f16_to_f32, f32, i32, env)
> -DEF_HELPER_2(vfp_fcvt_f32_to_f16, i32, f32, env)
> -DEF_HELPER_2(neon_fcvt_f16_to_f32, f32, i32, env)
> -DEF_HELPER_2(neon_fcvt_f32_to_f16, i32, f32, env)
> -
> -DEF_HELPER_3(recps_f32, f32, f32, f32, env)
> -DEF_HELPER_3(rsqrts_f32, f32, f32, f32, env)
> -DEF_HELPER_2(recpe_f32, f32, f32, env)
> -DEF_HELPER_2(rsqrte_f32, f32, f32, env)
> -DEF_HELPER_2(recpe_u32, i32, i32, env)
> -DEF_HELPER_2(rsqrte_u32, i32, i32, env)
> -DEF_HELPER_4(neon_tbl, i32, i32, i32, i32, i32)
> -
> -DEF_HELPER_2(add_cc, i32, i32, i32)
> -DEF_HELPER_2(adc_cc, i32, i32, i32)
> -DEF_HELPER_2(sub_cc, i32, i32, i32)
> -DEF_HELPER_2(sbc_cc, i32, i32, i32)
> -
> -DEF_HELPER_2(shl, i32, i32, i32)
> -DEF_HELPER_2(shr, i32, i32, i32)
> -DEF_HELPER_2(sar, i32, i32, i32)
> -DEF_HELPER_2(shl_cc, i32, i32, i32)
> -DEF_HELPER_2(shr_cc, i32, i32, i32)
> -DEF_HELPER_2(sar_cc, i32, i32, i32)
> -DEF_HELPER_2(ror_cc, i32, i32, i32)
> -
> -/* neon_helper.c */
> -DEF_HELPER_2(neon_qadd_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_qadd_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_qadd_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_qadd_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_qadd_u32, i32, i32, i32)
> -DEF_HELPER_2(neon_qadd_s32, i32, i32, i32)
> -DEF_HELPER_2(neon_qsub_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_qsub_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_qsub_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_qsub_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_qsub_u32, i32, i32, i32)
> -DEF_HELPER_2(neon_qsub_s32, i32, i32, i32)
> -DEF_HELPER_2(neon_qadd_u64, i64, i64, i64)
> -DEF_HELPER_2(neon_qadd_s64, i64, i64, i64)
> -DEF_HELPER_2(neon_qsub_u64, i64, i64, i64)
> -DEF_HELPER_2(neon_qsub_s64, i64, i64, i64)
> -
> -DEF_HELPER_2(neon_hadd_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_hadd_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_hadd_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_hadd_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_hadd_s32, s32, s32, s32)
> -DEF_HELPER_2(neon_hadd_u32, i32, i32, i32)
> -DEF_HELPER_2(neon_rhadd_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_rhadd_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_rhadd_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_rhadd_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_rhadd_s32, s32, s32, s32)
> -DEF_HELPER_2(neon_rhadd_u32, i32, i32, i32)
> -DEF_HELPER_2(neon_hsub_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_hsub_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_hsub_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_hsub_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_hsub_s32, s32, s32, s32)
> -DEF_HELPER_2(neon_hsub_u32, i32, i32, i32)
> -
> -DEF_HELPER_2(neon_cgt_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_cgt_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_cgt_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_cgt_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_cgt_u32, i32, i32, i32)
> -DEF_HELPER_2(neon_cgt_s32, i32, i32, i32)
> -DEF_HELPER_2(neon_cge_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_cge_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_cge_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_cge_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_cge_u32, i32, i32, i32)
> -DEF_HELPER_2(neon_cge_s32, i32, i32, i32)
> -
> -DEF_HELPER_2(neon_min_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_min_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_min_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_min_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_min_u32, i32, i32, i32)
> -DEF_HELPER_2(neon_min_s32, i32, i32, i32)
> -DEF_HELPER_2(neon_max_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_max_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_max_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_max_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_max_u32, i32, i32, i32)
> -DEF_HELPER_2(neon_max_s32, i32, i32, i32)
> -DEF_HELPER_2(neon_pmin_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_pmin_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_pmin_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_pmin_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_pmax_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_pmax_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_pmax_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_pmax_s16, i32, i32, i32)
> -
> -DEF_HELPER_2(neon_abd_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_abd_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_abd_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_abd_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_abd_u32, i32, i32, i32)
> -DEF_HELPER_2(neon_abd_s32, i32, i32, i32)
> -
> -DEF_HELPER_2(neon_shl_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_shl_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_shl_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_shl_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_shl_u32, i32, i32, i32)
> -DEF_HELPER_2(neon_shl_s32, i32, i32, i32)
> -DEF_HELPER_2(neon_shl_u64, i64, i64, i64)
> -DEF_HELPER_2(neon_shl_s64, i64, i64, i64)
> -DEF_HELPER_2(neon_rshl_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_rshl_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_rshl_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_rshl_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_rshl_u32, i32, i32, i32)
> -DEF_HELPER_2(neon_rshl_s32, i32, i32, i32)
> -DEF_HELPER_2(neon_rshl_u64, i64, i64, i64)
> -DEF_HELPER_2(neon_rshl_s64, i64, i64, i64)
> -DEF_HELPER_2(neon_qshl_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_qshl_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_qshl_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_qshl_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_qshl_u32, i32, i32, i32)
> -DEF_HELPER_2(neon_qshl_s32, i32, i32, i32)
> -DEF_HELPER_2(neon_qshl_u64, i64, i64, i64)
> -DEF_HELPER_2(neon_qshl_s64, i64, i64, i64)
> -DEF_HELPER_2(neon_qshlu_s8, i32, i32, i32);
> -DEF_HELPER_2(neon_qshlu_s16, i32, i32, i32);
> -DEF_HELPER_2(neon_qshlu_s32, i32, i32, i32);
> -DEF_HELPER_2(neon_qshlu_s64, i64, i64, i64);
> -DEF_HELPER_2(neon_qrshl_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_qrshl_s8, i32, i32, i32)
> -DEF_HELPER_2(neon_qrshl_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_qrshl_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_qrshl_u32, i32, i32, i32)
> -DEF_HELPER_2(neon_qrshl_s32, i32, i32, i32)
> -DEF_HELPER_2(neon_qrshl_u64, i64, i64, i64)
> -DEF_HELPER_2(neon_qrshl_s64, i64, i64, i64)
> -
> -DEF_HELPER_2(neon_add_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_add_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_padd_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_padd_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_sub_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_sub_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_mul_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_mul_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_mul_p8, i32, i32, i32)
> -DEF_HELPER_2(neon_mull_p8, i64, i32, i32)
> -
> -DEF_HELPER_2(neon_tst_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_tst_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_tst_u32, i32, i32, i32)
> -DEF_HELPER_2(neon_ceq_u8, i32, i32, i32)
> -DEF_HELPER_2(neon_ceq_u16, i32, i32, i32)
> -DEF_HELPER_2(neon_ceq_u32, i32, i32, i32)
> -
> -DEF_HELPER_1(neon_abs_s8, i32, i32)
> -DEF_HELPER_1(neon_abs_s16, i32, i32)
> -DEF_HELPER_1(neon_clz_u8, i32, i32)
> -DEF_HELPER_1(neon_clz_u16, i32, i32)
> -DEF_HELPER_1(neon_cls_s8, i32, i32)
> -DEF_HELPER_1(neon_cls_s16, i32, i32)
> -DEF_HELPER_1(neon_cls_s32, i32, i32)
> -DEF_HELPER_1(neon_cnt_u8, i32, i32)
> -
> -DEF_HELPER_2(neon_qdmulh_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_qrdmulh_s16, i32, i32, i32)
> -DEF_HELPER_2(neon_qdmulh_s32, i32, i32, i32)
> -DEF_HELPER_2(neon_qrdmulh_s32, i32, i32, i32)
> -
> -DEF_HELPER_1(neon_narrow_u8, i32, i64)
> -DEF_HELPER_1(neon_narrow_u16, i32, i64)
> -DEF_HELPER_1(neon_unarrow_sat8, i32, i64)
> -DEF_HELPER_1(neon_narrow_sat_u8, i32, i64)
> -DEF_HELPER_1(neon_narrow_sat_s8, i32, i64)
> -DEF_HELPER_1(neon_unarrow_sat16, i32, i64)
> -DEF_HELPER_1(neon_narrow_sat_u16, i32, i64)
> -DEF_HELPER_1(neon_narrow_sat_s16, i32, i64)
> -DEF_HELPER_1(neon_unarrow_sat32, i32, i64)
> -DEF_HELPER_1(neon_narrow_sat_u32, i32, i64)
> -DEF_HELPER_1(neon_narrow_sat_s32, i32, i64)
> -DEF_HELPER_1(neon_narrow_high_u8, i32, i64)
> -DEF_HELPER_1(neon_narrow_high_u16, i32, i64)
> -DEF_HELPER_1(neon_narrow_round_high_u8, i32, i64)
> -DEF_HELPER_1(neon_narrow_round_high_u16, i32, i64)
> -DEF_HELPER_1(neon_widen_u8, i64, i32)
> -DEF_HELPER_1(neon_widen_s8, i64, i32)
> -DEF_HELPER_1(neon_widen_u16, i64, i32)
> -DEF_HELPER_1(neon_widen_s16, i64, i32)
> -
> -DEF_HELPER_2(neon_addl_u16, i64, i64, i64)
> -DEF_HELPER_2(neon_addl_u32, i64, i64, i64)
> -DEF_HELPER_2(neon_paddl_u16, i64, i64, i64)
> -DEF_HELPER_2(neon_paddl_u32, i64, i64, i64)
> -DEF_HELPER_2(neon_subl_u16, i64, i64, i64)
> -DEF_HELPER_2(neon_subl_u32, i64, i64, i64)
> -DEF_HELPER_2(neon_addl_saturate_s32, i64, i64, i64)
> -DEF_HELPER_2(neon_addl_saturate_s64, i64, i64, i64)
> -DEF_HELPER_2(neon_abdl_u16, i64, i32, i32)
> -DEF_HELPER_2(neon_abdl_s16, i64, i32, i32)
> -DEF_HELPER_2(neon_abdl_u32, i64, i32, i32)
> -DEF_HELPER_2(neon_abdl_s32, i64, i32, i32)
> -DEF_HELPER_2(neon_abdl_u64, i64, i32, i32)
> -DEF_HELPER_2(neon_abdl_s64, i64, i32, i32)
> -DEF_HELPER_2(neon_mull_u8, i64, i32, i32)
> -DEF_HELPER_2(neon_mull_s8, i64, i32, i32)
> -DEF_HELPER_2(neon_mull_u16, i64, i32, i32)
> -DEF_HELPER_2(neon_mull_s16, i64, i32, i32)
> -
> -DEF_HELPER_1(neon_negl_u16, i64, i64)
> -DEF_HELPER_1(neon_negl_u32, i64, i64)
> -DEF_HELPER_1(neon_negl_u64, i64, i64)
> -
> -DEF_HELPER_1(neon_qabs_s8, i32, i32)
> -DEF_HELPER_1(neon_qabs_s16, i32, i32)
> -DEF_HELPER_1(neon_qabs_s32, i32, i32)
> -DEF_HELPER_1(neon_qneg_s8, i32, i32)
> -DEF_HELPER_1(neon_qneg_s16, i32, i32)
> -DEF_HELPER_1(neon_qneg_s32, i32, i32)
> -
> -DEF_HELPER_2(neon_min_f32, i32, i32, i32)
> -DEF_HELPER_2(neon_max_f32, i32, i32, i32)
> -DEF_HELPER_2(neon_abd_f32, i32, i32, i32)
> -DEF_HELPER_2(neon_add_f32, i32, i32, i32)
> -DEF_HELPER_2(neon_sub_f32, i32, i32, i32)
> -DEF_HELPER_2(neon_mul_f32, i32, i32, i32)
> -DEF_HELPER_2(neon_ceq_f32, i32, i32, i32)
> -DEF_HELPER_2(neon_cge_f32, i32, i32, i32)
> -DEF_HELPER_2(neon_cgt_f32, i32, i32, i32)
> -DEF_HELPER_2(neon_acge_f32, i32, i32, i32)
> -DEF_HELPER_2(neon_acgt_f32, i32, i32, i32)
> -
> -/* iwmmxt_helper.c */
> -DEF_HELPER_2(iwmmxt_maddsq, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_madduq, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_sadb, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_sadw, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_mulslw, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_mulshw, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_mululw, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_muluhw, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_macsw, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_macuw, i64, i64, i64)
> -DEF_HELPER_1(iwmmxt_setpsr_nz, i32, i64)
> -
> -#define DEF_IWMMXT_HELPER_SIZE(name) \
> -DEF_HELPER_2(iwmmxt_##name##b, i64, i64, i64) \
> -DEF_HELPER_2(iwmmxt_##name##w, i64, i64, i64) \
> -DEF_HELPER_2(iwmmxt_##name##l, i64, i64, i64) \
> -
> -DEF_IWMMXT_HELPER_SIZE(unpackl)
> -DEF_IWMMXT_HELPER_SIZE(unpackh)
> -
> -DEF_HELPER_1(iwmmxt_unpacklub, i64, i64)
> -DEF_HELPER_1(iwmmxt_unpackluw, i64, i64)
> -DEF_HELPER_1(iwmmxt_unpacklul, i64, i64)
> -DEF_HELPER_1(iwmmxt_unpackhub, i64, i64)
> -DEF_HELPER_1(iwmmxt_unpackhuw, i64, i64)
> -DEF_HELPER_1(iwmmxt_unpackhul, i64, i64)
> -DEF_HELPER_1(iwmmxt_unpacklsb, i64, i64)
> -DEF_HELPER_1(iwmmxt_unpacklsw, i64, i64)
> -DEF_HELPER_1(iwmmxt_unpacklsl, i64, i64)
> -DEF_HELPER_1(iwmmxt_unpackhsb, i64, i64)
> -DEF_HELPER_1(iwmmxt_unpackhsw, i64, i64)
> -DEF_HELPER_1(iwmmxt_unpackhsl, i64, i64)
> -
> -DEF_IWMMXT_HELPER_SIZE(cmpeq)
> -DEF_IWMMXT_HELPER_SIZE(cmpgtu)
> -DEF_IWMMXT_HELPER_SIZE(cmpgts)
> -
> -DEF_IWMMXT_HELPER_SIZE(mins)
> -DEF_IWMMXT_HELPER_SIZE(minu)
> -DEF_IWMMXT_HELPER_SIZE(maxs)
> -DEF_IWMMXT_HELPER_SIZE(maxu)
> -
> -DEF_IWMMXT_HELPER_SIZE(subn)
> -DEF_IWMMXT_HELPER_SIZE(addn)
> -DEF_IWMMXT_HELPER_SIZE(subu)
> -DEF_IWMMXT_HELPER_SIZE(addu)
> -DEF_IWMMXT_HELPER_SIZE(subs)
> -DEF_IWMMXT_HELPER_SIZE(adds)
> -
> -DEF_HELPER_2(iwmmxt_avgb0, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_avgb1, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_avgw0, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_avgw1, i64, i64, i64)
> -
> -DEF_HELPER_2(iwmmxt_msadb, i64, i64, i64)
> -
> -DEF_HELPER_3(iwmmxt_align, i64, i64, i64, i32)
> -DEF_HELPER_4(iwmmxt_insr, i64, i64, i32, i32, i32)
> -
> -DEF_HELPER_1(iwmmxt_bcstb, i64, i32)
> -DEF_HELPER_1(iwmmxt_bcstw, i64, i32)
> -DEF_HELPER_1(iwmmxt_bcstl, i64, i32)
> -
> -DEF_HELPER_1(iwmmxt_addcb, i64, i64)
> -DEF_HELPER_1(iwmmxt_addcw, i64, i64)
> -DEF_HELPER_1(iwmmxt_addcl, i64, i64)
> -
> -DEF_HELPER_1(iwmmxt_msbb, i32, i64)
> -DEF_HELPER_1(iwmmxt_msbw, i32, i64)
> -DEF_HELPER_1(iwmmxt_msbl, i32, i64)
> -
> -DEF_HELPER_2(iwmmxt_srlw, i64, i64, i32)
> -DEF_HELPER_2(iwmmxt_srll, i64, i64, i32)
> -DEF_HELPER_2(iwmmxt_srlq, i64, i64, i32)
> -DEF_HELPER_2(iwmmxt_sllw, i64, i64, i32)
> -DEF_HELPER_2(iwmmxt_slll, i64, i64, i32)
> -DEF_HELPER_2(iwmmxt_sllq, i64, i64, i32)
> -DEF_HELPER_2(iwmmxt_sraw, i64, i64, i32)
> -DEF_HELPER_2(iwmmxt_sral, i64, i64, i32)
> -DEF_HELPER_2(iwmmxt_sraq, i64, i64, i32)
> -DEF_HELPER_2(iwmmxt_rorw, i64, i64, i32)
> -DEF_HELPER_2(iwmmxt_rorl, i64, i64, i32)
> -DEF_HELPER_2(iwmmxt_rorq, i64, i64, i32)
> -DEF_HELPER_2(iwmmxt_shufh, i64, i64, i32)
> -
> -DEF_HELPER_2(iwmmxt_packuw, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_packul, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_packuq, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_packsw, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_packsl, i64, i64, i64)
> -DEF_HELPER_2(iwmmxt_packsq, i64, i64, i64)
> -
> -DEF_HELPER_3(iwmmxt_muladdsl, i64, i64, i32, i32)
> -DEF_HELPER_3(iwmmxt_muladdsw, i64, i64, i32, i32)
> -DEF_HELPER_3(iwmmxt_muladdswl, i64, i64, i32, i32)
> -
> -DEF_HELPER_2(set_teecr, void, env, i32)
> -
> -DEF_HELPER_2(neon_unzip8, void, i32, i32)
> -DEF_HELPER_2(neon_unzip16, void, i32, i32)
> -DEF_HELPER_2(neon_qunzip8, void, i32, i32)
> -DEF_HELPER_2(neon_qunzip16, void, i32, i32)
> -DEF_HELPER_2(neon_qunzip32, void, i32, i32)
> -DEF_HELPER_2(neon_zip8, void, i32, i32)
> -DEF_HELPER_2(neon_zip16, void, i32, i32)
> -DEF_HELPER_2(neon_qzip8, void, i32, i32)
> -DEF_HELPER_2(neon_qzip16, void, i32, i32)
> -DEF_HELPER_2(neon_qzip32, void, i32, i32)
> -
> -#include "def-helper.h"
> diff --git a/target-arm/iwmmxt_helper.c b/target-arm/iwmmxt_helper.c
> index b13ffc7..b81e4a5 100644
> --- a/target-arm/iwmmxt_helper.c
> +++ b/target-arm/iwmmxt_helper.c
> @@ -24,7 +24,7 @@
>
> #include "cpu.h"
> #include "exec.h"
> -#include "helpers.h"
> +#include "helper.h"
>
> /* iwMMXt macros extracted from GNU gdb. */
>
> diff --git a/target-arm/neon_helper.c b/target-arm/neon_helper.c
> index c3ac96a..cd3b908 100644
> --- a/target-arm/neon_helper.c
> +++ b/target-arm/neon_helper.c
> @@ -11,7 +11,7 @@
>
> #include "cpu.h"
> #include "exec.h"
> -#include "helpers.h"
> +#include "helper.h"
>
> #define SIGNBIT (uint32_t)0x80000000
> #define SIGNBIT64 ((uint64_t)1 << 63)
> diff --git a/target-arm/op_helper.c b/target-arm/op_helper.c
> index 3de2610..ee7286b 100644
> --- a/target-arm/op_helper.c
> +++ b/target-arm/op_helper.c
> @@ -17,7 +17,7 @@
> * License along with this library; if not, see <http://www.gnu.org/licenses/>.
> */
> #include "exec.h"
> -#include "helpers.h"
> +#include "helper.h"
>
> #define SIGNBIT (uint32_t)0x80000000
> #define SIGNBIT64 ((uint64_t)1 << 63)
> diff --git a/target-arm/translate.c b/target-arm/translate.c
> index cf59d63..b401a76 100644
> --- a/target-arm/translate.c
> +++ b/target-arm/translate.c
> @@ -30,9 +30,9 @@
> #include "tcg-op.h"
> #include "qemu-log.h"
>
> -#include "helpers.h"
> +#include "helper.h"
> #define GEN_HELPER 1
> -#include "helpers.h"
> +#include "helper.h"
>
> #define ENABLE_ARCH_4T arm_feature(env, ARM_FEATURE_V4T)
> #define ENABLE_ARCH_5 arm_feature(env, ARM_FEATURE_V5)
> @@ -129,7 +129,7 @@ void arm_translate_init(void)
> #endif
>
> #define GEN_HELPER 2
> -#include "helpers.h"
> +#include "helper.h"
> }
>
> static inline TCGv load_cpu_offset(int offset)
>
>
>
--
Aurelien Jarno GPG: 1024D/F1BCDB73
aurelien@aurel32.net http://www.aurel32.net
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2011-04-18 19:18 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-04-13 16:38 [Qemu-devel] [PATCH 1/4] [arm] trivial whitespace/indentation fixes Lluís
2011-04-13 16:38 ` [Qemu-devel] [PATCH 2/4] [arm] move helpers.h to helper.h Lluís
2011-04-18 19:18 ` Aurelien Jarno
2011-04-13 16:38 ` [Qemu-devel] [PATCH 3/4] [m68k] trivial whitespace/indentation fixes Lluís
2011-04-13 16:38 ` [Qemu-devel] [PATCH 4/4] [m68k] move helpers.h to helper.h Lluís
2011-04-13 17:16 ` [Qemu-devel] [PATCH 1/4] [arm] trivial whitespace/indentation fixes Peter Maydell
2011-04-13 18:34 ` Aurelien Jarno
2011-04-13 20:06 ` Lluís
2011-04-13 20:09 ` Lluís
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.