Commit d1aa7d0e authored by Artem Serov's avatar Artem Serov
Browse files

ART: Remove unneeded SideEffects for fatal instructions.

Remove "CanTriggerGC" side effect for NullCheck, BoundsCheck and
DivZeroCheck - instructions which have fatal slow paths. Even though
GC might happen after going through those instructions' slow path
execution doesn't return to the next instruction after the
exceptional one so side effects can be relaxed.

Performance improvement (angler, arm64, little core):
 - Geomean:                      2.8%
 - Particular benchmarks
   - algorithm/Sort.SystemSort: 13.0%
   - stanford/IntMM:            12.7%
   - stanford/Puzzle:            9.5%
   - benchmarksgame/revcomp:     8.9%
   - reversigame/Reversi:        3.5%

Test: 510-checker-try-catch.
Test: 706-checker-scheduler.
Test: 527-checker-array-access-split.
Test: test-art-host, test-art-target.

Change-Id: I55ac011822e5dbac82c828a700213dbea87329c8
parent 11529ab4
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment