summaryrefslogtreecommitdiff
path: root/compiler/optimizing/graph_visualizer.cc
diff options
context:
space:
mode:
authorVladimir Marko <vmarko@google.com>2020-03-17 10:55:25 +0000
committerVladimir Marko <vmarko@google.com>2020-03-18 15:28:01 +0000
commit8947d2a0fe68d325a5f6db8259f47a0db931e503 (patch)
tree699842e460716da1e6465487834e27292d73065b /compiler/optimizing/graph_visualizer.cc
parent0b9b72e09d1c60bf9c9cd5b5ac0587024a3577aa (diff)
Fix compiling boot image extension with assume-verified.
The change https://android-review.googlesource.com/1246288 enabled AOT initialization of classes for the compiler filter "assume-verified". However, this was untested and broken because aborted transactions would leave created array classes with partially rolled-back state on the heap. Note that for other compiler filters, the verification step creates those array classes outside of a transaction. We fix this problem by making sure that the initialization of an array class does not create any transaction records for the class fields (we are keeping the defined class). (cherry picked from commit b68bb7a02ea795fa4defb18b3f9ce31879d66271) Test: m test-art-host-gtest Test: testrunner.py --host --optimizing Test: aosp_taimen-userdebug boots. Test: adb root && \ adb shell stop && \ adb shell setprop dalvik.vm.boot-image \ 'boot.art:/nonx/boot-framework.art!/system/etc/boot-image.prof' && \ adb shell setprop dalvik.vm.image-dex2oat-filter \ assume-verified && \ adb shell start # Starts correctly. Test: Extract the boot image extension compilation command from the verbose log, change compiler filter to "assume-verified" and execute with no crashes. Bug: 119800099 Bug: 150193586 Change-Id: I3d9371a05c133e8c4d4092a6889dc1575a6903a6
Diffstat (limited to 'compiler/optimizing/graph_visualizer.cc')
0 files changed, 0 insertions, 0 deletions