From 6945db06c0128362123444f53ccbf0a6bc326b82 Mon Sep 17 00:00:00 2001 From: Pekka Enberg Date: Thu, 26 Feb 2009 11:23:52 +0200 Subject: [PATCH] --- yaml --- r: 151451 b: refs/heads/master c: 6d9609c13250631c1d0c55a29a64d5687fd91293 h: refs/heads/master i: 151449: 2abe333d77c9665d0b70a2c44fe134cd73287091 151447: 2d9a53eeb7fb0628783ed6f1567c98b937641a11 v: v3 --- [refs] | 2 +- trunk/arch/x86/mm/kmemcheck/opcode.c | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 4905fc165f69..197f3d290c57 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 0c33cacd8672ef034ba414510f71ea2bd9370111 +refs/heads/master: 6d9609c13250631c1d0c55a29a64d5687fd91293 diff --git a/trunk/arch/x86/mm/kmemcheck/opcode.c b/trunk/arch/x86/mm/kmemcheck/opcode.c index a4100b6e783a..63c19e27aa6f 100644 --- a/trunk/arch/x86/mm/kmemcheck/opcode.c +++ b/trunk/arch/x86/mm/kmemcheck/opcode.c @@ -16,10 +16,17 @@ static bool opcode_is_prefix(uint8_t b) || b == 0x67; } +#ifdef CONFIG_X86_64 static bool opcode_is_rex_prefix(uint8_t b) { return (b & 0xf0) == 0x40; } +#else +static bool opcode_is_rex_prefix(uint8_t b) +{ + return false; +} +#endif #define REX_W (1 << 3) @@ -40,7 +47,6 @@ void kmemcheck_opcode_decode(const uint8_t *op, unsigned int *size) operand_size_override = 2; } -#ifdef CONFIG_X86_64 /* REX prefix */ if (opcode_is_rex_prefix(*op)) { uint8_t rex = *op; @@ -72,7 +78,6 @@ void kmemcheck_opcode_decode(const uint8_t *op, unsigned int *size) return; } } -#endif /* escape opcode */ if (*op == 0x0f) {