diff options
| author | 2023-09-20 16:44:26 -0700 | |
|---|---|---|
| committer | 2023-09-21 07:12:29 +0000 | |
| commit | 85887b58f472916ce1b03978ca8681c64e037a26 (patch) | |
| tree | dd455f90161c027011fe338581a167ea8707903a /compiler/optimizing/stack_map_test.cc | |
| parent | 80eeb4f3a06431e66b15950498487f68f7c6ded1 (diff) | |
riscv64: Fix crash in ExecuteNterpWithClinitImpl
ArtMethod::declaring_class_ is a GcRoot, which is only 32 bits wide.
With the 64-bit load, if the adjacent ArtMethod::access_flags_ field is
nonzero, the pointer in t0 will be invalid, and dereferencing it will
cause a segmentation fault. This was observed as system_server crashing
during the second boot of the device.
Test: Boot AOSP on HiFive Unmatched twice
Change-Id: Iaee482f6fcf963dc6d330650aa4be58311a807ad
Diffstat (limited to 'compiler/optimizing/stack_map_test.cc')
0 files changed, 0 insertions, 0 deletions