OSDN Git Service

Fix x86 & x86-64 UnsafeGetObject intrinsics with read barriers.
authorSang, Chunlei <chunlei.sang@intel.com>
Tue, 5 Apr 2016 09:12:59 +0000 (17:12 +0800)
committerRoland Levillain <rpl@google.com>
Thu, 23 Jun 2016 13:05:17 +0000 (14:05 +0100)
commit0fcd2b84210db2bcf8b2d7a2b98a1a2bca367cac
tree4619d1fb4bda64c01df3a6588b5c726510a72a1c
parent61b370e4559a84910fe5bf0b2b1d7216ce805315
Fix x86 & x86-64 UnsafeGetObject intrinsics with read barriers.

The implementation was incorrectly interpreting the 'offset'
input as an index in a (4-byte) object reference array,
whereas it is a (1-byte) offset to an object reference field
within the 'base' (object) input.

Bug: 29516905
Change-Id: Idfbead8289222b55069816a81284401eff791e85
Test: Covered by test/004-UnsafeTest.
compiler/optimizing/code_generator_x86.h
compiler/optimizing/code_generator_x86_64.h
compiler/optimizing/intrinsics_x86.cc
compiler/optimizing/intrinsics_x86_64.cc