The "--no-inline" option caused Kawa to generate invalid bytecode
Per Bothner
per@bothner.com
Thu Oct 5 06:29:00 GMT 2017
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/
More information about the Kawa
mailing list