From 3ea0b595a9783282c233f0c7910c11688f9ae721 Mon Sep 17 00:00:00 2001 From: comex Date: Mon, 23 Feb 2015 00:52:55 -0500 Subject: Add transform-dis-cases-arm64.S and fix a serious bug thus discovered. Commit transform-dis-cases-x86_64.S, which I forgot to earlier. --- lib/arm64/arch-transform-dis.inc.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'lib/arm64') diff --git a/lib/arm64/arch-transform-dis.inc.h b/lib/arm64/arch-transform-dis.inc.h index 123c7ae..73fe227 100644 --- a/lib/arm64/arch-transform-dis.inc.h +++ b/lib/arm64/arch-transform-dis.inc.h @@ -45,7 +45,7 @@ void transform_dis_branch(struct transform_dis_ctx *ctx, uint_tptr dpc, int cc) static void transform_dis_pre_dis(UNUSED struct transform_dis_ctx *ctx) {} static void transform_dis_post_dis(struct transform_dis_ctx *ctx) { uint32_t op = ctx->base.op; - ctx->arch.regs_possibly_written |= op & 31; - ctx->arch.regs_possibly_written |= op >> 10 & 31; - ctx->arch.regs_possibly_written |= op >> 16 & 31; + ctx->arch.regs_possibly_written |= 1 << (op & 31); + ctx->arch.regs_possibly_written |= 1 << (op >> 10 & 31); + ctx->arch.regs_possibly_written |= 1 << (op >> 16 & 31); } -- cgit v1.2.3