aboutsummaryrefslogtreecommitdiffstats
path: root/gen-icount.h
diff options
context:
space:
mode:
authorDavid 'Digit' Turner <digit@android.com>2010-05-10 23:26:01 -0700
committerDavid 'Digit' Turner <digit@android.com>2010-05-11 17:56:30 -0700
commit9251866320b5f8329a043bb56b3a794f78d12849 (patch)
treeca005574fbc5833f93d55ce72881780aa7e78aaf /gen-icount.h
parent1da50d3beb2a75f619fa56278cb195703361e261 (diff)
downloadexternal_qemu-9251866320b5f8329a043bb56b3a794f78d12849.zip
external_qemu-9251866320b5f8329a043bb56b3a794f78d12849.tar.gz
external_qemu-9251866320b5f8329a043bb56b3a794f78d12849.tar.bz2
Upstream: integrate various misc. minor changes
Change-Id: I7d3eca1350f980d93f9f3198fa5250fb776de729
Diffstat (limited to 'gen-icount.h')
-rw-r--r--gen-icount.h11
1 files changed, 1 insertions, 10 deletions
diff --git a/gen-icount.h b/gen-icount.h
index d4524d6..3268f72 100644
--- a/gen-icount.h
+++ b/gen-icount.h
@@ -11,14 +11,7 @@ static inline void gen_icount_start(void)
return;
icount_label = gen_new_label();
- /* FIXME: This generates lousy code. We can't use tcg_new_temp because
- count needs to live over the conditional branch. To workaround this
- we allow the target to supply a convenient register temporary. */
-#ifndef ICOUNT_TEMP
count = tcg_temp_local_new_i32();
-#else
- count = ICOUNT_TEMP;
-#endif
tcg_gen_ld_i32(count, cpu_env, offsetof(CPUState, icount_decr.u32));
/* This is a horrid hack to allow fixing up the value later. */
icount_arg = gen_opparam_ptr + 1;
@@ -26,9 +19,7 @@ static inline void gen_icount_start(void)
tcg_gen_brcondi_i32(TCG_COND_LT, count, 0, icount_label);
tcg_gen_st16_i32(count, cpu_env, offsetof(CPUState, icount_decr.u16.low));
-#ifndef ICOUNT_TEMP
tcg_temp_free_i32(count);
-#endif
}
static void gen_icount_end(TranslationBlock *tb, int num_insns)
@@ -40,7 +31,7 @@ static void gen_icount_end(TranslationBlock *tb, int num_insns)
}
}
-static void inline gen_io_start(void)
+static inline void gen_io_start(void)
{
TCGv_i32 tmp = tcg_const_i32(1);
tcg_gen_st_i32(tmp, cpu_env, offsetof(CPUState, can_do_io));