qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Richard Henderson <richard.henderson@linaro.org>
To: Alessandro Di Federico <ale.qemu@rev.ng>, qemu-devel@nongnu.org
Cc: babush@rev.ng, bcain@quicinc.com, tsimpson@quicinc.com,
	nizzo@rev.ng, Alessandro Di Federico <ale@rev.ng>
Subject: Re: [RFC PATCH 00/10] target/hexagon: introduce idef-parser
Date: Sun, 14 Feb 2021 13:52:25 -0800	[thread overview]
Message-ID: <517570b3-2e0f-3f3e-697b-5fa61754ba7e@linaro.org> (raw)
In-Reply-To: <20210211215051.2102435-1-ale.qemu@rev.ng>

On 2/11/21 1:50 PM, Alessandro Di Federico via wrote:
> From: Alessandro Di Federico <ale@rev.ng>
> 
> This patchset introduces the idef-parser for target/hexagon.
> It is based on "[PATCH v8 00/35] Hexagon patch series".
> 
> `idef-parser` is a build-time tool built using flex and bison. Its aim
> is to generate a large part of the tiny code generator frontend for
> Hexagon. The prototype of idef-parser has been presented at KVM Forum
> 2019 ("QEMU-Hexagon: Automatic Translation of the ISA Manual Pseudcode
> to Tiny Code Instructions"):
> 
>     https://www.youtube.com/watch?v=3EpnTYBOXCI
> 
> `target/hexagon/idef-parser/README.rst` provides an overview of the
> parser and its inner working.
> 
> Please consider this an RFC, this is our first large patchset. Feedback
> is more than welcome.

Well, first off, this fails to build with our gitlab CI.

There are several problems, apart from the new bison parse.error option
previously reported:

(1) bison and flex not added to dockerfiles, so the packages are not available
to CI.

(2) idef-parser program not marked with "native: true", so we get an early
meson error about that.

(3) flex = generator() does not specify both output files, so the proper
dependency on idef-parser.yy.h is not present.

(4) idef-parser.yy.h is placed in the wrong directory, because you used
'%option header-file="xyz"' instead of the command-line
'--headerfile=@OUTPUT1@'.  This results in an immediate compilation failure,
because the file isn't found.

(5) There's an odd mismatch in file naming, in which you have
idef-lexer.lex.yy.c but idef-parser.yy.h.  Not a bug, really, but it looks odd
when fixing 3 & 4.

I can provide a patch for these if you like, but they're fairly obvious when
you try it.


r~


  parent reply	other threads:[~2021-02-14 21:53 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-11 21:50 [RFC PATCH 00/10] target/hexagon: introduce idef-parser Alessandro Di Federico via
2021-02-11 21:50 ` [RFC PATCH 01/10] target/hexagon: update MAINTAINERS for idef-parser Alessandro Di Federico via
2021-02-11 21:50 ` [RFC PATCH 02/10] target/hexagon: import README " Alessandro Di Federico via
2021-02-11 21:50 ` [RFC PATCH 03/10] target/hexagon: make helper functions non-static Alessandro Di Federico via
2021-02-11 23:04   ` Philippe Mathieu-Daudé
2021-02-11 23:23     ` Philippe Mathieu-Daudé
2021-02-11 21:50 ` [RFC PATCH 04/10] target/hexagon: introduce new helper functions Alessandro Di Federico via
2021-02-11 23:22   ` Philippe Mathieu-Daudé
2021-02-11 21:50 ` [RFC PATCH 05/10] target/hexagon: expose next PC in DisasContext Alessandro Di Federico via
2021-02-11 21:50 ` [RFC PATCH 06/10] target/hexagon: prepare input for the idef-parser Alessandro Di Federico via
2021-02-11 21:50 ` [RFC PATCH 07/10] target/hexagon: import lexer for idef-parser Alessandro Di Federico via
2021-02-11 21:50 ` [RFC PATCH 08/10] target/hexagon: import parser " Alessandro Di Federico via
2021-02-14 16:56   ` Richard Henderson
2021-02-25 15:24     ` Alessandro Di Federico via
2021-02-11 21:50 ` [RFC PATCH 09/10] target/hexagon: call idef-parser functions Alessandro Di Federico via
2021-02-11 21:50 ` [RFC PATCH 10/10] target/hexagon: import additional tests Alessandro Di Federico via
2021-02-15  1:34   ` Richard Henderson
2021-02-14 21:52 ` Richard Henderson [this message]
2021-02-25 15:24   ` [RFC PATCH 00/10] target/hexagon: introduce idef-parser Alessandro Di Federico via

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=517570b3-2e0f-3f3e-697b-5fa61754ba7e@linaro.org \
    --to=richard.henderson@linaro.org \
    --cc=ale.qemu@rev.ng \
    --cc=ale@rev.ng \
    --cc=babush@rev.ng \
    --cc=bcain@quicinc.com \
    --cc=nizzo@rev.ng \
    --cc=qemu-devel@nongnu.org \
    --cc=tsimpson@quicinc.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).