From patchwork Sat Apr 10 01:33:06 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [v2,18/18] tcg/arm: don't try to load constants using pc Date: Fri, 09 Apr 2010 15:33:06 -0000 From: Aurelien Jarno X-Patchwork-Id: 49890 Message-Id: <1270863186-10180-19-git-send-email-aurelien@aurel32.net> To: qemu-devel@nongnu.org Cc: Andrzej Zaborowski , Aurelien Jarno There is statistically almost 0 chances to use this code, so remove it. Signed-off-by: Aurelien Jarno --- tcg/arm/tcg-target.c | 7 ------- 1 files changed, 0 insertions(+), 7 deletions(-) diff --git a/tcg/arm/tcg-target.c b/tcg/arm/tcg-target.c index 1e2028f..33c780b 100644 --- a/tcg/arm/tcg-target.c +++ b/tcg/arm/tcg-target.c @@ -396,19 +396,12 @@ static inline void tcg_out_dat_imm(TCGContext *s, static inline void tcg_out_movi32(TCGContext *s, int cond, int rd, int32_t arg) { - int offset = (uint32_t) arg - ((uint32_t) s->code_ptr + 8); - /* TODO: This is very suboptimal, we can easily have a constant * pool somewhere after all the instructions. */ if (arg < 0 && arg > -0x100) return tcg_out_dat_imm(s, cond, ARITH_MVN, rd, 0, (~arg) & 0xff); - if (offset < 0x100 && offset > -0x100) - return offset >= 0 ? - tcg_out_dat_imm(s, cond, ARITH_ADD, rd, 15, offset) : - tcg_out_dat_imm(s, cond, ARITH_SUB, rd, 15, -offset); - if (use_armv7_instructions) { /* use movw/movt */ /* movw */