OSDN Git Service

android-x86/art.git
8 years agoMerge "ART: Dump less maps"
Andreas Gampe [Mon, 4 Apr 2016 21:38:23 +0000 (21:38 +0000)]
Merge "ART: Dump less maps"
am: 23cb752

* commit '23cb752adb33e77864b7d8f5bc5a1d3a08ab2ac2':
  ART: Dump less maps

Change-Id: Iaff4f923a8f875a764f5a8dc7c122d01ad765205

8 years agoMerge "ART: Dump less maps"
Andreas Gampe [Mon, 4 Apr 2016 21:24:59 +0000 (21:24 +0000)]
Merge "ART: Dump less maps"

8 years agoART: 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

8 years agoMerge "Mark array classes as verification attempted"
Mathieu Chartier [Mon, 4 Apr 2016 18:50:12 +0000 (18:50 +0000)]
Merge "Mark array classes as verification attempted"
am: 2746c68

* commit '2746c68840535294b1febc2224e81280f002909d':
  Mark array classes as verification attempted

Change-Id: Ibfe84255283ee005f9317663fcd44fcffc525c5d

8 years agoMerge "Mark array classes as verification attempted"
Mathieu Chartier [Mon, 4 Apr 2016 18:40:51 +0000 (18:40 +0000)]
Merge "Mark array classes as verification attempted"

8 years agoMark 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

8 years agoMerge "Revert "Refactor HGraphBuilder and SsaBuilder to remove HLocals""
David Brazdil [Mon, 4 Apr 2016 17:56:46 +0000 (17:56 +0000)]
Merge "Revert "Refactor HGraphBuilder and SsaBuilder to remove HLocals""
am: 7d9a5b0

* commit '7d9a5b0fbceef5806f059060d47533b9e699ec28':
  Revert "Refactor HGraphBuilder and SsaBuilder to remove HLocals"

Change-Id: Ib027ac7dec02c175d50192f6b1ad15ed2fb19a28

8 years agoMerge "Revert "Refactor HGraphBuilder and SsaBuilder to remove HLocals""
David Brazdil [Mon, 4 Apr 2016 17:48:02 +0000 (17:48 +0000)]
Merge "Revert "Refactor HGraphBuilder and SsaBuilder to remove HLocals""

8 years agoRevert "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

8 years agoMerge "Have Checker print lines of unmatched test cases."
Roland Levillain [Mon, 4 Apr 2016 17:06:31 +0000 (17:06 +0000)]
Merge "Have Checker print lines of unmatched test cases."
am: 75c221d

* commit '75c221dcffab45e3c1e4ba8b8cd048c87497334f':
  Have Checker print lines of unmatched test cases.

Change-Id: I37f42fa427a37dcddb077805f9eab316b759c71b

8 years agoMerge "Have Checker print lines of unmatched test cases."
Roland Levillain [Mon, 4 Apr 2016 16:58:06 +0000 (16:58 +0000)]
Merge "Have Checker print lines of unmatched test cases."

8 years agoMerge "Please Clang wrt stack frames in HInliner::TryBuildAndInlineHelper."
Roland Levillain [Mon, 4 Apr 2016 14:44:57 +0000 (14:44 +0000)]
Merge "Please Clang wrt stack frames in HInliner::TryBuildAndInlineHelper."
am: eb98c0d

* commit 'eb98c0ded592cfca8187c744393c82efd1020b2a':
  Please Clang wrt stack frames in HInliner::TryBuildAndInlineHelper.

Change-Id: I6129f9834e5d45975f63100f7e230e6f92dbf577

8 years agoMerge "Please Clang wrt stack frames in HInliner::TryBuildAndInlineHelper."
Roland Levillain [Mon, 4 Apr 2016 14:36:12 +0000 (14:36 +0000)]
Merge "Please Clang wrt stack frames in HInliner::TryBuildAndInlineHelper."

8 years agoPlease 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

8 years agoHave Checker print lines of unmatched test cases.
Roland Levillain [Mon, 4 Apr 2016 13:56:36 +0000 (14:56 +0100)]
Have Checker print lines of unmatched test cases.

Change-Id: I8ea7eee4c29f23ad10fb4d49ca927fdde39c1ef9

8 years agoMerge "Use bit-level packing for InlineInfo in stackmaps as well."
David Srbecky [Mon, 4 Apr 2016 13:43:04 +0000 (13:43 +0000)]
Merge "Use bit-level packing for InlineInfo in stackmaps as well."
am: 2f92ec8

* commit '2f92ec8a52faa4bc566af8fa34212f3e749e82c8':
  Use bit-level packing for InlineInfo in stackmaps as well.

Change-Id: I548b78a3602f3aa9e9268bcd7188d683d153e6e3

8 years agoMerge "Use bit-level packing for InlineInfo in stackmaps as well."
Calin Juravle [Mon, 4 Apr 2016 13:35:53 +0000 (13:35 +0000)]
Merge "Use bit-level packing for InlineInfo in stackmaps as well."

8 years agoMerge "Fix BitCount intrinsics assertions."
Roland Levillain [Mon, 4 Apr 2016 13:01:45 +0000 (13:01 +0000)]
Merge "Fix BitCount intrinsics assertions."
am: 75ee5c2

* commit '75ee5c28ab583c532066b64d6337a5f78d6aa2ad':
  Fix BitCount intrinsics assertions.

Change-Id: Ic13f9e6c95a6b74429f828a0f6c02066522e6a55

8 years agoMerge "Fix BitCount intrinsics assertions."
Roland Levillain [Mon, 4 Apr 2016 12:58:23 +0000 (12:58 +0000)]
Merge "Fix BitCount intrinsics assertions."

8 years agoMerge "Improve debugging in art/compiler/optimizing/common_arm64.h."
Roland Levillain [Mon, 4 Apr 2016 11:43:47 +0000 (11:43 +0000)]
Merge "Improve debugging in art/compiler/optimizing/common_arm64.h."
am: 7e168f6

* commit '7e168f65949e70069418148b0b60ac86d04339d0':
  Improve debugging in art/compiler/optimizing/common_arm64.h.

Change-Id: I66af4fbaba2f922d7a5febc8b66b7054c15e9db0

8 years agoMerge "Improve debugging in art/compiler/optimizing/common_arm64.h."
Roland Levillain [Mon, 4 Apr 2016 11:37:58 +0000 (11:37 +0000)]
Merge "Improve debugging in art/compiler/optimizing/common_arm64.h."

8 years agoMerge "Refactor HGraphBuilder and SsaBuilder to remove HLocals"
David Brazdil [Mon, 4 Apr 2016 11:16:02 +0000 (11:16 +0000)]
Merge "Refactor HGraphBuilder and SsaBuilder to remove HLocals"
am: a999af4

* commit 'a999af471f4288b7f7e03b59f66e2387839676bf':
  Refactor HGraphBuilder and SsaBuilder to remove HLocals

Change-Id: Iee3a92cbfea2ff922277bb84960c370e033bd56c

8 years agoMerge "Build dominator tree before generating HInstructions"
David Brazdil [Mon, 4 Apr 2016 11:16:01 +0000 (11:16 +0000)]
Merge "Build dominator tree before generating HInstructions"
am: a2013f6

* commit 'a2013f66442bfe429f027b6f8fb5f88635fe51d5':
  Build dominator tree before generating HInstructions

Change-Id: I23b98c6fcd9deb2d0786e4a6dc9ec33c21ebb6b1

8 years agoMerge "Refactor HGraphBuilder and SsaBuilder to remove HLocals"
David Brazdil [Mon, 4 Apr 2016 11:12:14 +0000 (11:12 +0000)]
Merge "Refactor HGraphBuilder and SsaBuilder to remove HLocals"

8 years agoMerge "Build dominator tree before generating HInstructions"
David Brazdil [Mon, 4 Apr 2016 11:11:34 +0000 (11:11 +0000)]
Merge "Build dominator tree before generating HInstructions"

8 years agoRefactor HGraphBuilder and SsaBuilder to remove HLocals
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

8 years agoBuild dominator tree before generating HInstructions
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

8 years agoMerge "Dump different fields in imgdiag"
Mathieu Chartier [Fri, 1 Apr 2016 23:46:47 +0000 (23:46 +0000)]
Merge "Dump different fields in imgdiag"
am: 0cb5c86

* commit '0cb5c86b7021e70cbf584c1455aad1ef383af786':
  Dump different fields in imgdiag

Change-Id: I15d590b50a0a9ad7d04a99fe88612e71b4661dc5

8 years agoMerge "Dump different fields in imgdiag"
Mathieu Chartier [Fri, 1 Apr 2016 23:36:19 +0000 (23:36 +0000)]
Merge "Dump different fields in imgdiag"

8 years agoDump 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

8 years agoMerge changes I297e2f20,Ia2e475e4,I9f1b4139
Hiroshi Yamauchi [Fri, 1 Apr 2016 21:09:48 +0000 (21:09 +0000)]
Merge changes I297e2f20,Ia2e475e4,I9f1b4139
am: d6cbfaf

* commit 'd6cbfafe5615bab2f0548012a7d796ee0aaca14e':
  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"

Change-Id: Iba60370423f9c5653fc505d6db0890905a664c32

8 years agoMerge changes I297e2f20,Ia2e475e4,I9f1b4139
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"

8 years agoRevert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 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

8 years agoRevert "ART: Improve JitProfile perf in x86 mterp"
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

8 years agoRevert "ART: Improve JitProfile perf in x86_64 mterp"
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

8 years agoMerge "Make test 146 run with secondary dex file in classpath."
Alex Light [Fri, 1 Apr 2016 18:54:51 +0000 (18:54 +0000)]
Merge "Make test 146 run with secondary dex file in classpath."
am: 1669fe3

* commit '1669fe3219f295d14c43d5bd3b4e8d255e52be3f':
  Make test 146 run with secondary dex file in classpath.

Change-Id: I88392959b63c6303d6a8da967cb93a2cfaa14f8d

8 years agoMerge "Make test 146 run with secondary dex file in classpath."
Alex Light [Fri, 1 Apr 2016 18:42:25 +0000 (18:42 +0000)]
Merge "Make test 146 run with secondary dex file in classpath."

8 years agoMake 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

8 years agoMerge "Make InvokeInterfaceTrampoline check methods"
Alex Light [Fri, 1 Apr 2016 17:42:01 +0000 (17:42 +0000)]
Merge "Make InvokeInterfaceTrampoline check methods"
am: cbfa105

* commit 'cbfa10557ab6e2669747a1e21a87adf212ec44c2':
  Make InvokeInterfaceTrampoline check methods

Change-Id: I8d8c148e4b06c76d848918448d0254066c490a3e

8 years agoImprove debugging in art/compiler/optimizing/common_arm64.h.
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

8 years agoMerge "Make InvokeInterfaceTrampoline check methods"
Alex Light [Fri, 1 Apr 2016 17:30:41 +0000 (17:30 +0000)]
Merge "Make InvokeInterfaceTrampoline check methods"

8 years agoFix BitCount intrinsics assertions.
Roland Levillain [Fri, 1 Apr 2016 17:21:55 +0000 (18:21 +0100)]
Fix BitCount intrinsics assertions.

Bug: 27852035
Change-Id: Iba43039aadd9ba288b476d53cc2306a58356465f

8 years agoMerge "ART: Better support for arraycopy in unstarted runtime"
Andreas Gampe [Fri, 1 Apr 2016 16:57:03 +0000 (16:57 +0000)]
Merge "ART: Better support for arraycopy in unstarted runtime"
am: 01afcbb

* commit '01afcbba19e40db984d41974086d63bbdd9cb955':
  ART: Better support for arraycopy in unstarted runtime

Change-Id: Ie07033b1ece4b782aebe54053b3ef6b0f1c24b82

8 years agoMerge "Fix thumb bit in the oatdump symbolizer."
David Srbecky [Fri, 1 Apr 2016 16:57:03 +0000 (16:57 +0000)]
Merge "Fix thumb bit in the oatdump symbolizer."
am: 85f5de0

* commit '85f5de08d02515b36e381834967d5d047d5bbcc4':
  Fix thumb bit in the oatdump symbolizer.

Change-Id: I00b82e10fd47a07a5183fa4ee77f2fed03719185

8 years agoMerge "ART: Better support for arraycopy in unstarted runtime"
Andreas Gampe [Fri, 1 Apr 2016 16:51:47 +0000 (16:51 +0000)]
Merge "ART: Better support for arraycopy in unstarted runtime"

8 years agoMake InvokeInterfaceTrampoline check methods
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

8 years agoMerge "Fix thumb bit in the oatdump symbolizer."
David Srbecky [Fri, 1 Apr 2016 16:46:32 +0000 (16:46 +0000)]
Merge "Fix thumb bit in the oatdump symbolizer."

8 years agoART: Better support for arraycopy in unstarted runtime
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

8 years agoUse bit-level packing for InlineInfo in stackmaps as well.
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

8 years agoMerge "Fix a test info referencing AMD64 instead of ARM64."
Vladimir Marko [Fri, 1 Apr 2016 14:54:15 +0000 (14:54 +0000)]
Merge "Fix a test info referencing AMD64 instead of ARM64."
am: cf0f856

* commit 'cf0f8560f41467331427418584687830932e66ed':
  Fix a test info referencing AMD64 instead of ARM64.

Change-Id: I671632338d20c41db344a50d1d0d95b0fc8670aa

8 years agoMerge "Fix a test info referencing AMD64 instead of ARM64."
Vladimir Marko [Fri, 1 Apr 2016 14:40:08 +0000 (14:40 +0000)]
Merge "Fix a test info referencing AMD64 instead of ARM64."

8 years agoFix 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

8 years agoMerge "Pack stack map entries on bit level to save space."
David Srbecky [Fri, 1 Apr 2016 12:40:37 +0000 (12:40 +0000)]
Merge "Pack stack map entries on bit level to save space."
am: fe2b137

* commit 'fe2b13717879abae993603534a145372e3110aae':
  Pack stack map entries on bit level to save space.

Change-Id: Ia9259d72fcb9359df456db94256a83f5d43c4f35

8 years agoMerge "Pack stack map entries on bit level to save space."
Calin Juravle [Fri, 1 Apr 2016 12:28:51 +0000 (12:28 +0000)]
Merge "Pack stack map entries on bit level to save space."

8 years agoMerge "unstarted_runtime: Update references to decimal format classes."
Narayan Kamath [Fri, 1 Apr 2016 11:33:09 +0000 (11:33 +0000)]
Merge "unstarted_runtime: Update references to decimal format classes."
am: 5c26e43

* commit '5c26e430fbeaf56e3a5da4e3f167ff35fbb71ef9':
  unstarted_runtime: Update references to decimal format classes.

Change-Id: I432614698ea6cb09b30ed61a1ad4774d55ecf28f

8 years agoMerge "unstarted_runtime: Add additional cutouts"
Narayan Kamath [Fri, 1 Apr 2016 11:33:09 +0000 (11:33 +0000)]
Merge "unstarted_runtime: Add additional cutouts"
am: 739253e

* commit '739253e0546b90a54d704324ce971b82cff84adc':
  unstarted_runtime: Add additional cutouts

Change-Id: I5661c1cf92895c76980b156ae16c4637788c51ba

8 years agoMerge "unstarted_runtime: Update references to decimal format classes."
Narayan Kamath [Fri, 1 Apr 2016 11:26:45 +0000 (11:26 +0000)]
Merge "unstarted_runtime: Update references to decimal format classes."

8 years agounstarted_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

8 years agoMerge "unstarted_runtime: Add additional cutouts"
Narayan Kamath [Fri, 1 Apr 2016 11:25:58 +0000 (11:25 +0000)]
Merge "unstarted_runtime: Add additional cutouts"

8 years agounstarted_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

8 years agoMerge "ART: Actually run tests cross arch for oatdump"
Andreas Gampe [Fri, 1 Apr 2016 01:26:06 +0000 (01:26 +0000)]
Merge "ART: Actually run tests cross arch for oatdump"
am: afc4829

* commit 'afc4829d593c173e8e9bdca90257a4cc8a104537':
  ART: Actually run tests cross arch for oatdump

Change-Id: I18204d0b9268456fd489d3d65c0a752dca5ea032

8 years agoMerge "ART: Actually run tests cross arch for oatdump"
Andreas Gampe [Fri, 1 Apr 2016 01:13:17 +0000 (01:13 +0000)]
Merge "ART: Actually run tests cross arch for oatdump"

8 years agoMerge changes from topic \'image_verify\'
Mathieu Chartier [Thu, 31 Mar 2016 23:11:31 +0000 (23:11 +0000)]
Merge changes from topic \'image_verify\'
am: 19a4784

* commit '19a4784ce1b9c6a0b3d3cdb91a182baa7adbb946':
  Disable checks for b/27493510
  Add verification for image ArtMethod declaring classes

Change-Id: I6caf7ce96acbc0fade0010f9924f5b94f75ead45

8 years agoMerge changes from topic 'image_verify'
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

8 years agoMerge "ART: Do not run verification under lock"
Andreas Gampe [Thu, 31 Mar 2016 22:58:18 +0000 (22:58 +0000)]
Merge "ART: Do not run verification under lock"
am: a455ec2

* commit 'a455ec2db2f4a59c524a7a3d3eabca046ed5dd29':
  ART: Do not run verification under lock

Change-Id: Iab0d138734de8a5af733728ffe9e52dde8208fe0

8 years agoMerge "ART: Add support for DexFile compiler filter function"
Andreas Gampe [Thu, 31 Mar 2016 22:58:17 +0000 (22:58 +0000)]
Merge "ART: Add support for DexFile compiler filter function"
am: e669556

* commit 'e6695569f086df8d0e9ab0d898aed13b1f1ea740':
  ART: Add support for DexFile compiler filter function

Change-Id: Id5ef8876f37cc1048fa1f06a35e51122b3d3567e

8 years agoMerge "ART: Do not run verification under lock"
Andreas Gampe [Thu, 31 Mar 2016 22:55:31 +0000 (22:55 +0000)]
Merge "ART: Do not run verification under lock"

8 years agoDisable checks for b/27493510
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

8 years agoART: Do not run verification under lock
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

8 years agoAdd verification for image ArtMethod declaring classes
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

8 years agoMerge "ART: Add support for DexFile compiler filter function"
Andreas Gampe [Thu, 31 Mar 2016 22:52:51 +0000 (22:52 +0000)]
Merge "ART: Add support for DexFile compiler filter function"

8 years agoMerge "Remove obsolete ANDROID_COMPILE_WITH_JACK"
Sebastien Hertz [Thu, 31 Mar 2016 22:11:55 +0000 (22:11 +0000)]
Merge "Remove obsolete ANDROID_COMPILE_WITH_JACK"
am: 835e023

* commit '835e02367727fd981330b64ba938ecd7f675b408':
  Remove obsolete ANDROID_COMPILE_WITH_JACK

Change-Id: I6af8c6dacad62482cbee673df05d50ed7ea8d2f7

8 years agoMerge "Add way to disable resolving for stack walk"
Mathieu Chartier [Thu, 31 Mar 2016 22:11:55 +0000 (22:11 +0000)]
Merge "Add way to disable resolving for stack walk"
am: b1e4b48

* commit 'b1e4b48c97d79530c863d80453c3d5d9aab056cc':
  Add way to disable resolving for stack walk

Change-Id: I45e1f29a5e50a8a51055b0839d919200774f92cd

8 years agoMerge "Remove obsolete ANDROID_COMPILE_WITH_JACK"
Ying Wang [Thu, 31 Mar 2016 22:05:04 +0000 (22:05 +0000)]
Merge "Remove obsolete ANDROID_COMPILE_WITH_JACK"

8 years agoMerge "Add way to disable resolving for stack walk"
Mathieu Chartier [Thu, 31 Mar 2016 21:59:35 +0000 (21:59 +0000)]
Merge "Add way to disable resolving for stack walk"

8 years agoAdd 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

8 years agoPack stack map entries on bit level to save space.
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

8 years agoMerge "Obtain stack trace outside of critical section"
Mathieu Chartier [Thu, 31 Mar 2016 21:10:31 +0000 (21:10 +0000)]
Merge "Obtain stack trace outside of critical section"
am: 6872412

* commit '68724122b444e531d65413b1d9039f6e5fca52b3':
  Obtain stack trace outside of critical section

Change-Id: If75300fc1ea558b5f838e5c521d10cf96a325750

8 years agoMerge "Obtain stack trace outside of critical section"
Mathieu Chartier [Thu, 31 Mar 2016 21:05:30 +0000 (21:05 +0000)]
Merge "Obtain stack trace outside of critical section"

8 years agoObtain 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

8 years agoMerge "Refine OatFileAssistant.MakeUpToDate failure result."
Richard Uhler [Thu, 31 Mar 2016 19:32:59 +0000 (19:32 +0000)]
Merge "Refine OatFileAssistant.MakeUpToDate failure result."
am: fd9ac38

* commit 'fd9ac384741435902d4fc03034f4cbaafaa85780':
  Refine OatFileAssistant.MakeUpToDate failure result.

Change-Id: I58b3390da7f9d704405516873c2bf528c726c46d

8 years agoMerge "Refine OatFileAssistant.MakeUpToDate failure result."
Richard Uhler [Thu, 31 Mar 2016 19:27:54 +0000 (19:27 +0000)]
Merge "Refine OatFileAssistant.MakeUpToDate failure result."

8 years agoART: Add support for DexFile compiler filter function
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

8 years agoFix thumb bit in the oatdump symbolizer.
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

8 years agoMerge "Remove many `instrumentation` variables from goto interpreter."
Vladimir Marko [Thu, 31 Mar 2016 18:04:17 +0000 (18:04 +0000)]
Merge "Remove many `instrumentation` variables from goto interpreter."
am: 9590a53

* commit '9590a5388ae80c7edba96de777eb5f96a896e681':
  Remove many `instrumentation` variables from goto interpreter.

Change-Id: I8f119dbab35a9391a2de261e922cd4f7c52376c4

8 years agoMerge "Remove many `instrumentation` variables from goto interpreter."
Vladimir Marko [Thu, 31 Mar 2016 17:53:44 +0000 (17:53 +0000)]
Merge "Remove many `instrumentation` variables from goto interpreter."

8 years agoRemove 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

8 years agoMerge "Remove obsolete LOCAL_DX_FLAGS."
Ying Wang [Thu, 31 Mar 2016 16:58:57 +0000 (16:58 +0000)]
Merge "Remove obsolete LOCAL_DX_FLAGS."
am: eede886

* commit 'eede88620e4dc9f6363c0990c04b7c0c7dd7202e':
  Remove obsolete LOCAL_DX_FLAGS.

Change-Id: Iee79119e73711cf7f20404fcca2720bb5c89272b

8 years agoMerge "Remove obsolete LOCAL_DX_FLAGS."
Ying Wang [Thu, 31 Mar 2016 16:52:56 +0000 (16:52 +0000)]
Merge "Remove obsolete LOCAL_DX_FLAGS."

8 years agoMerge "Only log excessive timeouts if those appear accidental"
Hans Boehm [Thu, 31 Mar 2016 16:46:47 +0000 (16:46 +0000)]
Merge "Only log excessive timeouts if those appear accidental"
am: 9f168cc

* commit '9f168ccb8e77626fd99c4ee5c296a5ed82f8d541':
  Only log excessive timeouts if those appear accidental

Change-Id: I519e12bb2ef5edd4aef66eb28846b99e1f952157

8 years agoMerge "Only log excessive timeouts if those appear accidental"
Hans Boehm [Thu, 31 Mar 2016 16:41:46 +0000 (16:41 +0000)]
Merge "Only log excessive timeouts if those appear accidental"

8 years agoMerge "ART: Improve JitProfile perf in x86_64 mterp"
Serguei Katkov [Thu, 31 Mar 2016 15:39:35 +0000 (15:39 +0000)]
Merge "ART: Improve JitProfile perf in x86_64 mterp"
am: 87ad82e

* commit '87ad82eb1e085ccc6ed3ec54945937582334dbbc':
  ART: Improve JitProfile perf in x86_64 mterp

Change-Id: Ie0c5a82723b54297550246773e9099df4aa3500d

8 years agoMerge "ART: Improve JitProfile perf in x86 mterp"
Serguei Katkov [Thu, 31 Mar 2016 15:39:35 +0000 (15:39 +0000)]
Merge "ART: Improve JitProfile perf in x86 mterp"
am: a236234

* commit 'a23623447c44758ec0369af778d5bd1adae442e6':
  ART: Improve JitProfile perf in x86 mterp

Change-Id: I89628928a67b1c14ec4ca0f6dae0582a0688bfb9

8 years agoMerge "Fix silly gcc warning."
Vladimir Marko [Thu, 31 Mar 2016 15:39:34 +0000 (15:39 +0000)]
Merge "Fix silly gcc warning."
am: f7cdec5

* commit 'f7cdec554371aad9dd8f40c6cd195a5635abc3d6':
  Fix silly gcc warning.

Change-Id: Id962ef258d4faa8f6362f9e9e3774f308dd5043f

8 years agoMerge "Rename run-test 593-checker-boolean-to-integral-conversions."
Roland Levillain [Thu, 31 Mar 2016 15:39:33 +0000 (15:39 +0000)]
Merge "Rename run-test 593-checker-boolean-to-integral-conversions."
am: 897886f

* commit '897886f804fcad5634362e0a8c5b6d1682198af4':
  Rename run-test 593-checker-boolean-to-integral-conversions.

Change-Id: I0fae951b69ae41631635d99de9a2f7833945c859

8 years agoMerge "ART: Improve JitProfile perf in x86_64 mterp"
Bill Buzbee [Thu, 31 Mar 2016 14:21:18 +0000 (14:21 +0000)]
Merge "ART: Improve JitProfile perf in x86_64 mterp"

8 years agoMerge "ART: Improve JitProfile perf in x86 mterp"
Bill Buzbee [Thu, 31 Mar 2016 14:07:15 +0000 (14:07 +0000)]
Merge "ART: Improve JitProfile perf in x86 mterp"

8 years agoMerge "Fix silly gcc warning."
Vladimir Marko [Thu, 31 Mar 2016 13:24:15 +0000 (13:24 +0000)]
Merge "Fix silly gcc warning."

8 years agoFix 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

8 years agoMerge "Rename run-test 593-checker-boolean-to-integral-conversions."
Roland Levillain [Thu, 31 Mar 2016 11:39:53 +0000 (11:39 +0000)]
Merge "Rename run-test 593-checker-boolean-to-integral-conversions."