android-riscv64
android-riscv64 copied to clipboard
ART: Implement System.arraycopy intrinsic
Need to implement:
- [x]
SystemArrayCopy - [ ]
SystemArrayCopyChar - [ ]
SystemArrayCopyByte - [ ]
SystemArrayCopyInt
@enh-google could you assign issue to me
What the proper way for testing intrinsic implementation before submitting commit? I use
./art/test/testrunner/testrunner.py --target --no-prebuild --jit-on-first-use -j 8 --64
Is it enough?
i asked the ART folks, and one said:
I think using AOT would be better than JIT but you could also run both with
testrunner.py --target --64 --ndebug --optimizing --jit.Just to clarify, the way to use
testrunnerondeviceis to use the chroot method.
while another said:
I usually test only
--optimizingbut if there is some JIT-specific code, I also test with--jit. I must admit that I'm not using--jit-on-first-usebut it may actually be better than plain--jitin most cases (except when testing inline caches and other stuff that needs to warm up).On riscv64, we currently have
- two failures with
--optimizing: 137-cfi (needs investigation) and 640-checker-integer-valueof (missing Integer.valueOf() intrinsic).- four failures with
--jit: 137-cfi64, 845-data-image, 846-multidex-data-image, 913-heaps (all need investigation)
@enh-google thank you! Yes, I use chroot based testing on cuttlefisg, but have more failures even without my changes, probably because of have not latest source code. I'm going to rebase and check it with different plans.
(yeah, it's always worth running the tests before for this exact reason, especially with riscv64 where the status basically changes from day to day!)
Made PR https://android-review.googlesource.com/c/platform/art/+/2854660 for basic SystemArrayCopy
SystemArrayCopyChar/Byte/Int implementation: https://android-review.googlesource.com/c/platform/art/+/2939599