This is the mail archive of the
kawa@sourceware.org
mailing list for the Kawa project.
Re: The "--no-inline" option caused Kawa to generate invalid bytecode
- From: Per Bothner <per at bothner dot com>
- To: Kay Zheng <l04m33 at gmail dot com>, Kawa mailing list <kawa at sourceware dot org>
- Date: Wed, 4 Oct 2017 23:28:34 -0700
- Subject: Re: The "--no-inline" option caused Kawa to generate invalid bytecode
- Authentication-results: sourceware.org; auth=none
- References: <CAJCc8OwD+ea+e29=dPhGoZ9W8fZms_i-aOOLcxHrKgPZYANyrg@mail.gmail.com>
On 09/04/2017 03:25 AM, Kay Zheng wrote:
Hi Per,
I think I hit a bug regarding "(define-early-constant ...)" and the
"--no-inline" option. This is the problematic program:
... [caused a VerifyError].
The problem was that one point Kawa thought the current bytecode
location was "unreachable" - as it would be after a goto instruction.
That is why it didn't generate the necessary instructions.
Fixing that problem was relatively easy, but then I ran into another
problem in generating the stack-map tables (which are used by the verifier)
Fixing that problem looked messy and difficult.
I tried the test-case using the bytecode2 branch (announced in the
previous message) - and that worked.
So I decided to "punt" on this problem for now, and wait for it to be
fixed when bytecode2 is merged into master. Sorry about that.
Until the code is merged, I welcome testing of the bytecode2 branch.
--
--Per Bothner
per@bothner.com http://per.bothner.com/