On Wed, Sep 28, 2016 at 7:20 AM, Petar Jovanovic <petar.jovanovic@rt-rk.com> wrote:
>
> Hi everyone,
>
>
> Once the latest pull-requests from Stefan and Djordje get merged, we should have functionally correct LuaJIT AARCH64 port with LJ_GC64 JIT enabled.
>
> What remains to be done is a clean-up effort (w/some small optimizations) before the code can be presented to Mike.
>
> I suggest this to be done by one side only, to avoid different code styles and such issues. I would nominate Stefan and/or Djordje to do this, if no one objects.
>
> What do you say? Ryan?
>
>
> Regards,
>
> Petar

Hi Petar,

We (Linaro) were just discussing this yesterday at our Linaro Connect conference.

We agree that we have reached functional completeness.  This is absolutely fantastic news.

What sort of optimizations are necessary for upstreaming?

We agree that Stefan or Djordje should do the code/style updates to the port.  We were also discussing the future upstreaming effort.  As RT-RK has some experience with upstreaming the MIPS port, perhaps you guys will have the most luck with this process?  What are your thoughts on upstreaming time-frames and the effort involved?  The Linaro engineers will be prepared to work on the necessary changes following any code-review.

Remaining Functional Issues:

1) Garbage-collection issue preventing full completion of the test-suite:

Charles is working on this.

2) Another 48-bit address space bug/issue:

Any allocation done outside of the luajit allocator can run into an issue where that memory might be allocated above the bottom 47-bits that LuaJIT can address, for example some C code executing(allocating) via the LuaJIT FFI.

When LuaJIT tries to access such memory it will overwrite the higher bits in the pointer and access the wrong memory.

Further Efforts:

1) Integration Testing:

Zheng Xu is working on getting NGINX working with ARM64 jit enabled.

2) Continuous Integration:

Zheng Xu is working on setting up a Linaro CI loop and has written a dashboard http://64.28.99.85/ that includes per-patch performance information.

3) Further ARM64 Optimizations:

Charles will start to look at this.

--

Ryan S. Arnold | Linaro Toolchain Engineering Manager
ryan.arnold@linaro.org | ryanarn on #linaro-tcwg @ freenode.irc.net