OSDN Git Service

android-x86/art.git
8 years agoMerge \\"Launch ahat server before processing the heap dump.\\" am: 0abe10a59b
Richard Uhler [Mon, 25 Jul 2016 20:25:58 +0000 (20:25 +0000)]
Merge \\"Launch ahat server before processing the heap dump.\\" am: 0abe10a59b
am: cc706a4a1b

Change-Id: I854871991844e05c82e94f969b76db0093fd509a

8 years agoMerge \"Launch ahat server before processing the heap dump.\"
Richard Uhler [Mon, 25 Jul 2016 20:22:59 +0000 (20:22 +0000)]
Merge \"Launch ahat server before processing the heap dump.\"
am: 0abe10a59b

Change-Id: I051ad88d1460d129a5eb65fc36a6e28354bbc251

8 years agoMerge "Launch ahat server before processing the heap dump."
Treehugger Robot [Mon, 25 Jul 2016 20:18:25 +0000 (20:18 +0000)]
Merge "Launch ahat server before processing the heap dump."

8 years agoMerge \\"Fix stream-tracing with default methods\\" am: 38be534337
Alex Light [Mon, 25 Jul 2016 19:09:26 +0000 (19:09 +0000)]
Merge \\"Fix stream-tracing with default methods\\" am: 38be534337
am: 2382f012bb

Change-Id: I420d52342c2d08ab2ede048372b362c642d4a0d2

8 years agoMerge \"Fix stream-tracing with default methods\"
Alex Light [Mon, 25 Jul 2016 19:05:26 +0000 (19:05 +0000)]
Merge \"Fix stream-tracing with default methods\"
am: 38be534337

Change-Id: Ibad99838d15d0b87ea5ba1fe897f27d4ba83f447

8 years agoMerge "Fix stream-tracing with default methods"
Treehugger Robot [Mon, 25 Jul 2016 18:44:11 +0000 (18:44 +0000)]
Merge "Fix stream-tracing with default methods"

8 years agoMerge \\"Make static helper methods member functions of OptimizingCompiler class...
Aart Bik [Mon, 25 Jul 2016 18:01:17 +0000 (18:01 +0000)]
Merge \\"Make static helper methods member functions of OptimizingCompiler class\\" am: a69e790ad9
am: d786250bbb

Change-Id: I9401fc2711224c9c47285738bb139e25befb82c0

8 years agoMerge \"Make static helper methods member functions of OptimizingCompiler class\"
Wojciech Staszkiewicz [Mon, 25 Jul 2016 17:58:19 +0000 (17:58 +0000)]
Merge \"Make static helper methods member functions of OptimizingCompiler class\"
am: a69e790ad9

Change-Id: Iaf23b0f1163ac836a3a4e4c5319517388e6cfa62

8 years agoMerge "Make static helper methods member functions of OptimizingCompiler class"
Aart Bik [Mon, 25 Jul 2016 17:53:51 +0000 (17:53 +0000)]
Merge "Make static helper methods member functions of OptimizingCompiler class"

8 years agoFix stream-tracing with default methods
Alex Light [Tue, 19 Jul 2016 18:21:32 +0000 (11:21 -0700)]
Fix stream-tracing with default methods

Test: Ran mma ART_TEST_TRACE=true ART_TEST_TRACE_STREAM=true -j40 test-art-host

Bug: 30102284
Bug: 30286605

Change-Id: I12f2534bc2d42a7504e6c1972c4cfdda2f77286f

8 years agoMerge \\"Revert \\"Revert \\"ART: Add dex2oat swap usage test\\"\\"\\" am: edbecee66f
Andreas Gampe [Mon, 25 Jul 2016 17:41:31 +0000 (17:41 +0000)]
Merge \\"Revert \\"Revert \\"ART: Add dex2oat swap usage test\\"\\"\\" am: edbecee66f
am: 37d11c693a

Change-Id: Ia5b8bc6d23018bf14b9200ef74899ba7558b8449

8 years agoMerge \"Revert \"Revert \"ART: Add dex2oat swap usage test\"\"\"
Andreas Gampe [Mon, 25 Jul 2016 17:37:01 +0000 (17:37 +0000)]
Merge \"Revert \"Revert \"ART: Add dex2oat swap usage test\"\"\"
am: edbecee66f

Change-Id: I3321270cf3746b172208b628dbddc968db1c5482

8 years agoMerge "Revert "Revert "ART: Add dex2oat swap usage test"""
Treehugger Robot [Mon, 25 Jul 2016 17:27:55 +0000 (17:27 +0000)]
Merge "Revert "Revert "ART: Add dex2oat swap usage test"""

8 years agoMerge \\"Add fast path to arm64 READ_BARRIER macro\\" am: a71ad9a2d3
Mathieu Chartier [Mon, 25 Jul 2016 16:56:26 +0000 (16:56 +0000)]
Merge \\"Add fast path to arm64 READ_BARRIER macro\\" am: a71ad9a2d3
am: fb2092dab3

Change-Id: Ie0dedfae86f63ecfa0cf393d372070ea42fbfa0a

8 years agoMerge \"Add fast path to arm64 READ_BARRIER macro\"
Mathieu Chartier [Mon, 25 Jul 2016 16:52:59 +0000 (16:52 +0000)]
Merge \"Add fast path to arm64 READ_BARRIER macro\"
am: a71ad9a2d3

Change-Id: I0bebdeed40c436e59f294e2c2b94c7ac6085b374

8 years agoMerge "Add fast path to arm64 READ_BARRIER macro"
Mathieu Chartier [Mon, 25 Jul 2016 16:44:33 +0000 (16:44 +0000)]
Merge "Add fast path to arm64 READ_BARRIER macro"

8 years agoRevert "Revert "ART: Add dex2oat swap usage test""
Andreas Gampe [Mon, 25 Jul 2016 15:27:35 +0000 (08:27 -0700)]
Revert "Revert "ART: Add dex2oat swap usage test""

Now correctly ignores the target (but with enough infrastructure
to introduce this some day).

This reverts commit ec743ffd47ac9d3c10a449926d78c2eb51e5208e.

Bug: 29259363
Test: m test-art-host-gtest-dex2oat_test
Test: m test-art-target-gtest-dex2oat_test (shamu)
Change-Id: I11b4e755bc8cb1e2eea29cd006e8df67df632c00

8 years agoMerge \\"Do not emit stack maps for runtime calls to ReadBarrierMarkRegX.\\" am:...
Roland Levillain [Mon, 25 Jul 2016 15:00:49 +0000 (15:00 +0000)]
Merge \\"Do not emit stack maps for runtime calls to ReadBarrierMarkRegX.\\" am: de4cf16f46
am: 6c652d78ce

Change-Id: Ic398c02cb7e3a3ffb1029681b3ac6c36eaaaba0c

8 years agoMerge \"Do not emit stack maps for runtime calls to ReadBarrierMarkRegX.\"
Roland Levillain [Mon, 25 Jul 2016 14:57:22 +0000 (14:57 +0000)]
Merge \"Do not emit stack maps for runtime calls to ReadBarrierMarkRegX.\"
am: de4cf16f46

Change-Id: I58975c1fa1cdc2627b5fdee0d84322b8282a6411

8 years agoMerge "Do not emit stack maps for runtime calls to ReadBarrierMarkRegX."
Roland Levillain [Mon, 25 Jul 2016 14:49:51 +0000 (14:49 +0000)]
Merge "Do not emit stack maps for runtime calls to ReadBarrierMarkRegX."

8 years agoMerge \\"Revert \\"ART: Add dex2oat swap usage test\\"\\" am: c4aa896181
Andreas Gampe [Sat, 23 Jul 2016 06:14:45 +0000 (06:14 +0000)]
Merge \\"Revert \\"ART: Add dex2oat swap usage test\\"\\" am: c4aa896181
am: da07be90c5

Change-Id: I9744169d0d5f109f07d1c67f3ed55ee19ba645fb

8 years agoMerge \"Revert \"ART: Add dex2oat swap usage test\"\"
Andreas Gampe [Sat, 23 Jul 2016 06:11:47 +0000 (06:11 +0000)]
Merge \"Revert \"ART: Add dex2oat swap usage test\"\"
am: c4aa896181

Change-Id: I61c6aa7d5057a49639312262bc74f9162c827a70

8 years agoMerge "Revert "ART: Add dex2oat swap usage test""
Treehugger Robot [Sat, 23 Jul 2016 06:04:13 +0000 (06:04 +0000)]
Merge "Revert "ART: Add dex2oat swap usage test""

8 years agoRevert "ART: Add dex2oat swap usage test"
Andreas Gampe [Sat, 23 Jul 2016 05:17:18 +0000 (05:17 +0000)]
Revert "ART: Add dex2oat swap usage test"

The test doesn't correctly exclude the target, as it will only work
on the host.

This reverts commit ab2a54093386c85756fe78daedd11ff4408a5988.

Bug: 29259363
Change-Id: Ie50df2e6f0c63cb10359c3862ad44ee3c03d4e3b

8 years agoAdd fast path to arm64 READ_BARRIER macro
Mathieu Chartier [Thu, 21 Jul 2016 21:59:04 +0000 (14:59 -0700)]
Add fast path to arm64 READ_BARRIER macro

EAAC benchmark time from 978.7857143ms to 969.5714286ms on N9 based
on 42 samples. Reduces artReadBarrierSlow calls from 9M to 1M.

Not a huge improvement since we were already checking the lock word in
ReadBarrier::Barrier.

Test: N9 boots, test-art-host, EEAC runs. (All with CC enabled).

Bug: 30162165
Bug: 12687968

Change-Id: Ifb97b52ea84e21c7df83addfb91c5f05f41db32d

8 years agoMerge \\"ART: Change run-*-tests to ANDROID_{HOST|PRODUCT}_OUT\\" am: 115c1de1f8
Andreas Gampe [Fri, 22 Jul 2016 22:50:51 +0000 (22:50 +0000)]
Merge \\"ART: Change run-*-tests to ANDROID_{HOST|PRODUCT}_OUT\\" am: 115c1de1f8
am: 88b5cdb5be

Change-Id: Ic5a32cf1eba832fe189c720898185ae876479bc7

8 years agoMerge \\"ART: Add dex2oat swap usage test\\" am: da2b8dc3ed
Andreas Gampe [Fri, 22 Jul 2016 22:50:51 +0000 (22:50 +0000)]
Merge \\"ART: Add dex2oat swap usage test\\" am: da2b8dc3ed
am: f11b3aa623

Change-Id: I8164b21964584a3caeaee79689a0453ab6c9717a

8 years agoMerge \"ART: Change run-*-tests to ANDROID_{HOST|PRODUCT}_OUT\"
Andreas Gampe [Fri, 22 Jul 2016 22:47:55 +0000 (22:47 +0000)]
Merge \"ART: Change run-*-tests to ANDROID_{HOST|PRODUCT}_OUT\"
am: 115c1de1f8

Change-Id: I6a977a1a3ed81c25ce20c43ee55a55c2028d20b1

8 years agoMerge \"ART: Add dex2oat swap usage test\"
Andreas Gampe [Fri, 22 Jul 2016 22:47:53 +0000 (22:47 +0000)]
Merge \"ART: Add dex2oat swap usage test\"
am: da2b8dc3ed

Change-Id: I019cccda99f190384f57bf2e23909ed79a74dc2d

8 years agoMake static helper methods member functions of OptimizingCompiler class
Wojciech Staszkiewicz [Fri, 22 Jul 2016 20:33:11 +0000 (13:33 -0700)]
Make static helper methods member functions of OptimizingCompiler class

Make RunOptimizations, MaybeRunInliner and RunArchOptimizations member
functions of OptimizingCompiler class.

Both versions of RunOptimizations are protected in preparation for
bisection bug search CL.

Change-Id: I596efa9ed3fccd1ed3798c6427cc166e2a5d28bd

8 years agoMerge "ART: Change run-*-tests to ANDROID_{HOST|PRODUCT}_OUT"
Treehugger Robot [Fri, 22 Jul 2016 22:32:08 +0000 (22:32 +0000)]
Merge "ART: Change run-*-tests to ANDROID_{HOST|PRODUCT}_OUT"

8 years agoMerge "ART: Add dex2oat swap usage test"
Treehugger Robot [Fri, 22 Jul 2016 22:31:37 +0000 (22:31 +0000)]
Merge "ART: Add dex2oat swap usage test"

8 years agoMerge \\"Combine offsets in loop-based dynamic BCE.\\" am: 7b922ff88b
Aart Bik [Fri, 22 Jul 2016 18:55:06 +0000 (18:55 +0000)]
Merge \\"Combine offsets in loop-based dynamic BCE.\\" am: 7b922ff88b
am: f45e600ea6

Change-Id: Ied92881efb83a4a7dcd6238f459f8e5e5c96ead4

8 years agoMerge \"Combine offsets in loop-based dynamic BCE.\"
Aart Bik [Fri, 22 Jul 2016 18:52:07 +0000 (18:52 +0000)]
Merge \"Combine offsets in loop-based dynamic BCE.\"
am: 7b922ff88b

Change-Id: I6889e535ce4ea69404562c95451bf82d70c35a23

8 years agoMerge "Combine offsets in loop-based dynamic BCE."
Treehugger Robot [Fri, 22 Jul 2016 18:43:01 +0000 (18:43 +0000)]
Merge "Combine offsets in loop-based dynamic BCE."

8 years agoDo not emit stack maps for runtime calls to ReadBarrierMarkRegX.
Roland Levillain [Fri, 22 Jul 2016 16:10:06 +0000 (17:10 +0100)]
Do not emit stack maps for runtime calls to ReadBarrierMarkRegX.

* Boot image code size variation on Nexus 5X
  (aosp_bullhead-userdebug build):
  - total ARM64 framework Oat files size change:
    115584120 bytes -> 109124728 bytes (-5.59%)
  - total ARM framework Oat files size change:
    97387728 bytes -> 92517584 (-5.00%)

Test: ART host and target (ARM, ARM64) tests.
Bug: 29506760
Bug: 12687968
Change-Id: I979d9fb2b4e09f4c0c7bf33af2cd91750a67f989

8 years agoCombine offsets in loop-based dynamic BCE.
Aart Bik [Fri, 15 Jul 2016 00:19:43 +0000 (17:19 -0700)]
Combine offsets in loop-based dynamic BCE.

Rationale:
Similar to what I did recently for dom-based dynamic BCE, this
CL combines offsets for the tests generated for loop-based
dynamic BCE. For a set of n references, this reduces the
number of generated tests from 2*n+1 down to at most 4
(in some cases even less).

TEST: 530-checker-loops3

BUG=27430379

Change-Id: Ic80c2563eaae23f514c1fd52965dd83bccb9d190

8 years agoMerge \\"ARM64/x86-64: Fix mterp fill-array-data-payload pointer calculation.\\"...
Vladimir Marko [Fri, 22 Jul 2016 17:09:00 +0000 (17:09 +0000)]
Merge \\"ARM64/x86-64: Fix mterp fill-array-data-payload pointer calculation.\\" am: 9e27d02040
am: 6aec037d15

Change-Id: I48398d2bcb731b60ded4aeb6f4263f5c3152136a

8 years agoMerge \"ARM64/x86-64: Fix mterp fill-array-data-payload pointer calculation.\"
Vladimir Marko [Fri, 22 Jul 2016 17:06:32 +0000 (17:06 +0000)]
Merge \"ARM64/x86-64: Fix mterp fill-array-data-payload pointer calculation.\"
am: 9e27d02040

Change-Id: Ib9198592d068055b0caa2051072795cb77fc6a0f

8 years agoMerge "ARM64/x86-64: Fix mterp fill-array-data-payload pointer calculation."
Treehugger Robot [Fri, 22 Jul 2016 16:53:29 +0000 (16:53 +0000)]
Merge "ARM64/x86-64: Fix mterp fill-array-data-payload pointer calculation."

8 years agoARM64/x86-64: Fix mterp fill-array-data-payload pointer calculation.
Vladimir Marko [Fri, 22 Jul 2016 09:52:24 +0000 (10:52 +0100)]
ARM64/x86-64: Fix mterp fill-array-data-payload pointer calculation.

Fix the pointer calculation to sign-extend the offset
instead of zero-extending it, just like we do for the switch
table pointer calculation. Clean up comments for the switch.

Test: Additional test in 412-new-array.
Change-Id: Ibb1d2d3fcb109f59280aca08de21e42edc4ce66b

8 years agoMerge \\"ARM64: Improve mterp cmpl/cmpg.\\" am: 41c7e2e6ac
Vladimir Marko [Fri, 22 Jul 2016 09:34:34 +0000 (09:34 +0000)]
Merge \\"ARM64: Improve mterp cmpl/cmpg.\\" am: 41c7e2e6ac
am: 1562d62bf2

Change-Id: I5596939b447cf2591c2197a12888c289a773e931

8 years agoMerge \"ARM64: Improve mterp cmpl/cmpg.\"
Vladimir Marko [Fri, 22 Jul 2016 09:31:36 +0000 (09:31 +0000)]
Merge \"ARM64: Improve mterp cmpl/cmpg.\"
am: 41c7e2e6ac

Change-Id: I8abfa3377a1e884e46f28ce413a67e97492335e2

8 years agoMerge "ARM64: Improve mterp cmpl/cmpg."
Vladimir Marko [Fri, 22 Jul 2016 09:24:41 +0000 (09:24 +0000)]
Merge "ARM64: Improve mterp cmpl/cmpg."

8 years agoJIT: Don\'t update the dex cache of another class loader.
Nicolas Geoffray [Fri, 22 Jul 2016 01:15:48 +0000 (01:15 +0000)]
JIT: Don\'t update the dex cache of another class loader.
am: e50a7b834b  -s ours

Change-Id: I0af74a19e19bc66fcca47aca21757136073a9161

8 years agoMerge changes I295c7876,Ib4b84b7b am: 84413a7617
Andreas Gampe [Fri, 22 Jul 2016 00:05:41 +0000 (00:05 +0000)]
Merge changes I295c7876,Ib4b84b7b am: 84413a7617
am: 7aee171992

Change-Id: Iccde165be1e432c9c3e86f03f07a1e2d45428d5f

8 years agoMerge changes I295c7876,Ib4b84b7b
Andreas Gampe [Fri, 22 Jul 2016 00:03:12 +0000 (00:03 +0000)]
Merge changes I295c7876,Ib4b84b7b
am: 84413a7617

Change-Id: I8b32598a46cb589cdefa1937ba4b9b69926f25b9

8 years agoMerge changes I295c7876,Ib4b84b7b
Treehugger Robot [Thu, 21 Jul 2016 23:58:00 +0000 (23:58 +0000)]
Merge changes I295c7876,Ib4b84b7b

* changes:
  ART: Remove PACKED from ArtMethod's ptr_sized_fields_
  ART: Rename ArtMethod JNI field

8 years agoMerge \\"Use non-CAS thread flip root visitor.\\" am: d4b7ad7135
Hiroshi Yamauchi [Thu, 21 Jul 2016 23:34:42 +0000 (23:34 +0000)]
Merge \\"Use non-CAS thread flip root visitor.\\" am: d4b7ad7135
am: 0cbcc8b076

Change-Id: I7ace21c998f00f53dd5e9d56703b385dc1457e26

8 years agoMerge \"Use non-CAS thread flip root visitor.\"
Hiroshi Yamauchi [Thu, 21 Jul 2016 23:32:13 +0000 (23:32 +0000)]
Merge \"Use non-CAS thread flip root visitor.\"
am: d4b7ad7135

Change-Id: I4c560952f5f4ed488d0a849feadf2a2d25e15a2b

8 years agoMerge "Use non-CAS thread flip root visitor."
Hiroshi Yamauchi [Thu, 21 Jul 2016 23:24:44 +0000 (23:24 +0000)]
Merge "Use non-CAS thread flip root visitor."

8 years agoART: Remove PACKED from ArtMethod's ptr_sized_fields_
Andreas Gampe [Wed, 20 Jul 2016 01:27:17 +0000 (18:27 -0700)]
ART: Remove PACKED from ArtMethod's ptr_sized_fields_

Remove the PACKED(4) hack, as it's highly annoying when debugging
a 64-bit process. Instead, fix the actual offset and size computation
for cross-size accesses.

Test: m test-art-host
Change-Id: I295c78760b74b6a62946e76856f218b4eb159cdc

8 years agoART: Add dex2oat swap usage test
Andreas Gampe [Thu, 21 Jul 2016 22:36:22 +0000 (15:36 -0700)]
ART: Add dex2oat swap usage test

Add a test that checks that native alloc size goes down when using
swap, as an indication that we're actually effectively using swap.

Bug: 29259363
Test: m test-art-host-gtest-dex2oat_test
Change-Id: Ifa5aef1b97696309283de78be08699a6399a4d1d

8 years agoLaunch ahat server before processing the heap dump.
Richard Uhler [Thu, 21 Jul 2016 20:52:48 +0000 (13:52 -0700)]
Launch ahat server before processing the heap dump.

Change-Id: Ic8f18ad3010cb0937f5ef68228359258ec4793fd
Test: Manually launch ahat on a large heap dump with ahat already
      running. Verify that ahat fails immediately.
Test: Manually launch ahat on a large heap dump without ahat already
      running. Verify that visiting localhost:7100 immediately
      eventually resolves to the overview page rather than say the
      site can't be reached.
Bug: 28611294

8 years agoUse non-CAS thread flip root visitor.
Hiroshi Yamauchi [Thu, 21 Jul 2016 03:25:27 +0000 (20:25 -0700)]
Use non-CAS thread flip root visitor.

We don't need to use CAS to update the thread-local GC roots for the
thread flip.

Bug: 12687968
Bug: 29517059
Test: libartd.so boot. ART tests. Ritzperf EAAC.
Change-Id: Ia2acab824f756bd7d2ad501b2040233e0d394356

8 years agoMerge \\"ART: Make run-test temp dir consistent\\" am: a8f4e9061a
Andreas Gampe [Thu, 21 Jul 2016 18:34:42 +0000 (18:34 +0000)]
Merge \\"ART: Make run-test temp dir consistent\\" am: a8f4e9061a
am: fd3b946eca

Change-Id: I35b5bf8d27d6eb9340c161a80befc30df90e5cb2

8 years agoMerge \"ART: Make run-test temp dir consistent\"
Andreas Gampe [Thu, 21 Jul 2016 18:32:42 +0000 (18:32 +0000)]
Merge \"ART: Make run-test temp dir consistent\"
am: a8f4e9061a

Change-Id: I1d785103a7e4df2884384b0b482552a8e163e9f3

8 years agoART: Rename ArtMethod JNI field
Andreas Gampe [Tue, 19 Jul 2016 15:06:07 +0000 (08:06 -0700)]
ART: Rename ArtMethod JNI field

The field is multi-purpose, rename it to data and clean up
accessors in preparation of more checks.

Test: m test-art-host
Change-Id: Ib4b84b7b1a51ca201544bc488ce8770aa858c7fd

8 years agoMerge "ART: Make run-test temp dir consistent"
Treehugger Robot [Thu, 21 Jul 2016 18:26:27 +0000 (18:26 +0000)]
Merge "ART: Make run-test temp dir consistent"

8 years agoMerge \\"Add a way to measure read barrier slow paths\\" am: d8b668fbb6
Mathieu Chartier [Thu, 21 Jul 2016 17:12:34 +0000 (17:12 +0000)]
Merge \\"Add a way to measure read barrier slow paths\\" am: d8b668fbb6
am: 7cf6333832

Change-Id: I511a006bed571faceb739448687cee44afb0198f

8 years agoMerge \"Add a way to measure read barrier slow paths\"
Mathieu Chartier [Thu, 21 Jul 2016 17:10:02 +0000 (17:10 +0000)]
Merge \"Add a way to measure read barrier slow paths\"
am: d8b668fbb6

Change-Id: I010c834dc4c922e7986854cba12612823fa974b4

8 years agoART: Make run-test temp dir consistent
Andreas Gampe [Thu, 21 Jul 2016 04:09:29 +0000 (21:09 -0700)]
ART: Make run-test temp dir consistent

We use the username as a directory component in run-test. Use the
same when driven through the Makefile.

Drop the username in run-test when TMP_DIR is set.

Test: m test-art-host-run-test
Test: art/test/run-test --host 001-HelloWorld
Change-Id: I060997ffbd80cd4da30dd6ac8d3954641de3292b

8 years agoMerge "Add a way to measure read barrier slow paths"
Mathieu Chartier [Thu, 21 Jul 2016 16:52:44 +0000 (16:52 +0000)]
Merge "Add a way to measure read barrier slow paths"

8 years agoARM64: Improve mterp cmpl/cmpg.
Vladimir Marko [Thu, 21 Jul 2016 11:59:46 +0000 (12:59 +0100)]
ARM64: Improve mterp cmpl/cmpg.

Use CSET+CNEG instead of MOV+CNEG+CSEL. Prefer the
CNEG/CSET alias over the CSNEG/CSINC for readability.

Test: Run ART test suite on Nexus 9 with the interpreter.
Change-Id: I5c4fb0cf2c053904253e8e82f3e7e05c774b0583

8 years agoMerge \\"Change return type of artIsAssignableFromCode for MIPS64\\" am: b78b3a8d93
Goran Jakovljevic [Thu, 21 Jul 2016 14:27:23 +0000 (14:27 +0000)]
Merge \\"Change return type of artIsAssignableFromCode for MIPS64\\" am: b78b3a8d93
am: 56dc4f5349

Change-Id: I42be21594fe6dad907057e0342d568924642ff93

8 years agoMerge \\"Fix the definition of MACRO_LITERAL for OS X on x86-64.\\" am: ed33b7357c
Roland Levillain [Thu, 21 Jul 2016 14:27:22 +0000 (14:27 +0000)]
Merge \\"Fix the definition of MACRO_LITERAL for OS X on x86-64.\\" am: ed33b7357c
am: 37d65ef15f

Change-Id: I9f34ab8c1510c97aa22bbdd9c1c47395b31dfc56

8 years agoMerge \"Change return type of artIsAssignableFromCode for MIPS64\"
Goran Jakovljevic [Thu, 21 Jul 2016 14:24:26 +0000 (14:24 +0000)]
Merge \"Change return type of artIsAssignableFromCode for MIPS64\"
am: b78b3a8d93

Change-Id: Ifcc0f61101ab0a424273b97877fbb444864fdce9

8 years agoMerge \"Fix the definition of MACRO_LITERAL for OS X on x86-64.\"
Roland Levillain [Thu, 21 Jul 2016 14:24:23 +0000 (14:24 +0000)]
Merge \"Fix the definition of MACRO_LITERAL for OS X on x86-64.\"
am: ed33b7357c

Change-Id: Ida4c2fd8c2918b77c72423fdda7cd7fb52c10aab

8 years agoMerge "Change return type of artIsAssignableFromCode for MIPS64"
Treehugger Robot [Thu, 21 Jul 2016 14:19:33 +0000 (14:19 +0000)]
Merge "Change return type of artIsAssignableFromCode for MIPS64"

8 years agoMerge "Fix the definition of MACRO_LITERAL for OS X on x86-64."
Roland Levillain [Thu, 21 Jul 2016 14:17:40 +0000 (14:17 +0000)]
Merge "Fix the definition of MACRO_LITERAL for OS X on x86-64."

8 years agoFix the definition of MACRO_LITERAL for OS X on x86-64.
Roland Levillain [Tue, 5 Jul 2016 17:55:32 +0000 (18:55 +0100)]
Fix the definition of MACRO_LITERAL for OS X on x86-64.

Test: "ART_USE_READ_BARRIER=true mmma art" on OS X.
Change-Id: Ia2d4c7a3eb7fec346ddfa4c7b0f7b700f1137344

8 years agoChange return type of artIsAssignableFromCode for MIPS64
Goran Jakovljevic [Thu, 21 Jul 2016 12:21:46 +0000 (14:21 +0200)]
Change return type of artIsAssignableFromCode for MIPS64

This has been missed by Ic505befc6c94e2dccbc8abf2b13d4c2d662e68d1.
This fixes MIPS64 build.

Bug: 30232671
Test: make -j 32 out/target/product/generic_mips64/obj/SHARED_LIBRARIES/libart_intermediates/arch/mips64/entrypoints_init_mips64.o
Change-Id: Iec89d25e2d38c6efc0d1025767d0ac2a8bdb7dcd

8 years agoMerge \\"Move caller-saves saving/restoring to ReadBarrierMarkRegX.\\" am: 057361ca33
Roland Levillain [Thu, 21 Jul 2016 12:17:44 +0000 (12:17 +0000)]
Merge \\"Move caller-saves saving/restoring to ReadBarrierMarkRegX.\\" am: 057361ca33
am: cc25e86689

Change-Id: I615172164d2edf199f868dd6d3d0bd59a759d5a9

8 years agoMerge \"Move caller-saves saving/restoring to ReadBarrierMarkRegX.\"
Roland Levillain [Thu, 21 Jul 2016 12:15:16 +0000 (12:15 +0000)]
Merge \"Move caller-saves saving/restoring to ReadBarrierMarkRegX.\"
am: 057361ca33

Change-Id: I91d856a7d188afb7f770beb6eb799351bfe9333d

8 years agoMerge "Move caller-saves saving/restoring to ReadBarrierMarkRegX."
Roland Levillain [Thu, 21 Jul 2016 12:11:15 +0000 (12:11 +0000)]
Merge "Move caller-saves saving/restoring to ReadBarrierMarkRegX."

8 years agoMerge \\"Clean up Class::FindStaticField().\\" am: 65ad9b3516
Vladimir Marko [Thu, 21 Jul 2016 10:40:09 +0000 (10:40 +0000)]
Merge \\"Clean up Class::FindStaticField().\\" am: 65ad9b3516
am: 21b08980fb

Change-Id: Iae16ee91456c046fd11925bb582480245bf18f42

8 years agoMerge \"Clean up Class::FindStaticField().\"
Vladimir Marko [Thu, 21 Jul 2016 10:37:41 +0000 (10:37 +0000)]
Merge \"Clean up Class::FindStaticField().\"
am: 65ad9b3516

Change-Id: Ide965af3c183fe6f4bf1abd0c535ea2914522999

8 years agoMerge "Clean up Class::FindStaticField()."
Vladimir Marko [Thu, 21 Jul 2016 10:33:13 +0000 (10:33 +0000)]
Merge "Clean up Class::FindStaticField()."

8 years agoMove caller-saves saving/restoring to ReadBarrierMarkRegX.
Roland Levillain [Wed, 20 Jul 2016 10:32:19 +0000 (11:32 +0100)]
Move caller-saves saving/restoring to ReadBarrierMarkRegX.

Instead of saving/restoring live caller-save registers
before/after the call to read barrier mark entry points
ReadBarrierMarkRegX, have these entry points save/restore
all the caller-save registers themselves (except register
rX, which contains the return value).

Also refactor the assembly code of these entry points
using macros.

* Boot image code size variation on Nexus 5X
  (aosp_bullhead-userdebug build):
  - total ARM64 framework Oat files size change:
    119196792 bytes -> 115575920 bytes (-3.04%)
  - total ARM framework Oat files size change:
    100435212 bytes -> 97621188 bytes (-2.80%)

* Benchmarks (ARM64) score variations on Nexus 5X
  (aosp_bullhead-userdebug build):
  - RitzPerf (lower is better)
    - average score difference: -2.71%
  - CaffeineMark (higher is better)
    - no real difference for most tests
      (absolute variation lower than 1%)
    - better score on the "Method" benchmark:
      score variation 41253 -> 44891 (+8.82%)

Test: ART host and target (ARM, ARM64) tests.
Bug: 29506760
Bug: 12687968
Change-Id: I881bf73139a3f1c2bee9ffc6fc8c00f9a392afa6

8 years agoMerge \\"ARM: Port instr simplification of array accesses.\\" am: a92938a17b
Vladimir Marko [Thu, 21 Jul 2016 09:24:06 +0000 (09:24 +0000)]
Merge \\"ARM: Port instr simplification of array accesses.\\" am: a92938a17b
am: 030c9e6e58

Change-Id: I56fe574cc4200517d241939a458375feb38005af

8 years agoMerge changes Ibcc11ce7,I9867dc11 am: 89b03e0cfb
Vladimir Marko [Thu, 21 Jul 2016 09:24:06 +0000 (09:24 +0000)]
Merge changes Ibcc11ce7,I9867dc11 am: 89b03e0cfb
am: e2d6519d95

Change-Id: I7b6f88b4a8ec4ae6bb7458c30074fdb02d33efac

8 years agoMerge \"ARM: Port instr simplification of array accesses.\"
Artem Serov [Thu, 21 Jul 2016 09:22:09 +0000 (09:22 +0000)]
Merge \"ARM: Port instr simplification of array accesses.\"
am: a92938a17b

Change-Id: Ia08b62cc89dd2cfecf9c543ed75689f07baf8ced

8 years agoMerge changes Ibcc11ce7,I9867dc11
Vladimir Marko [Thu, 21 Jul 2016 09:22:06 +0000 (09:22 +0000)]
Merge changes Ibcc11ce7,I9867dc11
am: 89b03e0cfb

Change-Id: I841c764e1c9a69778ce840ec025815d20e1a06ab

8 years agoMerge "ARM: Port instr simplification of array accesses."
Vladimir Marko [Thu, 21 Jul 2016 09:17:15 +0000 (09:17 +0000)]
Merge "ARM: Port instr simplification of array accesses."

8 years agoARM: Port instr simplification of array accesses.
Artem Serov [Wed, 6 Jul 2016 15:23:04 +0000 (16:23 +0100)]
ARM: Port instr simplification of array accesses.

After changing the addressing mode for array accesses (in
https://android-review.googlesource.com/248406) the 'add'
instruction that calculates the base address for the array can be
shared across accesses to the same array.

Before https://android-review.googlesource.com/248406:
    add IP, r[Array], r[Index0], LSL #2
    ldr r0, [IP, #12]
    add IP, r[Array], r[Index1], LSL #2
    ldr r0, [IP, #12]

Before this CL:
    add IP. r[Array], #12
    ldr r0, [IP, r[Index0], LSL #2]
    add IP. r[Array], #12
    ldr r0, [IP, r[Index1], LSL #2]

After this CL:
    add IP. r[Array], #12
    ldr r0, [IP, r[Index0], LSL #2]
    ldr r0, [IP, r[Index1], LSL #2]

Link to the original optimization:
    https://android-review.googlesource.com/#/c/127310/

Test: Run ART test suite on Nexus 6.
Change-Id: Iee26f9a0a7ca46abb90e3f60d19d22dc8dee4d8f

8 years agoMerge changes Ibcc11ce7,I9867dc11
Vladimir Marko [Thu, 21 Jul 2016 09:15:23 +0000 (09:15 +0000)]
Merge changes Ibcc11ce7,I9867dc11

* changes:
  ARM64: Improve Mterp.
  ARM64: Fix mterp switch table pointer calculation.

8 years agoJIT: Don't update the dex cache of another class loader.
Nicolas Geoffray [Tue, 19 Jul 2016 16:06:23 +0000 (17:06 +0100)]
JIT: Don't update the dex cache of another class loader.

This only works for properly delegating class loaders. But Java allows
non-delegating ones :(

bug:29964720

test:612-jit-dex-cache

(cherry picked from commit 491617a612c8a1c890e72d8ba780a151ddee8e11)
(cherry picked from commit a2d7cbb44e570ec0a9064dc93f57441e6ab9e45a)

(cherry picked from commit ae093d69f58c2b6257c3e5b82a32c135a1f33641)

Change-Id: I73df55286a9bdb3f96963e0756e3a8b784aa9077

8 years agoAdd a way to measure read barrier slow paths
Mathieu Chartier [Thu, 14 Jul 2016 20:30:03 +0000 (13:30 -0700)]
Add a way to measure read barrier slow paths

If enabled, this option counts number of slow paths, measures the
total slow path time per GC and records the info into a histogram.
Also added support for systrace to see which threads are performing
slow paths.

Added runtime option -Xgc:measure to enable. The info is dumped
for SIGQUIT.

Test: Volantis boot with CC, test-art-host with CC, run EEAC with CC
and -Xgc:measure

Bug: 30162165

Change-Id: I3c2bdb4156065249c45695f13c77c0579bc8e57a

8 years agoMerge \\"Revert \\"Revert \\"Refactor GetIMTIndex\\"\\"\\" am: e4b1c86d13
Matthew Gharrity [Thu, 21 Jul 2016 00:18:32 +0000 (00:18 +0000)]
Merge \\"Revert \\"Revert \\"Refactor GetIMTIndex\\"\\"\\" am: e4b1c86d13
am: 8df507d68a

Change-Id: Ia2def807b2ccf60b6020da2760c94e7954c2700b

8 years agoMerge \"Revert \"Revert \"Refactor GetIMTIndex\"\"\"
Matthew Gharrity [Thu, 21 Jul 2016 00:14:11 +0000 (00:14 +0000)]
Merge \"Revert \"Revert \"Refactor GetIMTIndex\"\"\"
am: e4b1c86d13

Change-Id: I496ad384317e215aa09e1390079fdfe3f852723e

8 years agoMerge "Revert "Revert "Refactor GetIMTIndex"""
Treehugger Robot [Thu, 21 Jul 2016 00:04:52 +0000 (00:04 +0000)]
Merge "Revert "Revert "Refactor GetIMTIndex"""

8 years agoMerge \\"Make stream tracing have a higher thread count on host\\" am: ce1ba111bf
Alex Light [Wed, 20 Jul 2016 22:19:32 +0000 (22:19 +0000)]
Merge \\"Make stream tracing have a higher thread count on host\\" am: ce1ba111bf
am: 2aad9683a3

Change-Id: I54ba24e0222f734d131fe1c14310eb3ef806a357

8 years agoMerge \"Make stream tracing have a higher thread count on host\"
Alex Light [Wed, 20 Jul 2016 22:16:34 +0000 (22:16 +0000)]
Merge \"Make stream tracing have a higher thread count on host\"
am: ce1ba111bf

Change-Id: Ib482cc8e3eb49aac849a809fb4d47368abfffa77

8 years agoMerge "Make stream tracing have a higher thread count on host"
Treehugger Robot [Wed, 20 Jul 2016 22:08:47 +0000 (22:08 +0000)]
Merge "Make stream tracing have a higher thread count on host"

8 years agoMake stream tracing have a higher thread count on host
Alex Light [Wed, 20 Jul 2016 17:43:39 +0000 (10:43 -0700)]
Make stream tracing have a higher thread count on host

Test: mma ART_TEST_TRACE_STREAM=true -j40 test-art-host-run-test-debug-prebuild-optimizing-relocate-stream-cms-checkjni-image-npictest-ndebuggable-001-HelloWorld32
Bug: 30229615
Change-Id: Id396f569b9e21ff764562005624aabc964d4e95a

8 years agoMerge \\"Refactor register allocation to be pluggable\\" am: 8a759904d4
Matthew Gharrity [Wed, 20 Jul 2016 20:45:56 +0000 (20:45 +0000)]
Merge \\"Refactor register allocation to be pluggable\\" am: 8a759904d4
am: 90d0c8adb6

Change-Id: If03c38d2f9088828d90026a28a36c65b27e09bb0

8 years agoMerge \"Refactor register allocation to be pluggable\"
Matthew Gharrity [Wed, 20 Jul 2016 20:42:58 +0000 (20:42 +0000)]
Merge \"Refactor register allocation to be pluggable\"
am: 8a759904d4

Change-Id: I7dcf31e96d0eb23f794da94c4268804ab22d82dc

8 years agoMerge "Refactor register allocation to be pluggable"
Treehugger Robot [Wed, 20 Jul 2016 20:38:30 +0000 (20:38 +0000)]
Merge "Refactor register allocation to be pluggable"

8 years agoMerge \\"Fix accidental pass-by-value\\" am: 27d99ed243
Matthew Gharrity [Wed, 20 Jul 2016 19:50:52 +0000 (19:50 +0000)]
Merge \\"Fix accidental pass-by-value\\" am: 27d99ed243
am: 3fa237bc32

Change-Id: I5eaec7a7a98f6179e0bdb0aae1449ebbb4121075

8 years agoMerge \"Fix accidental pass-by-value\"
Matthew Gharrity [Wed, 20 Jul 2016 19:48:24 +0000 (19:48 +0000)]
Merge \"Fix accidental pass-by-value\"
am: 27d99ed243

Change-Id: Iab0f6c30f77a0764a11ce094d05a79e81d28685e