OSDN Git Service
Vladimir Marko [Tue, 5 Apr 2016 11:52:23 +0000 (11:52 +0000)]
Merge "Revert "Remove many `instrumentation` variables from goto interpreter.""
Vladimir Marko [Tue, 5 Apr 2016 11:48:02 +0000 (11:48 +0000)]
Revert "Remove many `instrumentation` variables from goto interpreter."
This reverts commit
4cb22b4f6d0afbdf424369df99c6eb11999f2473.
Change-Id: I1d84965c2cde2ffc2ebdb46fb5251691ea12569b
Vladimir Marko [Tue, 5 Apr 2016 09:23:52 +0000 (09:23 +0000)]
Merge "Clean up OatQuickMethodHeader after Quick removal."
Aart Bik [Mon, 4 Apr 2016 22:08:30 +0000 (22:08 +0000)]
Merge "Move DCHECK into loop."
Alex Light [Mon, 4 Apr 2016 21:46:30 +0000 (21:46 +0000)]
Merge "Fix issue with verification check failure on erroneous classes."
Andreas Gampe [Mon, 4 Apr 2016 21:24:59 +0000 (21:24 +0000)]
Merge "ART: Dump less maps"
Andreas Gampe [Sat, 2 Apr 2016 00:20:49 +0000 (17:20 -0700)]
ART: Dump less maps
Security has been tightened, so there are situations where we can't
load our files, and produce "log spam."
Bug:
27925454
(cherry picked from commit
dfd7b70bbab8157fb385e4a6d6e4b55ae2e4e892)
Change-Id: Ia8c76184ea5087d625cf52d4459f8a557eebfafe
Aart Bik [Mon, 4 Apr 2016 21:19:01 +0000 (14:19 -0700)]
Move DCHECK into loop.
Rationale:
Since pointer is non-null on loop entry, moving the check
into the while loop (rather than after) gives a more friendly
error message in debug mode when something goes wrong.
BUG=
27825731
BUG=
27627004
Change-Id: I2ea67b3ab6c4edc6815fea38a436e5c3c194e540
Alex Light [Mon, 4 Apr 2016 20:23:14 +0000 (13:23 -0700)]
Fix issue with verification check failure on erroneous classes.
Bug:
27924355
Change-Id: I7d680e7196aeb9e2e6ef54139634564e058174d7
Mathieu Chartier [Mon, 4 Apr 2016 18:40:51 +0000 (18:40 +0000)]
Merge "Mark array classes as verification attempted"
Mathieu Chartier [Sat, 2 Apr 2016 00:33:31 +0000 (17:33 -0700)]
Mark array classes as verification attempted
We now initialize all array classes in the compiler driver. This in
turn will ensure they are marked verified in the image. This
prevents dirty pages in the image since we would otherwise set the
flags in the zygote.
On BusinessCard:
Reduces shared dirty from 636k -> 432k for boot.art, and dirty pages
from 183 to 132.
(cherry picked from commit
3b674098bef6eaf7d3fb731878293ef715fe1080)
Change-Id: If3093e4e3242e4ee3ea120abe5be7db028290260
David Brazdil [Mon, 4 Apr 2016 17:48:02 +0000 (17:48 +0000)]
Merge "Revert "Refactor HGraphBuilder and SsaBuilder to remove HLocals""
David Brazdil [Mon, 4 Apr 2016 17:47:42 +0000 (17:47 +0000)]
Revert "Refactor HGraphBuilder and SsaBuilder to remove HLocals"
Bug:
27995065
This reverts commit
e3ff7b293be2a6791fe9d135d660c0cffe4bd73f.
Change-Id: I5363c7ce18f47fd422c15eed5423a345a57249d8
Roland Levillain [Mon, 4 Apr 2016 16:58:06 +0000 (16:58 +0000)]
Merge "Have Checker print lines of unmatched test cases."
Vladimir Marko [Thu, 31 Mar 2016 11:02:28 +0000 (12:02 +0100)]
Clean up OatQuickMethodHeader after Quick removal.
This reduces the size of the pre-header by 8 bytes, reducing
oat file size and mmapped .text section size. The memory
needed to store a CompiledMethod by dex2oat is also reduced,
for 32-bit dex2oat by 8B and for 64-bit dex2oat by 16B. The
aosp_flounder-userdebug 32-bit and 64-bit boot.oat are each
about 1.1MiB smaller.
Disable the broken StubTest.IMT, b/
27991555 .
Change-Id: I05fe45c28c8ffb7a0fa8b1117b969786748b1039
Roland Levillain [Mon, 4 Apr 2016 14:36:12 +0000 (14:36 +0000)]
Merge "Please Clang wrt stack frames in HInliner::TryBuildAndInlineHelper."
Roland Levillain [Mon, 4 Apr 2016 14:34:31 +0000 (15:34 +0100)]
Please Clang wrt stack frames in HInliner::TryBuildAndInlineHelper.
This change enables Clang to compile ART on MIPS64 without
complaining about stack frames larger than what
`-Wframe-larger-than` allows.
Change-Id: I72f424922d9cb3d01f7b8ba4e5cb9170b82870d9
Roland Levillain [Mon, 4 Apr 2016 13:56:36 +0000 (14:56 +0100)]
Have Checker print lines of unmatched test cases.
Change-Id: I8ea7eee4c29f23ad10fb4d49ca927fdde39c1ef9
Calin Juravle [Mon, 4 Apr 2016 13:35:53 +0000 (13:35 +0000)]
Merge "Use bit-level packing for InlineInfo in stackmaps as well."
Roland Levillain [Mon, 4 Apr 2016 12:58:23 +0000 (12:58 +0000)]
Merge "Fix BitCount intrinsics assertions."
Roland Levillain [Mon, 4 Apr 2016 11:37:58 +0000 (11:37 +0000)]
Merge "Improve debugging in art/compiler/optimizing/common_arm64.h."
David Brazdil [Mon, 4 Apr 2016 11:12:14 +0000 (11:12 +0000)]
Merge "Refactor HGraphBuilder and SsaBuilder to remove HLocals"
David Brazdil [Mon, 4 Apr 2016 11:11:34 +0000 (11:11 +0000)]
Merge "Build dominator tree before generating HInstructions"
David Brazdil [Wed, 2 Mar 2016 16:48:20 +0000 (16:48 +0000)]
Refactor HGraphBuilder and SsaBuilder to remove HLocals
This patch merges the instruction-building phases from HGraphBuilder
and SsaBuilder into a single HInstructionBuilder class. As a result,
it is not necessary to generate HLocal, HLoadLocal and HStoreLocal
instructions any more, as the builder produces SSA form directly.
Saves 5-15% of arena-allocated memory (see bug for more data):
GMS 20.46MB => 19.26MB (-5.86%)
Maps 24.12MB => 21.47MB (-10.98%)
YouTube 28.60MB => 26.01MB (-9.05%)
Bug:
27894376
Change-Id: Iefe28d40600c169c5d306fd2c77034ae19476d90
David Brazdil [Tue, 16 Feb 2016 09:26:07 +0000 (09:26 +0000)]
Build dominator tree before generating HInstructions
Second CL in the series of merging HGraphBuilder and SsaBuilder. This
patch refactors the builders so that dominator tree can be built
before any HInstructions are generated. This puts the SsaBuilder
removal of HLoadLocals/HStoreLocals straight after HGraphBuilder's
HInstruction generation phase. Next CL will therefore be able to
merge them.
This patch also adds util classes for iterating bytecode and switch
tables which allowed to simplify the code.
Bug:
27894376
Change-Id: Ic425d298b2e6e7980481ed697230b1a0b7904526
Mathieu Chartier [Fri, 1 Apr 2016 23:36:19 +0000 (23:36 +0000)]
Merge "Dump different fields in imgdiag"
Mathieu Chartier [Fri, 1 Apr 2016 20:56:41 +0000 (13:56 -0700)]
Dump different fields in imgdiag
Dump which fields are different, also print field values.
(cherry picked from commit
ec1533880f3606546baceafe2db513d1a63c20da)
Change-Id: Ie91ea07fb8ff7822fb7a03227cd7139e5e54db0e
Hiroshi Yamauchi [Fri, 1 Apr 2016 20:53:55 +0000 (20:53 +0000)]
Merge changes I297e2f20,Ia2e475e4,I9f1b4139
* changes:
Revert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp"""
Revert "ART: Improve JitProfile perf in x86 mterp"
Revert "ART: Improve JitProfile perf in x86_64 mterp"
Hiroshi Yamauchi [Fri, 1 Apr 2016 19:02:58 +0000 (12:02 -0700)]
Revert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp"""
This reverts commit
4a8ac9cee4312ac910fabf31c64d28d4c8362836.
570-checker-osr intermittently failing.
Bug:
27939339
Hiroshi Yamauchi [Fri, 1 Apr 2016 19:01:48 +0000 (12:01 -0700)]
Revert "ART: Improve JitProfile perf in x86 mterp"
This reverts commit
3e9edd1c63c1760f1bcffdbeaf721ebe3320f386.
570-checker-osr intermittently failing.
Bug:
27939339
Hiroshi Yamauchi [Fri, 1 Apr 2016 19:00:10 +0000 (12:00 -0700)]
Revert "ART: Improve JitProfile perf in x86_64 mterp"
This reverts commit
099a611a418df6f0695e3bcd32fe896043ca1398.
570-checker-osr intermittently failing.
Bug:
27939339
Change-Id: I9f1b4139118b1d803ea9c21319c3147d2f40fec9
Alex Light [Fri, 1 Apr 2016 18:42:25 +0000 (18:42 +0000)]
Merge "Make test 146 run with secondary dex file in classpath."
Alex Light [Fri, 1 Apr 2016 18:40:16 +0000 (11:40 -0700)]
Make test 146 run with secondary dex file in classpath.
Bug:
27931085
Change-Id: Ie0b15d5fc94c2bb6d3707ecf985f6f72110e4d68
Roland Levillain [Fri, 1 Apr 2016 17:37:46 +0000 (18:37 +0100)]
Improve debugging in art/compiler/optimizing/common_arm64.h.
Change-Id: I44ff2cb64c1fd45390ed4a6517af2488fdbdaf41
Alex Light [Fri, 1 Apr 2016 17:30:41 +0000 (17:30 +0000)]
Merge "Make InvokeInterfaceTrampoline check methods"
Roland Levillain [Fri, 1 Apr 2016 17:21:55 +0000 (18:21 +0100)]
Fix BitCount intrinsics assertions.
Bug:
27852035
Change-Id: Iba43039aadd9ba288b476d53cc2306a58356465f
Andreas Gampe [Fri, 1 Apr 2016 16:51:47 +0000 (16:51 +0000)]
Merge "ART: Better support for arraycopy in unstarted runtime"
Alex Light [Thu, 31 Mar 2016 21:34:33 +0000 (14:34 -0700)]
Make InvokeInterfaceTrampoline check methods
InvokeInterfaceTrampoline was causing problems by looking into the
ImtConflictTable of non-imt-conflict-methods. This makes it check for
that before doing so.
Bug:
27931085
Change-Id: I993178a371f8f46535a752e5c4d46d74777cefaf
David Srbecky [Fri, 1 Apr 2016 16:46:32 +0000 (16:46 +0000)]
Merge "Fix thumb bit in the oatdump symbolizer."
Andreas Gampe [Thu, 31 Mar 2016 20:30:53 +0000 (13:30 -0700)]
ART: Better support for arraycopy in unstarted runtime
Extend the System.arraycopy() cutout in the unstarted runtime
to support arrays with differing component types.
Add tests.
Bug:
27805718
Change-Id: Iaacd95a372e9bfa26e9055a06b0d8f0335b8d6d1
David Srbecky [Thu, 25 Feb 2016 21:55:03 +0000 (21:55 +0000)]
Use bit-level packing for InlineInfo in stackmaps as well.
Use the same approach as we do for stackmaps to reduce the size.
It saves 4.0 MB from non-debuggable boot.oat (AOSP).
It does not affect debuggable boot.oat.
It saves 3.6 MB (of 96.6 MB) from /system/framework/arm/ (GOOG).
It saves 0.6 MB (of 26.7 MB) from /system/framework/oat/arm/ (GOOG).
Field loads from inline-info get around 5% slower.
(based on the time it takes to load all inline-infos from boot.oat)
Change-Id: I67b0fa5eef74c1fdb013680d0231fd44ea696176
Vladimir Marko [Fri, 1 Apr 2016 14:40:08 +0000 (14:40 +0000)]
Merge "Fix a test info referencing AMD64 instead of ARM64."
Vladimir Marko [Fri, 1 Apr 2016 13:35:01 +0000 (14:35 +0100)]
Fix a test info referencing AMD64 instead of ARM64.
Change-Id: I195551b984c9ad1dce2bbf978c78831c5b98c803
Calin Juravle [Fri, 1 Apr 2016 12:28:51 +0000 (12:28 +0000)]
Merge "Pack stack map entries on bit level to save space."
Narayan Kamath [Fri, 1 Apr 2016 11:26:45 +0000 (11:26 +0000)]
Merge "unstarted_runtime: Update references to decimal format classes."
Narayan Kamath [Wed, 30 Mar 2016 14:41:54 +0000 (15:41 +0100)]
unstarted_runtime: Update references to decimal format classes.
We had a few special cases for thread local buffers and instances
created by our formatters / parsers. Update them to point to the
OpenJdk equivalents of the same classes.
bug:
27265238
Change-Id: Ida36a89bf414aeabea64b25004e193c770f906c2
Narayan Kamath [Fri, 1 Apr 2016 11:25:58 +0000 (11:25 +0000)]
Merge "unstarted_runtime: Add additional cutouts"
Narayan Kamath [Wed, 30 Mar 2016 12:11:18 +0000 (13:11 +0100)]
unstarted_runtime: Add additional cutouts
These allow us to initialize a further 90 classes. getIntVolatile
was used by the static initializer for ThreadLocal, which is used
quite frequently. This class was compile time initializable for M.
java.lang.System.getSecurityManager : 5 classes
sun.misc.Unsafe.getIntVolatile : 85 classes
bug:
27265238
Change-Id: I7e9820112bc87aec47c9b1b40ec6ba4f56172916
Andreas Gampe [Fri, 1 Apr 2016 01:13:17 +0000 (01:13 +0000)]
Merge "ART: Actually run tests cross arch for oatdump"
Mathieu Chartier [Thu, 31 Mar 2016 23:03:07 +0000 (23:03 +0000)]
Merge changes from topic 'image_verify'
* changes:
Disable checks for b/
27493510
Add verification for image ArtMethod declaring classes
Andreas Gampe [Thu, 31 Mar 2016 22:55:31 +0000 (22:55 +0000)]
Merge "ART: Do not run verification under lock"
Mathieu Chartier [Thu, 31 Mar 2016 22:05:45 +0000 (15:05 -0700)]
Disable checks for b/
27493510
Disabled for performance now that the bug is fixed. Still enabled
for debug builds.
Bug:
27493510
(cherry picked from commit
8790c7f9f7d684bff40d5731b2d8e3462ef8ed90)
Change-Id: I049d4319bca1114bd11a35bb13fc9d80c993260c
Andreas Gampe [Thu, 31 Mar 2016 02:52:58 +0000 (19:52 -0700)]
ART: Do not run verification under lock
Do not hold the object lock for the duration of the verification.
Instead, use the kStatusVerifying indicator to wait, similar to
resolution.
Bug:
27924355
Change-Id: Ie831f47dd830756a1b7002ca9c792f8ff67570dc
Mathieu Chartier [Tue, 8 Mar 2016 00:13:54 +0000 (16:13 -0800)]
Add verification for image ArtMethod declaring classes
Try and see if any ArtMethods in the image have declaring classes
that are not marked in the heap live bitmap. Trying to mark these
would cause a SIGSEGV since the bitmap is read only.
TODO: Disable for performance.
(cherry-picked from commit
03c1dd9858962071bf3f0c988abc39e0e6ed7a1e)
Bug:
27493510
Change-Id: I231b07b84d98dcd7ee1557c18956c86264058ee1
Andreas Gampe [Thu, 31 Mar 2016 22:52:51 +0000 (22:52 +0000)]
Merge "ART: Add support for DexFile compiler filter function"
Ying Wang [Thu, 31 Mar 2016 22:05:04 +0000 (22:05 +0000)]
Merge "Remove obsolete ANDROID_COMPILE_WITH_JACK"
Mathieu Chartier [Thu, 31 Mar 2016 21:59:35 +0000 (21:59 +0000)]
Merge "Add way to disable resolving for stack walk"
Mathieu Chartier [Thu, 31 Mar 2016 18:07:09 +0000 (11:07 -0700)]
Add way to disable resolving for stack walk
Only occurs for walking the inlined frames case.
Bug:
27857910
(cherry picked from commit
be2892bf771435eb451c74297b553f7dc9fea4ca)
Change-Id: Ied92be96f2f74ba02c02168f704443b95e7a4b04
David Srbecky [Fri, 12 Feb 2016 21:58:43 +0000 (21:58 +0000)]
Pack stack map entries on bit level to save space.
Use only the minimum number of bits required to store stack map data.
For example, if native_pc needs 5 bits and dex_pc needs 3 bits, they
will share the first byte of the stack map entry.
The header is changed to store bit offsets of the fields rather than
byte sizes. Offsets also make it easier to access later fields without
calculating sum of all previous sizes.
All of the header fields are byte sized or encoded as ULEB128 instead
of the previous fixed size encoding. This shrinks it by about half.
It saves 3.6 MB from non-debuggable boot.oat (AOSP).
It saves 3.1 MB from debuggable boot.oat (AOSP).
It saves 2.8 MB (of 99.4 MB) from /system/framework/arm/ (GOOG).
It saves 1.0 MB (of 27.8 MB) from /system/framework/oat/arm/ (GOOG).
Field loads from stackmaps seem to get around 10% faster.
(based on the time it takes to load all stackmap entries from boot.oat)
Bug:
27640410
Change-Id: I8bf0996b4eb24300c1b0dfc6e9d99fe85d04a1b7
Mathieu Chartier [Thu, 31 Mar 2016 21:05:30 +0000 (21:05 +0000)]
Merge "Obtain stack trace outside of critical section"
Mathieu Chartier [Tue, 29 Mar 2016 21:02:55 +0000 (14:02 -0700)]
Obtain stack trace outside of critical section
Fixes deadlock if the stack walk does allocations, changed stack
trace format to prevent slowdown.
Added missing GetInterfaceMethodIfProxy to fix a crash in maps.
Bug:
27857910
(cherry picked from commit
23428587d32361736d4c5e0ba7270c7602695a43)
Change-Id: I64373bcd87a68fdd1b58fb855db2b16c9f6ed36b
Richard Uhler [Thu, 31 Mar 2016 19:27:54 +0000 (19:27 +0000)]
Merge "Refine OatFileAssistant.MakeUpToDate failure result."
Andreas Gampe [Thu, 31 Mar 2016 00:19:48 +0000 (17:19 -0700)]
ART: Add support for DexFile compiler filter function
Add support for getting a non-profile-guided version of a given
compiler filter.
Bug:
27921071
(cherry picked from commit
fd97429f258acde6ee24a6f74c9050b2343e40cd)
Change-Id: I54735b61732e6a5c9dc62425d04bc740dd365083
David Srbecky [Thu, 31 Mar 2016 17:17:59 +0000 (18:17 +0100)]
Fix thumb bit in the oatdump symbolizer.
MethodDebugInfo expects code address without the bit set.
Therefore we need to clear it before passing it to the DWARF writer.
Change-Id: I37586b19f2a3fc95107abb6204a34e95a3816936
Vladimir Marko [Thu, 31 Mar 2016 17:53:44 +0000 (17:53 +0000)]
Merge "Remove many `instrumentation` variables from goto interpreter."
Vladimir Marko [Thu, 31 Mar 2016 17:38:23 +0000 (18:38 +0100)]
Remove many `instrumentation` variables from goto interpreter.
Clean up after
https://android-review.googlesource.com/210440 .
Change-Id: I7e7b1863a5627365de8d9a74f559ffe56cb4fdfa
Ying Wang [Thu, 31 Mar 2016 16:52:56 +0000 (16:52 +0000)]
Merge "Remove obsolete LOCAL_DX_FLAGS."
Hans Boehm [Thu, 31 Mar 2016 16:41:46 +0000 (16:41 +0000)]
Merge "Only log excessive timeouts if those appear accidental"
Bill Buzbee [Thu, 31 Mar 2016 14:21:18 +0000 (14:21 +0000)]
Merge "ART: Improve JitProfile perf in x86_64 mterp"
Bill Buzbee [Thu, 31 Mar 2016 14:07:15 +0000 (14:07 +0000)]
Merge "ART: Improve JitProfile perf in x86 mterp"
Vladimir Marko [Thu, 31 Mar 2016 13:24:15 +0000 (13:24 +0000)]
Merge "Fix silly gcc warning."
Vladimir Marko [Thu, 31 Mar 2016 11:34:48 +0000 (12:34 +0100)]
Fix silly gcc warning.
Explicitly specify the underlying type of LinkerPatch::Type
as uint8_t because gcc would select a bigger type and then
complain that
'art::LinkerPatch::patch_type_' is too small to hold all
values of 'enum class art::LinkerPatch::Type'
which is really ridiculous given that the enum contains only
a handful enumerators with default (small) values.
Change-Id: I4c4b21cde62e56b62488bae99d3690d900c3c29e
Roland Levillain [Thu, 31 Mar 2016 11:39:53 +0000 (11:39 +0000)]
Merge "Rename run-test 593-checker-boolean-to-integral-conversions."
Roland Levillain [Thu, 31 Mar 2016 11:32:07 +0000 (12:32 +0100)]
Rename run-test 593-checker-boolean-to-integral-conversions.
Shorten its name to "593-checker-boolean-to-integral-conv"
as some build configurations choke on too long filenames.
Bug:
27616343
Change-Id: I43439d7283920539817511249c6c1b430b3c9c95
Roland Levillain [Thu, 31 Mar 2016 10:39:52 +0000 (10:39 +0000)]
Merge "Fix Boolean to integral types conversions."
Vladimir Marko [Thu, 31 Mar 2016 10:10:07 +0000 (10:10 +0000)]
Merge "ART: Save or erase the file even if I/O failed"
David Brazdil [Thu, 31 Mar 2016 10:00:41 +0000 (10:00 +0000)]
Merge "ART: Fix TypeConversion from long const to float on x86_64"
Pavel Vyssotski [Wed, 16 Mar 2016 07:59:53 +0000 (13:59 +0600)]
ART: Fix TypeConversion from long const to float on x86_64
LocationsBuilderX86_64::VisitTypeConversion should load 32-bit
constant for float type.
Change-Id: I24335568af65e6b98bf07d36f90c8696497dd137
Signed-off-by: Pavel Vyssotski <pavel.n.vyssotski@intel.com>
Serguei Katkov [Tue, 29 Mar 2016 11:04:00 +0000 (17:04 +0600)]
ART: Improve JitProfile perf in x86_64 mterp
Change-Id: Ieae39e2cc8de8d381e6f9de0faa440c90e20a7a5
Signed-off-by: Serguei Katkov <serguei.i.katkov@intel.com>
Serguei Katkov [Tue, 29 Mar 2016 06:09:06 +0000 (12:09 +0600)]
ART: Improve JitProfile perf in x86 mterp
Change-Id: Id4c1e52352da8f6b7ce2008bc4adf52bc08847b2
Signed-off-by: Serguei Katkov <serguei.i.katkov@intel.com>
Sebastien Hertz [Thu, 31 Mar 2016 07:22:50 +0000 (09:22 +0200)]
Remove obsolete ANDROID_COMPILE_WITH_JACK
Removes the checks on ANDROID_COMPILE_WITH_JACK since it is going
to disappear and build tests with Jack by default.
Bug:
27400061
Change-Id: I1c08796a946411070e2aab6fe8c3c0262dfb4c52
Serdjuk, Nikolay Y [Tue, 22 Mar 2016 04:06:33 +0000 (10:06 +0600)]
ART: Save or erase the file even if I/O failed
It should close the file in any case.
Change-Id: Idb7db15bfecb0ac47839be3544cc2dce91096d7b
Signed-off-by: Serdjuk, Nikolay Y <nikolay.y.serdjuk@intel.com>
Ying Wang [Wed, 30 Mar 2016 20:55:33 +0000 (13:55 -0700)]
Remove obsolete LOCAL_DX_FLAGS.
Bug:
27400061
Change-Id: Iff834b58b47f8e5759e868159f85bab0f5c544ee
Richard Uhler [Wed, 30 Mar 2016 19:17:55 +0000 (12:17 -0700)]
Refine OatFileAssistant.MakeUpToDate failure result.
Avoid misleading log messages if MakeUpToDate fails because we decided
not to compile dex code.
Bug:
27641809
Change-Id: I184f8e89648183cba4ebe7a1dc5e0e6c8774c15b
Aart Bik [Wed, 30 Mar 2016 18:59:27 +0000 (18:59 +0000)]
Merge "Fix arm64 simplifier bug that tries to remove same statement twice. With fail-before/pass-after test (on arm64)."
Andreas Gampe [Wed, 30 Mar 2016 18:20:01 +0000 (18:20 +0000)]
Merge "ART: Fix unstarted runtime for Security"
Aart Bik [Tue, 29 Mar 2016 20:54:53 +0000 (13:54 -0700)]
Fix arm64 simplifier bug that tries to remove same statement twice.
With fail-before/pass-after test (on arm64).
Rationale:
This visitor removes statement "forward", which is a bit unusual, and
exposes a bug if statement is revisited and qualifies for removal again.
BUG=
27851582
Change-Id: Ia8cddba32b4dfe9fd480852deb358eaa977f0e1f
Roland Levillain [Wed, 30 Mar 2016 18:09:03 +0000 (19:09 +0100)]
Fix Boolean to integral types conversions.
Bug:
27616343
Change-Id: I050f92045bca1b8b5d6da53547cc617f17be84b1
Bill Buzbee [Wed, 30 Mar 2016 18:02:22 +0000 (18:02 +0000)]
Merge "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp"""
Vladimir Marko [Wed, 30 Mar 2016 17:29:44 +0000 (17:29 +0000)]
Merge "Optimizing: Clean up after const-string sharpening."
Vladimir Marko [Wed, 30 Mar 2016 15:30:21 +0000 (16:30 +0100)]
Optimizing: Clean up after const-string sharpening.
Do not look up the String for JIT, just check if it's in the
dex cache. Strings on hot paths should already be resolved
and we don't want to unnecessarily increase JIT compile time
to have a chance of improving a cold path.
Also, change the enum LinkerPatchType to be an inner enum
class of LinkerPatch and clean up casts between pointers and
uint64_t.
Change-Id: Ia6e0513af1a84ce94a3b30edac0c592157d374ec
Richard Uhler [Wed, 30 Mar 2016 15:19:11 +0000 (15:19 +0000)]
Merge "Don't return kPatchOatNeeded if there is no patch info."
Vladimir Marko [Wed, 30 Mar 2016 13:47:59 +0000 (13:47 +0000)]
Merge "Optimizing: Improve const-string code generation."
Vladimir Marko [Wed, 30 Mar 2016 09:58:54 +0000 (09:58 +0000)]
Merge "X86_64: Replace x86_64 xchg instruction use"
David Brazdil [Wed, 30 Mar 2016 09:46:14 +0000 (09:46 +0000)]
Merge "ART: Flush ostream less frequently in GraphVisualizer"
David Brazdil [Wed, 30 Mar 2016 08:41:02 +0000 (09:41 +0100)]
ART: Flush ostream less frequently in GraphVisualizer
We have seen Checker tests timing out on debug-GC configurations after
having switched to Optimizing because its GraphVisualizer makes too
many syscalls which the configuration keeps track of.
This patch replaces std::endl with "\n" across GraphVisualizer so as
to not flush the stream after every line of output.
Bug:
27826765
Change-Id: I5e3f1e92f8a84f36d324d56945e2d420b2d36a5d
Andreas Gampe [Wed, 30 Mar 2016 02:33:56 +0000 (19:33 -0700)]
ART: Fix unstarted runtime for Security
Derive the path for the libcore jar from the boot classpath string
instead of from the dex file location.
Bug:
27899446
Change-Id: I22a9be76303edb2ec72f4cf2e7a4b3bfed37d9c7
Andreas Gampe [Wed, 30 Mar 2016 00:47:15 +0000 (00:47 +0000)]
Merge "ART: Postpone interface-related dex failure to version 37"
Andreas Gampe [Tue, 29 Mar 2016 01:31:29 +0000 (18:31 -0700)]
ART: Postpone interface-related dex failure to version 37
For app compat, at least for now make the check for public-final-static
of interface members not fail on dex file versions less than 37. This
may be changed in future releases.
Bug:
27831184
Change-Id: If8ee50321298b951d4a78062c8eb583fec27394f
Bill Buzbee [Fri, 25 Mar 2016 13:16:55 +0000 (13:16 +0000)]
Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp""
Ready for review.
This reverts commit
6aef867f4d1a98a12bcdd65e9bf2ff894f0f2d7e.
Change-Id: I5d53ed2bedc7e429ce7d3cdf80b6696a9628740e