From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50881) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YNVlb-0004Kw-GU for qemu-devel@nongnu.org; Mon, 16 Feb 2015 19:11:56 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YNVlY-0003GA-6l for qemu-devel@nongnu.org; Mon, 16 Feb 2015 19:11:55 -0500 Received: from mail-db3on0065.outbound.protection.outlook.com ([157.55.234.65]:52928 helo=emea01-db3-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YNVlX-0003G5-V6 for qemu-devel@nongnu.org; Mon, 16 Feb 2015 19:11:52 -0500 Message-ID: <54E28743.4070805@ezchip.com> Date: Mon, 16 Feb 2015 19:11:47 -0500 From: Chris Metcalf MIME-Version: 1.0 References: <54DD17BC.5040006@sunrus.com.cn> <54DD180B.3080004@sunrus.com.cn> <54DE8DCA.6030302@sunrus.com.cn> <54DEBC3E.4000805@sunrus.com.cn> <54DEC303.6030502@ezchip.com> <54DF6F90.60406@sunrus.com.cn> <54E1669F.9090402@sunrus.com.cn> <54E20265.9040606@sunrus.com.cn> <54E2787A.7010101@sunrus.com.cn> In-Reply-To: Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 1/5] target-tile: Firstly add to qemu with minimized features List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell , Chen Gang S Cc: Max Filippov , "rth@twiddle.net" , Riku Voipio , qemu-devel , "walt@tilera.com" On 2/16/2015 6:46 PM, Peter Maydell wrote: > On 17 February 2015 at 08:08, Chen Gang S wrote: >> On 2/16/15 23:24, Max Filippov wrote: >>> Disassembler is not a crucial part of QEMU target. >> For me, it is necessary. We need disassemble target binary instructions >> (recognize them), then translate them into tcg instructions which are >> grouped by Translate Block. > No, Max is correct. What QEMU calls the "disassembler" is just > used for debug logging: it is code that goes from target binary > instructions to printed display of assembly language instructions. > This is completely separate code from the code in target-*/translate.c > which decodes target binary instructions and emits TCG opcodes. > That code is generally called the translator or the decoder, and > it is always written from scratch specifically for QEMU. Don't > try to reuse code from binutils there. The kernel disassembly that Chen Gang is looking at is basically just an instruction recognizer; it doesn't even include text strings for opcodes, for example. But my guess is that it is exactly the right starting building block for decoding target binary instructions. -- Chris Metcalf, EZChip Semiconductor http://www.ezchip.com