From: "H. Peter Anvin" <hpa@zytor.com>
To: Masami Hiramatsu <mhiramat@redhat.com>
Cc: "Ingo Molnar" <mingo@elte.hu>,
"Steven Rostedt" <rostedt@goodmis.org>,
lkml <linux-kernel@vger.kernel.org>,
systemtap <systemtap@sources.redhat.com>,
kvm <kvm@vger.kernel.org>,
DLE <dle-develop@lists.sourceforge.net>,
"Jim Keniston" <jkenisto@us.ibm.com>,
"Ananth N Mavinakayanahalli" <ananth@in.ibm.com>,
"Srikar Dronamraju" <srikar@linux.vnet.ibm.com>,
"Frederic Weisbecker" <fweisbec@gmail.com>,
"Andi Kleen" <ak@linux.intel.com>,
"Vegard Nossum" <vegard.nossum@gmail.com>,
"Avi Kivity" <avi@redhat.com>,
PrzemysławPawełczyk <przemyslaw@pawelczyk.it>
Subject: Re: [RESEND][ PATCH -tip -v9 1/7] x86: instruction decoder API
Date: Fri, 12 Jun 2009 15:50:57 -0700 [thread overview]
Message-ID: <4A32DBD1.30309@zytor.com> (raw)
In-Reply-To: <20090612224455.17311.19421.stgit@localhost.localdomain>
Masami Hiramatsu wrote:
> Add x86 instruction decoder to arch-specific libraries. This decoder
> can decode x86 instructions used in kernel into prefix, opcode, modrm,
> sib, displacement and immediates. This can also show the length of
> instructions.
>
> This version introduces instruction attributes for decoding instructions.
> The instruction attribute tables are generated from the opcode map file
> (x86-opcode-map.txt) by the generator script(gen-insn-attr-x86.awk).
>
> Currently, the opcode maps are based on opcode maps in Intel(R) 64 and
> IA-32 Architectures Software Developers Manual Vol.2: Appendix.A,
> and consist of below two types of opcode tables.
>
> 1-byte/2-bytes/3-bytes opcodes, which has 256 elements, are
> written as below;
>
> Table: table-name
> Referrer: escaped-name
> opcode: mnemonic|GrpXXX [operand1[,operand2...]] [(extra1)[,(extra2)...] [| 2nd-mnemonic ...]
> (or)
> opcode: escape # escaped-name
> EndTable
>
> Group opcodes, which has 8 elements, are written as below;
>
> GrpTable: GrpXXX
> reg: mnemonic [operand1[,operand2...]] [(extra1)[,(extra2)...] [| 2nd-mnemonic ...]
> EndTable
>
> These opcode maps do NOT include most of SSE and FP opcodes, because
> those opcodes are not used in the kernel.
>
> Signed-off-by: Masami Hiramatsu <mhiramat@redhat.com>
> Signed-off-by: Jim Keniston <jkenisto@us.ibm.com>
> Cc: H. Peter Anvin <hpa@zytor.com>
> Cc: Steven Rostedt <rostedt@goodmis.org>
> Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
> Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
> Cc: Ingo Molnar <mingo@elte.hu>
> Cc: Frederic Weisbecker <fweisbec@gmail.com>
> Cc: Andi Kleen <ak@linux.intel.com>
> Cc: Vegard Nossum <vegard.nossum@gmail.com>
> Cc: Avi Kivity <avi@redhat.com>
> Cc: Przemysław Pawełczyk <przemyslaw@pawelczyk.it>
> ---
>
The decoder looks good by now.
Acked-by: H. Peter Anvin <hpa@zytor.com>
-hpa
next prev parent reply other threads:[~2009-06-12 22:53 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-12 22:44 [RESEND][ PATCH -tip -v9 0/7] tracing: kprobe-based event tracer and x86 instruction decoder Masami Hiramatsu
2009-06-12 22:44 ` Masami Hiramatsu
2009-06-12 22:44 ` [RESEND][ PATCH -tip -v9 1/7] x86: instruction decoder API Masami Hiramatsu
2009-06-12 22:44 ` Masami Hiramatsu
2009-06-12 22:50 ` H. Peter Anvin [this message]
2009-06-12 22:45 ` [RESEND][ PATCH -tip -v9 2/7] x86: x86 instruction decoder build-time selftest Masami Hiramatsu
2009-06-12 22:45 ` Masami Hiramatsu
2009-06-12 22:45 ` [RESEND][ PATCH -tip -v9 3/7] kprobes: checks probe address is instruction boudary on x86 Masami Hiramatsu
2009-06-12 22:45 ` Masami Hiramatsu
2009-06-12 22:45 ` [RESEND][ PATCH -tip -v9 4/7] kprobes: cleanup fix_riprel() using insn decoder " Masami Hiramatsu
2009-06-12 22:45 ` Masami Hiramatsu
2009-06-12 22:45 ` [RESEND][ PATCH -tip -v9 5/7] x86: add pt_regs register and stack access APIs Masami Hiramatsu
2009-06-12 22:45 ` Masami Hiramatsu
2009-06-12 22:45 ` Masami Hiramatsu
2009-06-12 22:45 ` [RESEND][ PATCH -tip -v9 6/7] tracing: ftrace dynamic ftrace_event_call support Masami Hiramatsu
2009-06-12 22:45 ` [RESEND][ PATCH -tip -v9 7/7] tracing: add kprobe-based event tracer Masami Hiramatsu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4A32DBD1.30309@zytor.com \
--to=hpa@zytor.com \
--cc=ak@linux.intel.com \
--cc=ananth@in.ibm.com \
--cc=avi@redhat.com \
--cc=dle-develop@lists.sourceforge.net \
--cc=fweisbec@gmail.com \
--cc=jkenisto@us.ibm.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mhiramat@redhat.com \
--cc=mingo@elte.hu \
--cc=przemyslaw@pawelczyk.it \
--cc=rostedt@goodmis.org \
--cc=srikar@linux.vnet.ibm.com \
--cc=systemtap@sources.redhat.com \
--cc=vegard.nossum@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.