aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPekka Enberg <penberg@kernel.org>2012-05-23 17:37:45 +0300
committerPekka Enberg <penberg@kernel.org>2012-08-14 20:26:18 +0300
commit7336e6ae93aaaf23d169b3c0ccfb24c0a30eb0cb (patch)
tree67a072395f1c33e69a424966483256602615fd57
parentcb019e82c11940629999c6f7ce4a226d8f93f53b (diff)
downloadjato-7336e6ae93aaaf23d169b3c0ccfb24c0a30eb0cb.tar.gz
x86-32: Fix reg_default_type() for XMM registers
Signed-off-by: Pekka Enberg <penberg@kernel.org>
-rw-r--r--arch/x86/include/arch/registers_32.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/arch/x86/include/arch/registers_32.h b/arch/x86/include/arch/registers_32.h
index d8f2145f..ef6ffc8d 100644
--- a/arch/x86/include/arch/registers_32.h
+++ b/arch/x86/include/arch/registers_32.h
@@ -51,6 +51,7 @@ enum machine_reg {
};
#define GPR_VM_TYPE J_INT
+#define FPU_VM_TYPE J_DOUBLE
#define NR_CALLER_SAVE_REGS 11
extern enum machine_reg caller_save_regs[NR_CALLER_SAVE_REGS];
@@ -84,7 +85,12 @@ struct register_state {
static inline enum vm_type reg_default_type(enum machine_reg reg)
{
- return GPR_VM_TYPE;
+ if (reg < NR_GP_REGISTERS)
+ return GPR_VM_TYPE;
+ else if (reg < NR_FP_REGISTERS)
+ return FPU_VM_TYPE;
+ else
+ return GPR_VM_TYPE;
}
static inline bool is_xmm_reg(enum machine_reg reg)