diff options
author | Roland Levillain <rpl@google.com> | 2016-08-25 17:27:56 +0100 |
---|---|---|
committer | Roland Levillain <rpl@google.com> | 2016-08-25 17:27:56 +0100 |
commit | 16d9f949698faed28435af7aa9c9ebacbfd5d1a8 (patch) | |
tree | 870fbd499c10f70cecc5f62246b26e1332b600da /compiler/optimizing/code_generator.cc | |
parent | 7c95b4e22897a6f14ef79ec6e547e2eed686814a (diff) |
Re-enable the ArraySet fast path with Baker read barriers.
Benchmarks (ARM64) score variations on Nexus 5X with CPU
cores clamped at 960000 Hz (aosp_bullhead-userdebug build):
- Ritzperf - average (lower is better): -0.95% (virtually unchanged)
- CaffeineMark - average (higher is better): +2.50% (slightly better)
- DeltaBlue (lower is better): -0.55% (virtually unchanged)
- Richards - average (lower is better): +0.67% (virtually unchanged)
- SciMark2 - average (higher is better): -0.10% (virtually unchanged)
Details about Ritzperf benchmarks with meaningful variations
(lower is better):
- GenericCalcActions.MemAllocTest: -5.05% (better)
Details about CaffeineMark benchmarks with meaningful variations
(higher is better):
- Method: +16.88% (better)
Details about Richards benchmarks with meaningful variations
(lower is better):
- deutsch_acc_interface: +9.86% (worse)
Boot image code size variation on Nexus 5X
(aosp_bullhead-userdebug build):
- total ARM64 framework Oat files size change:
105933472 bytes -> 106027680 bytes (+0.09%)
- total ARM framework Oat files size change:
89157936 bytes -> 89239856 bytes (+0.09%)
Test: ART host and target (ARM, ARM64) tests.
Bug: 29516974
Bug: 29506760
Bug: 12687968
Change-Id: Ib9e9709712295e17804b8888ac10e3d518ff2e70
Diffstat (limited to 'compiler/optimizing/code_generator.cc')
-rw-r--r-- | compiler/optimizing/code_generator.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/compiler/optimizing/code_generator.cc b/compiler/optimizing/code_generator.cc index c532e72465..0d3f849143 100644 --- a/compiler/optimizing/code_generator.cc +++ b/compiler/optimizing/code_generator.cc @@ -1224,6 +1224,7 @@ void CodeGenerator::ValidateInvokeRuntimeWithoutRecordingPcInfo(HInstruction* in DCHECK(instruction->IsInstanceFieldGet() || instruction->IsStaticFieldGet() || instruction->IsArrayGet() || + instruction->IsArraySet() || instruction->IsLoadClass() || instruction->IsLoadString() || instruction->IsInstanceOf() || |