Commit 33ac819b authored by Yevgeny Rouban's avatar Yevgeny Rouban Committed by Brian Carlstrom
Browse files

ART fix oat debug source map operations

Several places need to be fixed in OAT debug source map generation
(see comments in https://android-review.googlesource.com/#/c/102610/19/compiler/compiled_method.h

):
1. Source Maps are deduplicated in Compiler Driver by implicit conversion
   SrcMapElems to bytes. This implies incorrect operator==.
2. SrcMapElem operator < is peculiar, and cannot be applied to
   SrcMapElems with negative to_ fields
3. SrcMap.Arrange method is not elegant

The fix is to introduce explicit conversion from SrcMapElem to one
signed 64-bit value, which is used as a base of two new operators < and ==.
They are correct and intuitive. DedupeHashFunc is changed to
explicitly convert array elements to byte, so the explicit type conversion
from SrcMapElem to byte is used.

Minor fix: In Line Table Programs the file index set command is generated
only if the index gets new value.

Change-Id: I5e2c03404a437254fc2db3485b22bfc1799b39b7
Signed-off-by: default avatarYevgeny Rouban <yevgeny.y.rouban@intel.com>
parent 7713d104
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment