OSDN Git Service
Roland Levillain [Thu, 26 Nov 2015 10:30:44 +0000 (10:30 +0000)]
Disable tests causing random failures with Enso and read barriers.
The new implementation of java.lang.reflect.Proxy (in
libcore/ojluni/src/main/java/java/lang/reflect/Proxy.java)
uses weak references (in getProxyClass0). Two ART run-tests
(044-proxy and 005-annotations) rely on precise proxy
class names being outputted, but because weak references may
not be collected on time, there is sometimes a discrepancy
between expected and actual results in those tests. This
issue seems to be triggereed more frequently with the
implementation of read barriers in the compiler, which
relies on a slow path always calling a runtime entry point.
This problem did not happen before Enso, as the old
implementation of getProxyClass
(libcore/libart/src/main/java/java/lang/reflect/Proxy.java)
did not use weak references (in getProxyClass).
Temporarily disable tests 044-proxy and 005-annotations to
make the art-read-barrier build turn green again.
Bug:
25838574
Change-Id: Ibfcdeb41572580c0e22b7688879e4b8b1cdb68e1
Shubham Ajmera [Thu, 26 Nov 2015 10:47:55 +0000 (10:47 +0000)]
Merge "Enabled 070-nio-buffer"
Vladimir Marko [Thu, 26 Nov 2015 10:04:10 +0000 (10:04 +0000)]
Merge "ARM64: Use the shifter operands." am:
3a581b4560 am:
5a424d27ef
am:
a064308854
* commit '
a0643088542f631f204bc61b1223a08a1b61bf6d':
ARM64: Use the shifter operands.
Vladimir Marko [Thu, 26 Nov 2015 10:00:39 +0000 (10:00 +0000)]
Merge "ARM64: Use the shifter operands." am:
3a581b4560
am:
5a424d27ef
* commit '
5a424d27ef385d55c692d5568834681fcee57677':
ARM64: Use the shifter operands.
Vladimir Marko [Thu, 26 Nov 2015 09:57:26 +0000 (09:57 +0000)]
Merge "ARM64: Use the shifter operands."
am:
3a581b4560
* commit '
3a581b45605b77fb40654d5d331d54df429cd2bd':
ARM64: Use the shifter operands.
Vladimir Marko [Thu, 26 Nov 2015 09:55:07 +0000 (09:55 +0000)]
Merge "ARM64: Use the shifter operands."
Shubham Ajmera [Wed, 25 Nov 2015 21:40:14 +0000 (21:40 +0000)]
Enabled 070-nio-buffer
Partially reverted CL - 818175, after adding backing array to
DirectByteBuffers. CLs - 818965, 818966, 818967, 818968.
Bug:
25759499
Change-Id: I6663add29349df51819a104b7d9eed6dae2e7519
Mathieu Chartier [Wed, 25 Nov 2015 20:22:53 +0000 (20:22 +0000)]
Merge "Fix circular dependencies for ContainsBootClassLoaderNonImageClass" am:
319362870b am:
bfaf8d2640
am:
a7dda0c980
* commit '
a7dda0c9806d05e83ec209ef0a75c502b5ae7b66':
Fix circular dependencies for ContainsBootClassLoaderNonImageClass
Mathieu Chartier [Wed, 25 Nov 2015 20:19:48 +0000 (20:19 +0000)]
Merge "Fix circular dependencies for ContainsBootClassLoaderNonImageClass" am:
319362870b
am:
bfaf8d2640
* commit '
bfaf8d2640896348f94570e74d1b1f2f60f7a36b':
Fix circular dependencies for ContainsBootClassLoaderNonImageClass
Mathieu Chartier [Wed, 25 Nov 2015 20:16:58 +0000 (20:16 +0000)]
Merge "Fix circular dependencies for ContainsBootClassLoaderNonImageClass"
am:
319362870b
* commit '
319362870b67f1bf19c432ff24d5bcc328e65994':
Fix circular dependencies for ContainsBootClassLoaderNonImageClass
Mathieu Chartier [Wed, 25 Nov 2015 20:14:18 +0000 (20:14 +0000)]
Merge "Fix circular dependencies for ContainsBootClassLoaderNonImageClass"
Mathieu Chartier [Tue, 24 Nov 2015 23:37:12 +0000 (15:37 -0800)]
Fix circular dependencies for ContainsBootClassLoaderNonImageClass
Old behavior incorrectly updated the memoization array when there was
a circular dependency. The new behavior is to not update the array
in this case.
Bug:
25839261
Change-Id: I081c97c4f7a62a783fdaf2afbe23ea380ef6946d
Calin Juravle [Wed, 25 Nov 2015 19:29:26 +0000 (19:29 +0000)]
Merge "Fix jit profile saving flags." am:
790d7eb698 am:
219f97bc1e
am:
449786f7cf
* commit '
449786f7cf093b157441f0bee471f3870e989a2b':
Fix jit profile saving flags.
Calin Juravle [Wed, 25 Nov 2015 19:24:43 +0000 (19:24 +0000)]
Merge "Fix jit profile saving flags." am:
790d7eb698
am:
219f97bc1e
* commit '
219f97bc1e9a38beaf5e18d33da0ac8b92f72277':
Fix jit profile saving flags.
Calin Juravle [Wed, 25 Nov 2015 19:20:39 +0000 (19:20 +0000)]
Merge "Fix jit profile saving flags."
am:
790d7eb698
* commit '
790d7eb698c42fdd882768ae333a59c01af61d51':
Fix jit profile saving flags.
Calin Juravle [Wed, 25 Nov 2015 19:15:23 +0000 (19:15 +0000)]
Merge "Fix jit profile saving flags."
Calin Juravle [Wed, 25 Nov 2015 19:05:42 +0000 (19:05 +0000)]
Fix jit profile saving flags.
Bug:
25886401
Change-Id: Ie7b9ead708736298f1d4a53b640434c988a5a0a8
Vladimir Marko [Wed, 25 Nov 2015 18:39:41 +0000 (18:39 +0000)]
Merge "ART: Clean up ordering of dex cache arrays in image files." am:
685af12dab am:
3cab2247e8
am:
5235b9584f
* commit '
5235b9584f8b21127ebaf64362cab1244e4f2f68':
ART: Clean up ordering of dex cache arrays in image files.
Vladimir Marko [Wed, 25 Nov 2015 18:36:33 +0000 (18:36 +0000)]
Merge "ART: Clean up ordering of dex cache arrays in image files." am:
685af12dab
am:
3cab2247e8
* commit '
3cab2247e87788a4d80dca4c607c517f0501fcf2':
ART: Clean up ordering of dex cache arrays in image files.
Vladimir Marko [Wed, 25 Nov 2015 18:33:10 +0000 (18:33 +0000)]
Merge "ART: Clean up ordering of dex cache arrays in image files."
am:
685af12dab
* commit '
685af12dab9c6927d94310376ebac79f1afa2095':
ART: Clean up ordering of dex cache arrays in image files.
Vladimir Marko [Wed, 25 Nov 2015 18:27:37 +0000 (18:27 +0000)]
Merge "ART: Clean up ordering of dex cache arrays in image files."
Roland Levillain [Wed, 25 Nov 2015 17:29:30 +0000 (17:29 +0000)]
Merge "ARM64 read barrier support for concurrent GC in Optimizing." am:
92e997d1e6 am:
5da5d045fa
am:
33a1c8b9e0
* commit '
33a1c8b9e0ada45f94c860ca6813fe945d443aa0':
ARM64 read barrier support for concurrent GC in Optimizing.
Roland Levillain [Wed, 25 Nov 2015 17:26:22 +0000 (17:26 +0000)]
Merge "ARM64 read barrier support for concurrent GC in Optimizing." am:
92e997d1e6
am:
5da5d045fa
* commit '
5da5d045fae407c2420aa174510de15dc731ee52':
ARM64 read barrier support for concurrent GC in Optimizing.
Roland Levillain [Wed, 25 Nov 2015 17:22:42 +0000 (17:22 +0000)]
Merge "ARM64 read barrier support for concurrent GC in Optimizing."
am:
92e997d1e6
* commit '
92e997d1e6fc0774c177b490619f9acdf97a5bb7':
ARM64 read barrier support for concurrent GC in Optimizing.
Roland Levillain [Wed, 25 Nov 2015 17:05:40 +0000 (17:05 +0000)]
Merge "ARM64 read barrier support for concurrent GC in Optimizing."
Calin Juravle [Wed, 25 Nov 2015 16:37:41 +0000 (16:37 +0000)]
Merge "Save jit profiling info to file." am:
e8bc4ec44a am:
449f62e059
am:
829d8f4435
* commit '
829d8f4435623e8995b7e6fe0bfde23cd6893458':
Save jit profiling info to file.
Vladimir Marko [Wed, 25 Nov 2015 16:37:35 +0000 (16:37 +0000)]
Merge "ART: Improve utf_test for unpaired surrogates." am:
19b10b1f27 am:
12531bce6b
am:
af05051f83
* commit '
af05051f83f64f73926692bb0ec114e8d1422505':
ART: Improve utf_test for unpaired surrogates.
Vladimir Marko [Wed, 25 Nov 2015 16:37:28 +0000 (16:37 +0000)]
Merge "Optimize some commonly used utf8 functions by:" am:
3b9957bfdb am:
9795492639
am:
1e1ddce900
* commit '
1e1ddce9005e8b0f9ec84c4a1faf796a4ae2e0b3':
Optimize some commonly used utf8 functions by:
Vladimir Marko [Mon, 23 Nov 2015 18:05:08 +0000 (18:05 +0000)]
ART: Clean up ordering of dex cache arrays in image files.
Use the CompilerDriver::GetDexFilesForOatFile() ordering
and do not rely on the ordering of dex caches in the class
linker, even though the ordering is currently the same,
so we don't need to bump the image version.
Change-Id: Ie1807e42909058ab9983f5d0107a2a0a2641d9b7
Nicolas Geoffray [Wed, 25 Nov 2015 16:28:31 +0000 (16:28 +0000)]
Merge "Optimize HLoadClass when we know the class is in the cache." am:
883ef45b5d am:
bd5a084171
am:
a47afb9fde
* commit '
a47afb9fdeb369fd1e4176a66e7dc4a25f3b8953':
Optimize HLoadClass when we know the class is in the cache.
Alexandre Rames [Wed, 25 Nov 2015 16:28:08 +0000 (16:28 +0000)]
ARM64: Use the shifter operands.
This introduces architecture-specific instruction simplification.
On ARM64 we try to merge shifts and sign-extension operations into
arithmetic and logical instructions.
For example for the Java code
int res = a + (b << 5);
we would generate
lsl w3, w2, #5
add w0, w1, w3
and we now generate
add w0, w1, w2, lsl #5
Change-Id: Ic03bdff44a1c12e21ddff1b0513bd32a730742b7
Calin Juravle [Wed, 25 Nov 2015 16:23:17 +0000 (16:23 +0000)]
Merge "Save jit profiling info to file." am:
e8bc4ec44a
am:
449f62e059
* commit '
449f62e0593f543f2f0f6f924e88ea4b1515c44a':
Save jit profiling info to file.
Vladimir Marko [Wed, 25 Nov 2015 16:23:07 +0000 (16:23 +0000)]
Merge "ART: Improve utf_test for unpaired surrogates." am:
19b10b1f27
am:
12531bce6b
* commit '
12531bce6b04280e19ec8ba335e117f303aea0e7':
ART: Improve utf_test for unpaired surrogates.
Vladimir Marko [Wed, 25 Nov 2015 16:23:00 +0000 (16:23 +0000)]
Merge "Optimize some commonly used utf8 functions by:" am:
3b9957bfdb
am:
9795492639
* commit '
9795492639eb7c366ff47dab09a0d91e4745b655':
Optimize some commonly used utf8 functions by:
Calin Juravle [Wed, 25 Nov 2015 16:18:40 +0000 (16:18 +0000)]
Merge "Save jit profiling info to file."
am:
e8bc4ec44a
* commit '
e8bc4ec44a855b2e4174ba3e0efd9b59c52064e4':
Save jit profiling info to file.
Vladimir Marko [Wed, 25 Nov 2015 16:18:33 +0000 (16:18 +0000)]
Merge "ART: Improve utf_test for unpaired surrogates."
am:
19b10b1f27
* commit '
19b10b1f27959f393403703f9c3259cb916fcf42':
ART: Improve utf_test for unpaired surrogates.
Vladimir Marko [Wed, 25 Nov 2015 16:18:19 +0000 (16:18 +0000)]
Merge "Optimize some commonly used utf8 functions by:"
am:
3b9957bfdb
* commit '
3b9957bfdb38c1048809f000afc7e771fd1a24db':
Optimize some commonly used utf8 functions by:
Calin Juravle [Wed, 25 Nov 2015 12:51:40 +0000 (12:51 +0000)]
Merge "Save jit profiling info to file."
Vladimir Marko [Wed, 25 Nov 2015 12:10:44 +0000 (12:10 +0000)]
Merge "ART: Improve utf_test for unpaired surrogates."
Vladimir Marko [Wed, 25 Nov 2015 11:10:20 +0000 (11:10 +0000)]
ART: Improve utf_test for unpaired surrogates.
This is a follow-up to
https://android-review.googlesource.com/180986
Change-Id: I8982a63c0ec48bf3b3198c278a96be7b5dfc2152
Vladimir Marko [Wed, 25 Nov 2015 11:14:08 +0000 (11:14 +0000)]
Merge "Optimize some commonly used utf8 functions by:"
Calin Juravle [Fri, 23 Oct 2015 16:56:15 +0000 (17:56 +0100)]
Save jit profiling info to file.
Currently saves only the hot method references and omits the inline
cache.
Change-Id: I79e91f855f6b52dc19a9a86662604f2eee16613c
Narayan Kamath [Tue, 24 Nov 2015 19:02:48 +0000 (19:02 +0000)]
Revert "Fix 030-bad-finalizer & 059-finalizer-throw."
This reverts commit
13ca74fed068a6a49221b5213ce0b1bebeda3ed6.
This is now not needed, and the libcore side of this cleanup has
been reverted as it's problematic. The test passes without this
cleanup.
Nicolas Geoffray [Tue, 24 Nov 2015 19:02:26 +0000 (19:02 +0000)]
Merge "Optimize HLoadClass when we know the class is in the cache." am:
883ef45b5d
am:
bd5a084171
* commit '
bd5a084171246ad4ab5790c46f20b1d7c8219978':
Optimize HLoadClass when we know the class is in the cache.
Nicolas Geoffray [Tue, 24 Nov 2015 18:58:46 +0000 (18:58 +0000)]
Merge "Optimize HLoadClass when we know the class is in the cache."
am:
883ef45b5d
* commit '
883ef45b5d5a2e4005914c7b339881900976b6e7':
Optimize HLoadClass when we know the class is in the cache.
Nicolas Geoffray [Tue, 24 Nov 2015 18:53:37 +0000 (18:53 +0000)]
Merge "Optimize HLoadClass when we know the class is in the cache."
Nicolas Geoffray [Tue, 24 Nov 2015 18:02:36 +0000 (18:02 +0000)]
Merge "Add backward branch instumentation to the switch interpreter." am:
fca8008f54 am:
3abc5a1b36
am:
14a836422e
* commit '
14a836422e93e0b0fb45760ebfeb7d5fa8a60614':
Add backward branch instumentation to the switch interpreter.
Nicolas Geoffray [Tue, 24 Nov 2015 17:59:06 +0000 (17:59 +0000)]
Merge "Add backward branch instumentation to the switch interpreter." am:
fca8008f54
am:
3abc5a1b36
* commit '
3abc5a1b36ea08b7678e32acb8bd611602081d6d':
Add backward branch instumentation to the switch interpreter.
Nicolas Geoffray [Tue, 24 Nov 2015 15:48:56 +0000 (15:48 +0000)]
Optimize HLoadClass when we know the class is in the cache.
Change-Id: Iaa74591eed0f2eabc9ba9f9988681d9582faa320
Vladimir Marko [Tue, 24 Nov 2015 17:55:33 +0000 (17:55 +0000)]
Merge "ART: Fix SafeMap::Put()/PutBefore() rvalue overloads." am:
dcb07112d1 am:
d8fd461658
am:
9dc080bb22
* commit '
9dc080bb22276e31aebe9833c08dc8546a58e563':
ART: Fix SafeMap::Put()/PutBefore() rvalue overloads.
Nicolas Geoffray [Tue, 24 Nov 2015 17:55:25 +0000 (17:55 +0000)]
Merge "A few more optimizations on avoiding HClinit." am:
95f7bbcd99 am:
a7386e40c2
am:
5d07cb4123
* commit '
5d07cb41230f84d4dd018c1f9f9732d6eed4351f':
A few more optimizations on avoiding HClinit.
Nicolas Geoffray [Tue, 24 Nov 2015 17:55:16 +0000 (17:55 +0000)]
Merge "MIPS32: Record missing implicit null checks" am:
b110fd6f23 am:
67efef697b
am:
7185d8d0ba
* commit '
7185d8d0ba74310ef150ec7037b197ba2e36c642':
MIPS32: Record missing implicit null checks
Roland Levillain [Tue, 24 Nov 2015 17:55:08 +0000 (17:55 +0000)]
Merge "Revamp art::CheckEntrypointTypes uses." am:
22c20ef131 am:
f27aa970e6
am:
38bab8eaae
* commit '
38bab8eaae8e63e06c0d3c3b19810e6c3cc4eb17':
Revamp art::CheckEntrypointTypes uses.
Roland Levillain [Tue, 24 Nov 2015 17:55:00 +0000 (17:55 +0000)]
Merge "MIPS64: Support short and long branches" am:
51a354c747 am:
e73ddd8db1
am:
448cd78d1f
* commit '
448cd78d1fcd5e101ab97056dd54be5ba872fcb6':
MIPS64: Support short and long branches
Nicolas Geoffray [Tue, 24 Nov 2015 17:54:51 +0000 (17:54 +0000)]
Merge "Add another test for wide stores fix in optimizing." am:
7f8275549f am:
03ea981f95
am:
ca6f2d57e6
* commit '
ca6f2d57e6ba19fe5fadafe722bbad8c716f80e0':
Add another test for wide stores fix in optimizing.
Roland Levillain [Tue, 24 Nov 2015 17:54:43 +0000 (17:54 +0000)]
Merge "Clean up read barrier related comments in Optimizing." am:
43922a52eb am:
94d4b661ce
am:
d3d0498687
* commit '
d3d0498687e3bd7f6f460aed8bbee60ba461c14f':
Clean up read barrier related comments in Optimizing.
Nicolas Geoffray [Tue, 24 Nov 2015 17:54:33 +0000 (17:54 +0000)]
Merge "Revert "lambda: Add support for invoke-interface for boxed innate lambdas"" am:
a4bce7141a am:
3928e8ccc3
am:
ddade0ebab -s ours
* commit '
ddade0ebab3d79bdc07861b50c0253bc5646a18b':
Revert "lambda: Add support for invoke-interface for boxed innate lambdas"
Nicolas Geoffray [Tue, 24 Nov 2015 17:54:30 +0000 (17:54 +0000)]
Merge "Add backward branch instumentation to the switch interpreter."
am:
fca8008f54
* commit '
fca8008f54faefbbfdf8508bcef3a1bc107741bd':
Add backward branch instumentation to the switch interpreter.
Nicolas Geoffray [Tue, 24 Nov 2015 17:50:24 +0000 (17:50 +0000)]
Merge "Add backward branch instumentation to the switch interpreter."
Vladimir Marko [Tue, 24 Nov 2015 17:26:25 +0000 (17:26 +0000)]
Merge "ART: Fix SafeMap::Put()/PutBefore() rvalue overloads." am:
dcb07112d1
am:
d8fd461658
* commit '
d8fd4616589e7e0ed602b67d1fa4ed5f4f0d6207':
ART: Fix SafeMap::Put()/PutBefore() rvalue overloads.
Vladimir Marko [Tue, 24 Nov 2015 17:23:00 +0000 (17:23 +0000)]
Merge "ART: Fix SafeMap::Put()/PutBefore() rvalue overloads."
am:
dcb07112d1
* commit '
dcb07112d1f8fcd3a8707689cd9708c2ad8b47a4':
ART: Fix SafeMap::Put()/PutBefore() rvalue overloads.
Vladimir Marko [Tue, 24 Nov 2015 17:20:34 +0000 (17:20 +0000)]
Merge "ART: Fix SafeMap::Put()/PutBefore() rvalue overloads."
Vladimir Marko [Tue, 24 Nov 2015 17:06:32 +0000 (17:06 +0000)]
ART: Fix SafeMap::Put()/PutBefore() rvalue overloads.
Remove the mistaken "const" qualifier which pretty much
defeats the intended optimizations and prevents using
the SafeMap with non-copyable values.
Change-Id: I07d3e083c0b9b8895cbd181cb1bb4ca2293c7c5d
Nicolas Geoffray [Tue, 24 Nov 2015 16:32:33 +0000 (16:32 +0000)]
Add backward branch instumentation to the switch interpreter.
Change-Id: I0328daa86d5f19311ab3bd6246a1c3e4b40b0ba9
Nicolas Geoffray [Tue, 24 Nov 2015 15:52:22 +0000 (15:52 +0000)]
Merge "A few more optimizations on avoiding HClinit." am:
95f7bbcd99
am:
a7386e40c2
* commit '
a7386e40c2567935bd1a6eaedbd02e27e23ab2e3':
A few more optimizations on avoiding HClinit.
Nicolas Geoffray [Tue, 24 Nov 2015 15:52:15 +0000 (15:52 +0000)]
Merge "MIPS32: Record missing implicit null checks" am:
b110fd6f23
am:
67efef697b
* commit '
67efef697b03872e3779f8c91663c99b12a95974':
MIPS32: Record missing implicit null checks
Roland Levillain [Tue, 24 Nov 2015 15:52:07 +0000 (15:52 +0000)]
Merge "Revamp art::CheckEntrypointTypes uses." am:
22c20ef131
am:
f27aa970e6
* commit '
f27aa970e68b96d8a954fd2e566b78c7bc9ea4e8':
Revamp art::CheckEntrypointTypes uses.
Roland Levillain [Tue, 24 Nov 2015 15:50:45 +0000 (15:50 +0000)]
Merge "MIPS64: Support short and long branches" am:
51a354c747
am:
e73ddd8db1
* commit '
e73ddd8db1e306217585b3d0fc03f03e6e09db46':
MIPS64: Support short and long branches
Nicolas Geoffray [Tue, 24 Nov 2015 15:50:37 +0000 (15:50 +0000)]
Merge "Add another test for wide stores fix in optimizing." am:
7f8275549f
am:
03ea981f95
* commit '
03ea981f950f877b34925a8fb8f75c4e1db07ba0':
Add another test for wide stores fix in optimizing.
Roland Levillain [Tue, 24 Nov 2015 15:50:29 +0000 (15:50 +0000)]
Merge "Clean up read barrier related comments in Optimizing." am:
43922a52eb
am:
94d4b661ce
* commit '
94d4b661ced8836ec004b64aa8cfdf125d9e8578':
Clean up read barrier related comments in Optimizing.
Nicolas Geoffray [Tue, 24 Nov 2015 15:50:21 +0000 (15:50 +0000)]
Merge "Revert "lambda: Add support for invoke-interface for boxed innate lambdas"" am:
a4bce7141a
am:
3928e8ccc3
* commit '
3928e8ccc38d41f4340d128367590860ebf7690c':
Revert "lambda: Add support for invoke-interface for boxed innate lambdas"
Nicolas Geoffray [Tue, 24 Nov 2015 15:44:41 +0000 (15:44 +0000)]
Merge "A few more optimizations on avoiding HClinit."
am:
95f7bbcd99
* commit '
95f7bbcd991fbfaead438a2866354714eb32af38':
A few more optimizations on avoiding HClinit.
Nicolas Geoffray [Tue, 24 Nov 2015 15:44:33 +0000 (15:44 +0000)]
Merge "MIPS32: Record missing implicit null checks"
am:
b110fd6f23
* commit '
b110fd6f23ea16de5d0e891a345780df03dae260':
MIPS32: Record missing implicit null checks
Roland Levillain [Tue, 24 Nov 2015 15:44:20 +0000 (15:44 +0000)]
Merge "Revamp art::CheckEntrypointTypes uses."
am:
22c20ef131
* commit '
22c20ef131812a6e7ff01f8c57ffe1eb0942fc39':
Revamp art::CheckEntrypointTypes uses.
Roland Levillain [Tue, 24 Nov 2015 15:42:20 +0000 (15:42 +0000)]
Merge "MIPS64: Support short and long branches"
am:
51a354c747
* commit '
51a354c747c8a76a4716a49a1f70bfd975d63787':
MIPS64: Support short and long branches
Nicolas Geoffray [Tue, 24 Nov 2015 15:42:13 +0000 (15:42 +0000)]
Merge "Add another test for wide stores fix in optimizing."
am:
7f8275549f
* commit '
7f8275549fd503f82ac63d65800afacab85af09d':
Add another test for wide stores fix in optimizing.
Roland Levillain [Tue, 24 Nov 2015 15:42:06 +0000 (15:42 +0000)]
Merge "Clean up read barrier related comments in Optimizing."
am:
43922a52eb
* commit '
43922a52ebc159d048545ad4258aa12cd35cc176':
Clean up read barrier related comments in Optimizing.
Nicolas Geoffray [Tue, 24 Nov 2015 15:41:55 +0000 (15:41 +0000)]
Merge "Revert "lambda: Add support for invoke-interface for boxed innate lambdas""
am:
a4bce7141a
* commit '
a4bce7141aa089d9664d064bdaea05223759447a':
Revert "lambda: Add support for invoke-interface for boxed innate lambdas"
Nicolas Geoffray [Tue, 24 Nov 2015 15:17:08 +0000 (15:17 +0000)]
Merge "A few more optimizations on avoiding HClinit."
Nicolas Geoffray [Tue, 24 Nov 2015 14:06:57 +0000 (14:06 +0000)]
A few more optimizations on avoiding HClinit.
Change-Id: I622a98b620e9d261cb654e2f5ab578bd8b3484b1
Nicolas Geoffray [Tue, 24 Nov 2015 14:49:44 +0000 (14:49 +0000)]
Merge "MIPS32: Record missing implicit null checks"
Goran Jakovljevic [Fri, 20 Nov 2015 16:22:57 +0000 (17:22 +0100)]
MIPS32: Record missing implicit null checks
ImplicitNullChecks are recorded for HandleFieldGet and HandleFieldSet
instructions for longs after accessing first word.
This fixes following CTS tests:
* dot.junit.opcodes.iget_wide.JUnit_Test_iget_wide#testE2
* dot.junit.opcodes.iput_wide.JUnit_Test_iput_wide#testE2
Change-Id: I0a93370d4a78d36805a8d5a6c304ca0329da2363
Roland Levillain [Tue, 24 Nov 2015 13:10:05 +0000 (13:10 +0000)]
ARM64 read barrier support for concurrent GC in Optimizing.
This first implementation uses slow paths to instrument heap
reference loads and GC root loads for the concurrent copying
collector, respectively calling the artReadBarrierSlow and
artReadBarrierForRootSlow runtime entry points.
Notes:
- This implementation does not instrument HInvokeVirtual
nor HInvokeInterface instructions (for class reference
loads), as the corresponding read barriers are not stricly
required with the current concurrent copying collector.
- Intrinsics which may eventually call (on slow path) are
disabled when read barriers are enabled, as the current
slow path infrastructure does not support this case.
- When read barriers are enabled, the code generated for a
HArraySet instruction always go into the array set slow
path for object arrays (delegating the operation to the
runtime), as we are lacking a mechanism to keep a
temporary register live accross a runtime call (needed for
the instrumentation of type checking code, which requires
two successive read barriers).
Bug:
12687968
Change-Id: Icfb74f67bf23ae80e7723ee6a0c9ff34ba325d48
Przemyslaw Szczepaniak [Tue, 24 Nov 2015 12:36:50 +0000 (12:36 +0000)]
Merge "Enso ThreadGroup.groups is an array not ArrayList"
Roland Levillain [Tue, 24 Nov 2015 12:05:25 +0000 (12:05 +0000)]
Merge "Revamp art::CheckEntrypointTypes uses."
Przemyslaw Szczepaniak [Tue, 24 Nov 2015 11:59:59 +0000 (11:59 +0000)]
Enso ThreadGroup.groups is an array not ArrayList
ThreadGroup.groups in the enso branch uses plain
array in place of ArrayList. debugger.cc code
needed minor adjustments to access it.
Bug:
25857261
Change-Id: I77ffb92b64a3642933c3240dbadedab5def5dc1b
Roland Levillain [Mon, 23 Nov 2015 18:53:50 +0000 (18:53 +0000)]
Revamp art::CheckEntrypointTypes uses.
Change-Id: I6e13e594539e766ed94524ac3282cec292ba91da
Nicolas Geoffray [Tue, 24 Nov 2015 09:17:30 +0000 (09:17 +0000)]
Revert "lambda: Add support for invoke-interface for boxed innate lambdas"
955-lambda is flaky
Bug:
24618608
Bug:
25107649
This reverts commit
457e874459ae638145cab6d572e34d48480e39d2.
(cherry picked from commit
3a0909248e04b22c3981cbf617bc2502ed5b6380)
Change-Id: I24884344d21d7a4262e53e3f5dba57032687ddb7
Bruce Hoult [Wed, 28 Oct 2015 12:06:12 +0000 (15:06 +0300)]
Optimize some commonly used utf8 functions by:
- using counted loops instead of searching for terminating null. In
the important cases the caller already knows the length: change
the API to pass it in. Keep the old API version as well to avoid
extensive changes to non-critical debug and test code.
- ensure the common cases are at the start of if/then/else chains.
Usually 99+% of characters are ASCII even in mixed strings.
- for the "convert" functions, when both utf8 and utf16 lengths are
passed, and are equal, it means the entire string is ASCII, and a
specialized loop can be used. The compiler might then unroll or
even vectorize this.
The functions improved are (tested on Nexus 5 with a 44 character
ASCII string):
CountModifiedUtf8Chars : 20% faster
ConvertUtf16ToModifiedUtf8: 80% faster
ConvertModifiedUtf8ToUtf16: 200% faster
Also for completeness CountUtf8Bytes has been cleaned up a little, but
the speed is unchanged. Unlike CountModifiedUtf8Chars, it was already
passed the length, rather than searching for null.
Change-Id: I1c9b7dea3eda869fc9f5f6b4dd6be8cdd5bc3ac0
Roland Levillain [Tue, 24 Nov 2015 10:34:22 +0000 (10:34 +0000)]
Merge "MIPS64: Support short and long branches"
Nicolas Geoffray [Tue, 24 Nov 2015 10:23:38 +0000 (10:23 +0000)]
Merge "Add another test for wide stores fix in optimizing."
Nicolas Geoffray [Tue, 3 Nov 2015 16:05:38 +0000 (16:05 +0000)]
Add another test for wide stores fix in optimizing.
Change is https://android-review.googlesource.com/#/c/183273/
Change-Id: I8013795dfa67e8e03f51a13dfa3016b89d3b56b7
Roland Levillain [Tue, 24 Nov 2015 09:54:46 +0000 (09:54 +0000)]
Merge "Clean up read barrier related comments in Optimizing."
Nicolas Geoffray [Tue, 24 Nov 2015 09:20:09 +0000 (09:20 +0000)]
Merge "Revert "lambda: Add support for invoke-interface for boxed innate lambdas""
Nicolas Geoffray [Tue, 24 Nov 2015 09:17:30 +0000 (09:17 +0000)]
Revert "lambda: Add support for invoke-interface for boxed innate lambdas"
955-lambda is flaky
Bug:
24618608
Bug:
25107649
This reverts commit
457e874459ae638145cab6d572e34d48480e39d2.
Change-Id: I24884344d21d7a4262e53e3f5dba57032687ddb7
Roland Levillain [Mon, 23 Nov 2015 19:36:29 +0000 (19:36 +0000)]
Merge "Disable JDWP tests with read barriers." am:
0c32fdeaed am:
54c9448680
am:
0142571eb6
* commit '
0142571eb613fe8a528153664fb5b403c5875b00':
Disable JDWP tests with read barriers.
Roland Levillain [Mon, 23 Nov 2015 19:33:08 +0000 (19:33 +0000)]
Merge "Disable JDWP tests with read barriers." am:
0c32fdeaed
am:
54c9448680
* commit '
54c9448680df5a68a1fcccff131cabd743642155':
Disable JDWP tests with read barriers.
Roland Levillain [Mon, 23 Nov 2015 19:30:02 +0000 (19:30 +0000)]
Merge "Disable JDWP tests with read barriers."
am:
0c32fdeaed
* commit '
0c32fdeaeda2a1e388e280da12662d1d18c834a2':
Disable JDWP tests with read barriers.
Roland Levillain [Mon, 23 Nov 2015 19:29:22 +0000 (19:29 +0000)]
Clean up read barrier related comments in Optimizing.
Bug:
12687968
Change-Id: Idf2e371e01e10d9d32c95b150735e2c96244232e
Roland Levillain [Mon, 23 Nov 2015 19:25:48 +0000 (19:25 +0000)]
Merge "Disable JDWP tests with read barriers."