lkml.org 
[lkml]   [2017]   [Nov]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 01/43] x86/decoder: Add new TEST instruction pattern
    Date
    From: Masami Hiramatsu <mhiramat@kernel.org>

    The kbuild test robot reported this build warning:

    Warning: arch/x86/tools/test_get_len found difference at <jump_table>:ffffffff8103dd2c

    Warning: ffffffff8103dd82: f6 09 d8 testb $0xd8,(%rcx)
    Warning: objdump says 3 bytes, but insn_get_length() says 2
    Warning: decoded and checked 1569014 instructions with 1 warnings

    This sequence seems to be a new instruction not in the opcode map in the Intel SDM.

    The instruction sequence is "F6 09 d8", means Group3(F6), MOD(00)REG(001)RM(001), and 0xd8.
    Intel SDM vol2 A.4 Table A-6 said the table index in the group is "Encoding of Bits 5,4,3 of
    the ModR/M Byte (bits 2,1,0 in parenthesis)"

    In that table, opcodes listed by the index REG bits as:

    000 001 010 011 100 101 110 111
    TEST Ib/Iz,(undefined),NOT,NEG,MUL AL/rAX,IMUL AL/rAX,DIV AL/rAX,IDIV AL/rAX

    So, it seems TEST Ib is assigned to 001.

    Add the new pattern.

    Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Reported-by: kbuild test robot <fengguang.wu@intel.com>
    Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
    Cc: <stable@vger.kernel.org>
    Cc: H. Peter Anvin <hpa@zytor.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: linux-kernel@vger.kernel.org
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    ---
    arch/x86/lib/x86-opcode-map.txt | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/arch/x86/lib/x86-opcode-map.txt b/arch/x86/lib/x86-opcode-map.txt
    index 12e377184ee4..c4d55919fac1 100644
    --- a/arch/x86/lib/x86-opcode-map.txt
    +++ b/arch/x86/lib/x86-opcode-map.txt
    @@ -896,7 +896,7 @@ EndTable

    GrpTable: Grp3_1
    0: TEST Eb,Ib
    -1:
    +1: TEST Eb,Ib
    2: NOT Eb
    3: NEG Eb
    4: MUL AL,Eb
    --
    2.14.1
    \
     
     \ /
      Last update: 2017-11-24 10:29    [W:2.486 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site