aboutsummaryrefslogtreecommitdiffstats
path: root/def-helper.h
diff options
context:
space:
mode:
authorDavid 'Digit' Turner <digit@android.com>2011-01-06 18:42:25 +0100
committerDavid 'Digit' Turner <digit@android.com>2011-01-06 18:42:25 +0100
commit75e6705353e53930528d59fb9a816849ad689e02 (patch)
treeb2f5973433ad98c63bd3b953a2945b6825104cd2 /def-helper.h
parent6f195769ac855e8044ed2c472d28685c109a73fc (diff)
downloadexternal_qemu-75e6705353e53930528d59fb9a816849ad689e02.zip
external_qemu-75e6705353e53930528d59fb9a816849ad689e02.tar.gz
external_qemu-75e6705353e53930528d59fb9a816849ad689e02.tar.bz2
Fix tracing segfault due to improper upstream integrate.
The integration failed to update some tcg files resulting in a crash when trying to trace stuff, and properly a few other problems. Undo it. We will re-integrate tcg changes later. Change-Id: I6fd3f7f442ce3bc70cb6995c04684cb1acfaa378
Diffstat (limited to 'def-helper.h')
-rw-r--r--def-helper.h38
1 files changed, 9 insertions, 29 deletions
diff --git a/def-helper.h b/def-helper.h
index 8a822c7..8a88c5b 100644
--- a/def-helper.h
+++ b/def-helper.h
@@ -81,29 +81,9 @@
#define dh_is_64bit_ptr (TCG_TARGET_REG_BITS == 64)
#define dh_is_64bit(t) glue(dh_is_64bit_, dh_alias(t))
-#define dh_is_signed_void 0
-#define dh_is_signed_i32 0
-#define dh_is_signed_s32 1
-#define dh_is_signed_i64 0
-#define dh_is_signed_s64 1
-#define dh_is_signed_f32 0
-#define dh_is_signed_f64 0
-#define dh_is_signed_tl 0
-#define dh_is_signed_int 1
-/* ??? This is highly specific to the host cpu. There are even special
- extension instructions that may be required, e.g. ia64's addp4. But
- for now we don't support any 64-bit targets with 32-bit pointers. */
-#define dh_is_signed_ptr 0
-#define dh_is_signed_env dh_is_signed_ptr
-#define dh_is_signed(t) dh_is_signed_##t
-
-#define dh_sizemask(t, n) \
- sizemask |= dh_is_64bit(t) << (n*2); \
- sizemask |= dh_is_signed(t) << (n*2+1)
-
#define dh_arg(t, n) \
args[n - 1] = glue(GET_TCGV_, dh_alias(t))(glue(arg, n)); \
- dh_sizemask(t, n)
+ sizemask |= dh_is_64bit(t) << n
#define dh_arg_decl(t, n) glue(TCGv_, dh_alias(t)) glue(arg, n)
@@ -158,8 +138,8 @@ static inline void glue(gen_helper_, name)(dh_retvar_decl0(ret)) \
static inline void glue(gen_helper_, name)(dh_retvar_decl(ret) dh_arg_decl(t1, 1)) \
{ \
TCGArg args[1]; \
- int sizemask = 0; \
- dh_sizemask(ret, 0); \
+ int sizemask; \
+ sizemask = dh_is_64bit(ret); \
dh_arg(t1, 1); \
tcg_gen_helperN(HELPER(name), flags, sizemask, dh_retvar(ret), 1, args); \
}
@@ -169,8 +149,8 @@ static inline void glue(gen_helper_, name)(dh_retvar_decl(ret) dh_arg_decl(t1, 1
dh_arg_decl(t2, 2)) \
{ \
TCGArg args[2]; \
- int sizemask = 0; \
- dh_sizemask(ret, 0); \
+ int sizemask; \
+ sizemask = dh_is_64bit(ret); \
dh_arg(t1, 1); \
dh_arg(t2, 2); \
tcg_gen_helperN(HELPER(name), flags, sizemask, dh_retvar(ret), 2, args); \
@@ -181,8 +161,8 @@ static inline void glue(gen_helper_, name)(dh_retvar_decl(ret) dh_arg_decl(t1, 1
dh_arg_decl(t2, 2), dh_arg_decl(t3, 3)) \
{ \
TCGArg args[3]; \
- int sizemask = 0; \
- dh_sizemask(ret, 0); \
+ int sizemask; \
+ sizemask = dh_is_64bit(ret); \
dh_arg(t1, 1); \
dh_arg(t2, 2); \
dh_arg(t3, 3); \
@@ -194,8 +174,8 @@ static inline void glue(gen_helper_, name)(dh_retvar_decl(ret) dh_arg_decl(t1, 1
dh_arg_decl(t2, 2), dh_arg_decl(t3, 3), dh_arg_decl(t4, 4)) \
{ \
TCGArg args[4]; \
- int sizemask = 0; \
- dh_sizemask(ret, 0); \
+ int sizemask; \
+ sizemask = dh_is_64bit(ret); \
dh_arg(t1, 1); \
dh_arg(t2, 2); \
dh_arg(t3, 3); \