qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Michael Rolnik <mrolnik@gmail.com>
To: "Philippe Mathieu-Daudé" <philmd@redhat.com>
Cc: "thuth@redhat.com" <thuth@redhat.com>,
	"me@xcancerberox.com.ar" <me@xcancerberox.com.ar>,
	"richard.henderson@linaro.org" <richard.henderson@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"dovgaluk@ispras.ru" <dovgaluk@ispras.ru>,
	"imammedo@redhat.com" <imammedo@redhat.com>,
	Aleksandar Markovic <aleksandar.m.mail@gmail.com>
Subject: Re: [PATCH v37 10/17] target/avr: Add instruction disassembly function
Date: Tue, 3 Dec 2019 16:24:42 +0200	[thread overview]
Message-ID: <CAK4993hmEbtf40p1fsRGEmTJHMdE8x61hxzrxdCMiR8v+BC2XA@mail.gmail.com> (raw)
In-Reply-To: <b24d01f6-7112-8074-f0bf-623024ae4176@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 6125 bytes --]

Hi Philippe.

I copied Richard's file and modified it's content, that's why Richard is
there.

Regards,
Michael Rolnik

On Tue, Dec 3, 2019 at 1:18 PM Philippe Mathieu-Daudé <philmd@redhat.com>
wrote:

> On 12/2/19 8:04 AM, Michael Rolnik wrote:
> > Aleksandar.
> >
> > If this code is going to be merge in 2019 I should modify al the
> > copyrights, right. or should I put 2020 in?
>
> Usually the copyright date is when you first contributed your code to
> the world (here, the list). If a patch was on the list in 2018, even if
> you made modifications and repost it, (c) is 2018.
>
> IOW, If your series gets merged in 2020, it will be merged as (c) 2019.
>
> I'm not sure why Richard's (c) appears here, is target/avr/disas.c based
> on target/openrisc/disas.c? Then it looks correct to me, but IANAL.
>
> > On Mon, Dec 2, 2019 at 2:28 AM Aleksandar Markovic
> > <aleksandar.m.mail@gmail.com <mailto:aleksandar.m.mail@gmail.com>>
> wrote:
> >
> >
> >
> >     On Wednesday, November 27, 2019, Michael Rolnik <mrolnik@gmail.com
> >     <mailto:mrolnik@gmail.com>> wrote:
> >
> >         Provide function disassembles executed instruction when `-d
> >         in_asm` is
> >         provided
> >
> >         Example:
> >         `./avr-softmmu/qemu-system-avr -bios
> >         free-rtos/Demo/AVR_ATMega2560_GCC/demo.elf -d in_asm` will
> >         produce something like the following
> >
> >         ```
> >              ...
> >              IN:
> >              0x0000014a:  CALL      0x3808
> >
> >              IN: main
> >              0x00003808:  CALL      0x4b4
> >
> >              IN: vParTestInitialise
> >              0x000004b4:  LDI       r24, 255
> >              0x000004b6:  STS       r24, 0
> >              0x000004b8:  MULS      r16, r20
> >              0x000004ba:  OUT       $1, r24
> >              0x000004bc:  LDS       r24, 0
> >              0x000004be:  MULS      r16, r20
> >              0x000004c0:  OUT       $2, r24
> >              0x000004c2:  RET
> >              ...
> >         ```
> >
> >         Signed-off-by: Michael Rolnik <mrolnik@gmail.com
> >         <mailto:mrolnik@gmail.com>>
> >         Suggested-by: Richard Henderson <richard.henderson@linaro.org
> >         <mailto:richard.henderson@linaro.org>>
> >         Suggested-by: Philippe Mathieu-Daudé <philmd@redhat.com
> >         <mailto:philmd@redhat.com>>
> >         Suggested-by: Aleksandar Markovic <aleksandar.m.mail@gmail.com
> >         <mailto:aleksandar.m.mail@gmail.com>>
> >         Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com
> >         <mailto:philmd@redhat.com>>
> >         Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com
> >         <mailto:philmd@redhat.com>>
> >         ---
> >           target/avr/cpu.h       |   1 +
> >           target/avr/cpu.c       |   2 +-
> >           target/avr/disas.c     | 228
> >         +++++++++++++++++++++++++++++++++++++++++
> >           target/avr/translate.c |  11 ++
> >           4 files changed, 241 insertions(+), 1 deletion(-)
> >           create mode 100644 target/avr/disas.c
> >
> >         diff --git a/target/avr/cpu.h b/target/avr/cpu.h
> >         index 9ea5260165..a3e615a1eb 100644
> >         --- a/target/avr/cpu.h
> >         +++ b/target/avr/cpu.h
> >         @@ -157,6 +157,7 @@ bool avr_cpu_exec_interrupt(CPUState *cpu,
> >         int int_req);
> >           hwaddr avr_cpu_get_phys_page_debug(CPUState *cpu, vaddr addr);
> >           int avr_cpu_gdb_read_register(CPUState *cpu, uint8_t *buf, int
> >         reg);
> >           int avr_cpu_gdb_write_register(CPUState *cpu, uint8_t *buf,
> >         int reg);
> >         +int avr_print_insn(bfd_vma addr, disassemble_info *info);
> >
> >           static inline int avr_feature(CPUAVRState *env, int feature)
> >           {
> >         diff --git a/target/avr/cpu.c b/target/avr/cpu.c
> >         index dae56d7845..52ec21dd16 100644
> >         --- a/target/avr/cpu.c
> >         +++ b/target/avr/cpu.c
> >         @@ -83,7 +83,7 @@ static void avr_cpu_reset(CPUState *cs)
> >           static void avr_cpu_disas_set_info(CPUState *cpu,
> >         disassemble_info *info)
> >           {
> >               info->mach = bfd_arch_avr;
> >         -    info->print_insn = NULL;
> >         +    info->print_insn = avr_print_insn;
> >           }
> >
> >           static void avr_cpu_realizefn(DeviceState *dev, Error **errp)
> >         diff --git a/target/avr/disas.c b/target/avr/disas.c
> >         new file mode 100644
> >         index 0000000000..a51ade7c2a
> >         --- /dev/null
> >         +++ b/target/avr/disas.c
> >         @@ -0,0 +1,228 @@
> >         +/*
> >         + * AVR disassembler
> >         + *
> >         + * Copyright (c) 2018 Richard Henderson <rth@twiddle.net
> >         <mailto:rth@twiddle.net>>
> >
> >
> >     Just a detail: since this file is created in 2019, the copyright
> >     year should be 2019 too.
> >
> >         + * Copyright (c) 2019 Michael Rolnik <mrolnik@gmail.com
> >         <mailto:mrolnik@gmail.com>>
> >         + *
> >         + * This program is free software: you can redistribute it
> >         and/or modify
> >         + * it under the terms of the GNU General Public License as
> >         published by
> >         + * the Free Software Foundation, either version 2 of the
> >         License, or
> >         + * (at your option) any later version.
> >         + *
> >         + * This program is distributed in the hope that it will be
> useful,
> >         + * but WITHOUT ANY WARRANTY; without even the implied warranty
> of
> >         + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> >         + * GNU General Public License for more details.
> >         + *
> >         + * You should have received a copy of the GNU General Public
> >         License
> >         + * along with this program.  If not, see
> >         <http://www.gnu.org/licenses/>.
> >         + */
> [...]
>
>

-- 
Best Regards,
Michael Rolnik

[-- Attachment #2: Type: text/html, Size: 9233 bytes --]

  reply	other threads:[~2019-12-03 14:43 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-27 17:52 [PATCH v37 00/17] QEMU AVR 8 bit cores Michael Rolnik
2019-11-27 17:52 ` [PATCH v37 01/17] target/avr: Add outward facing interfaces and core CPU logic Michael Rolnik
2019-11-27 22:25   ` Philippe Mathieu-Daudé
2019-11-28 12:04     ` Michael Rolnik
2019-11-27 17:52 ` [PATCH v37 02/17] target/avr: Add instruction helpers Michael Rolnik
2019-11-27 22:26   ` Philippe Mathieu-Daudé
2019-11-27 17:52 ` [PATCH v37 03/17] target/avr: Add instruction decoding Michael Rolnik
2019-11-27 17:52 ` [PATCH v37 04/17] target/avr: Add instruction translation - Registers definition Michael Rolnik
2019-11-27 17:52 ` [PATCH v37 05/17] target/avr: Add instruction translation - Arithmetic and Logic Instructions Michael Rolnik
2019-11-30 10:33   ` Aleksandar Markovic
2019-11-30 16:29     ` Aleksandar Markovic
2019-11-30 17:05       ` Michael Rolnik
2019-11-30 17:14         ` Aleksandar Markovic
2019-11-30 23:11         ` Aleksandar Markovic
2019-12-02  7:41           ` Michael Rolnik
2019-12-02  8:55             ` Aleksandar Markovic
2019-12-02  9:01               ` Aleksandar Markovic
2019-11-27 17:52 ` [PATCH v37 06/17] target/avr: Add instruction translation - Branch Instructions Michael Rolnik
2019-11-27 17:52 ` [PATCH v37 07/17] target/avr: Add instruction translation - Bit and Bit-test Instructions Michael Rolnik
2019-12-05 12:28   ` Aleksandar Markovic
2019-12-05 13:17     ` Michael Rolnik
2019-12-05 13:28       ` Michael Rolnik
2019-11-27 17:52 ` [PATCH v37 08/17] target/avr: Add instruction translation - MCU Control Instructions Michael Rolnik
2019-11-27 17:52 ` [PATCH v37 09/17] target/avr: Add instruction translation - CPU main translation function Michael Rolnik
2019-11-27 17:52 ` [PATCH v37 10/17] target/avr: Add instruction disassembly function Michael Rolnik
2019-12-02  0:28   ` Aleksandar Markovic
2019-12-02  7:04     ` Michael Rolnik
2019-12-02 10:12       ` Aleksandar Markovic
2019-12-02 12:01       ` Aleksandar Markovic
2019-12-03 11:18       ` Philippe Mathieu-Daudé
2019-12-03 14:24         ` Michael Rolnik [this message]
2019-11-27 17:52 ` [PATCH v37 11/17] target/avr: Add limited support for USART and 16 bit timer peripherals Michael Rolnik
2019-11-27 17:52 ` [PATCH v37 12/17] target/avr: Add example board configuration Michael Rolnik
2019-11-30 10:49   ` Aleksandar Markovic
2019-11-30 16:57     ` Michael Rolnik
2019-12-03 11:29       ` Philippe Mathieu-Daudé
2019-11-27 17:52 ` [PATCH v37 13/17] target/avr: Register AVR support with the rest of QEMU Michael Rolnik
2019-12-05 12:55   ` Aleksandar Markovic
2019-11-27 17:52 ` [PATCH v37 14/17] target/avr: Update build system Michael Rolnik
2019-11-27 17:52 ` [PATCH v37 15/17] target/avr: Add boot serial test Michael Rolnik
2019-11-27 17:52 ` [PATCH v37 16/17] target/avr: Add Avocado test Michael Rolnik
2019-11-27 17:52 ` [PATCH v37 17/17] target/avr: Update MAINTAINERS file Michael Rolnik
2019-11-28 20:19   ` Philippe Mathieu-Daudé
2019-11-30 13:43   ` Aleksandar Markovic
2019-11-27 21:06 ` [PATCH v37 00/17] QEMU AVR 8 bit cores Aleksandar Markovic
2019-11-28 12:28   ` Michael Rolnik
2019-11-28 13:22     ` Aleksandar Markovic
2019-11-28 13:25       ` Michael Rolnik
2019-11-28 13:31         ` Aleksandar Markovic
2019-11-28 16:20           ` Alex Bennée
2019-11-28 19:32             ` Aleksandar Markovic
2019-11-29 22:49             ` Aleksandar Markovic
2019-11-29 23:52               ` Aleksandar Markovic
2019-11-28 13:34         ` Philippe Mathieu-Daudé
2019-11-28 13:41           ` Aleksandar Markovic
2019-11-28 13:46             ` Michael Rolnik
2019-11-28 14:16               ` Philippe Mathieu-Daudé
2019-11-28 14:50                 ` Aleksandar Markovic
2019-11-28 18:09                 ` Aleksandar Markovic
2019-12-01 13:09               ` Aleksandar Markovic
2019-12-01 13:11                 ` Aleksandar Markovic
2019-11-29  9:24     ` Sarah Harris
2019-11-28 15:00 ` Aleksandar Markovic
2019-11-30 11:28 ` Aleksandar Markovic
2019-11-30 17:00   ` Michael Rolnik
2019-12-02  9:35     ` Aleksandar Markovic
2019-12-02  9:59       ` Aleksandar Markovic
2019-12-02 13:24         ` Michael Rolnik
2019-12-02 14:01           ` Aleksandar Markovic
2019-12-02 16:09             ` Michael Rolnik
2019-12-02 21:15               ` Aleksandar Markovic
2019-12-02 23:37                 ` Aleksandar Markovic
2019-12-03  1:17                   ` Aleksandar Markovic
2019-12-03  1:48                     ` Aleksandar Markovic
2019-12-03  9:56                       ` Michael Rolnik

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=CAK4993hmEbtf40p1fsRGEmTJHMdE8x61hxzrxdCMiR8v+BC2XA@mail.gmail.com \
    --to=mrolnik@gmail.com \
    --cc=aleksandar.m.mail@gmail.com \
    --cc=dovgaluk@ispras.ru \
    --cc=imammedo@redhat.com \
    --cc=me@xcancerberox.com.ar \
    --cc=philmd@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=thuth@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).