OSDN Git Service
Nicolas Geoffray [Mon, 1 Feb 2016 15:08:54 +0000 (15:08 +0000)]
Merge "Be on the safe side: emit an environment for runtime calls." am:
99b4d43c7b
am:
860169dde5
* commit '
860169dde56ab89777153de20bcd1b962e269859':
Be on the safe side: emit an environment for runtime calls.
Nicolas Geoffray [Mon, 1 Feb 2016 15:07:01 +0000 (15:07 +0000)]
Merge "Be on the safe side: emit an environment for runtime calls."
am:
99b4d43c7b
* commit '
99b4d43c7b2c81a0a4712578016efdfc65cdc21b':
Be on the safe side: emit an environment for runtime calls.
Nicolas Geoffray [Mon, 1 Feb 2016 15:02:23 +0000 (15:02 +0000)]
Merge "Be on the safe side: emit an environment for runtime calls."
Narayan Kamath [Mon, 1 Feb 2016 14:09:07 +0000 (14:09 +0000)]
Narayan Kamath [Mon, 1 Feb 2016 14:06:16 +0000 (14:06 +0000)]
Narayan Kamath [Mon, 1 Feb 2016 14:01:36 +0000 (14:01 +0000)]
Calin Juravle [Mon, 1 Feb 2016 13:51:25 +0000 (13:51 +0000)]
Merge "Invoke all other registered handlers only for generated code" am:
3caf203854
am:
fe4e778d3f
* commit '
fe4e778d3f9077ca90baabb5556a82fd3ff19274':
Invoke all other registered handlers only for generated code
Calin Juravle [Mon, 1 Feb 2016 13:49:31 +0000 (13:49 +0000)]
Merge "Invoke all other registered handlers only for generated code"
am:
3caf203854
* commit '
3caf203854a9270eed6d2858744fc1f6a3f76940':
Invoke all other registered handlers only for generated code
Narayan Kamath [Mon, 1 Feb 2016 13:22:18 +0000 (13:22 +0000)]
Track libcore change
aa517a356a38b8cd6764667e1edd735aaf5978e9.
Change-Id: I32a995eb62e3268c20fa5c2ac8dc2bf190c6fb7a
Calin Juravle [Mon, 1 Feb 2016 13:43:27 +0000 (13:43 +0000)]
Merge "Invoke all other registered handlers only for generated code"
Nicolas Geoffray [Mon, 1 Feb 2016 12:23:22 +0000 (12:23 +0000)]
Be on the safe side: emit an environment for runtime calls.
Even if those runtime calls don't throw, they may be interrupted
and be asked to dump their stack. Since dumping a stack also dumps
locked Java objects, we need a DexRegisterMap at these locations
to know the location of those objects.
Adds 0.05% to boot image code size.
bug:
26168076
Change-Id: I7c3975addea9ddf3123183b07108b0701bb26fc8
David Brazdil [Mon, 1 Feb 2016 12:25:05 +0000 (12:25 +0000)]
Merge "ART: Disallow uses of uninitialized references" am:
6f2c459c97
am:
4e2ecda358
* commit '
4e2ecda358b57dd464711229ee5ef90ac8b94227':
ART: Disallow uses of uninitialized references
David Brazdil [Mon, 1 Feb 2016 12:23:19 +0000 (12:23 +0000)]
Merge "ART: Disallow uses of uninitialized references"
am:
6f2c459c97
* commit '
6f2c459c97fad172991d05f96cb6036050c2db97':
ART: Disallow uses of uninitialized references
David Brazdil [Mon, 1 Feb 2016 12:19:53 +0000 (12:19 +0000)]
Merge "ART: Disallow uses of uninitialized references"
David Brazdil [Tue, 19 Jan 2016 14:25:29 +0000 (14:25 +0000)]
ART: Disallow uses of uninitialized references
The following instructions accepted uninitialized reference types
as their arguments:
- instance-of
- check-cast
- throw
- iput-object (stored value argument)
- sput-object
- invoke-* (non-this arguments)
Monitor-enter and monitor-exit are allowed.
Bug:
26594149
Change-Id: I2a4decb1fba274b8969b17bc237ac0fd19b93c80
Narayan Kamath [Mon, 1 Feb 2016 11:47:58 +0000 (11:47 +0000)]
Merge "Revert "Disable test after failing test was pushed."" am:
2b8624cf94
am:
643207f508
* commit '
643207f5081476d16a82255e79be19e591990cc0':
Revert "Disable test after failing test was pushed."
Narayan Kamath [Mon, 1 Feb 2016 11:46:12 +0000 (11:46 +0000)]
Merge "Revert "Disable test after failing test was pushed.""
am:
2b8624cf94
* commit '
2b8624cf9487e9dee3b817833499564b627248c4':
Revert "Disable test after failing test was pushed."
Narayan Kamath [Mon, 1 Feb 2016 11:41:40 +0000 (11:41 +0000)]
Merge "Revert "Disable test after failing test was pushed.""
Narayan Kamath [Mon, 1 Feb 2016 10:40:38 +0000 (10:40 +0000)]
Revert "Disable test after failing test was pushed."
This reverts commit
fd825201137046db7ffa4371ad6d374beda89735.
The change that fixes this test has been submitted.
Change-Id: I35612987b6b149f538b6c6d757eaa626b5349bbd
Mathieu Chartier [Sat, 30 Jan 2016 01:05:45 +0000 (01:05 +0000)]
Merge "Clean up UpdateOatFile for app images" am:
7f1551d28b
am:
356fe5e881
* commit '
356fe5e88172cb6734ec5aa4634068a375857b72':
Clean up UpdateOatFile for app images
Mathieu Chartier [Sat, 30 Jan 2016 01:03:51 +0000 (01:03 +0000)]
Merge "Clean up UpdateOatFile for app images"
am:
7f1551d28b
* commit '
7f1551d28b3674799a4bb2b198bf6b16f32082af':
Clean up UpdateOatFile for app images
Mathieu Chartier [Sat, 30 Jan 2016 00:58:56 +0000 (00:58 +0000)]
Merge "Clean up UpdateOatFile for app images"
Mathieu Chartier [Sat, 30 Jan 2016 00:14:25 +0000 (00:14 +0000)]
Merge "Add oat checksum check for app image loading" am:
dc5909af87
am:
0436f59846
* commit '
0436f59846caa2979002ba1db10ff61f3b085a70':
Add oat checksum check for app image loading
Mathieu Chartier [Sat, 30 Jan 2016 00:12:33 +0000 (00:12 +0000)]
Merge "Add oat checksum check for app image loading"
am:
dc5909af87
* commit '
dc5909af876474898e34bb41240130f6c3a37b6c':
Add oat checksum check for app image loading
Mathieu Chartier [Fri, 29 Jan 2016 04:33:36 +0000 (20:33 -0800)]
Clean up UpdateOatFile for app images
Check that for the there is only one oat file name for the app image
case.
Avoid calling GetOatElfInformation unless necessary.
Bug:
22858531
Change-Id: I88d258a1cc2823956ecc4fca9a6f7b2d3c4b986e
Mathieu Chartier [Sat, 30 Jan 2016 00:07:45 +0000 (00:07 +0000)]
Merge "Add oat checksum check for app image loading"
Mathieu Chartier [Fri, 29 Jan 2016 23:54:18 +0000 (23:54 +0000)]
Merge "ART: Do not reopen oat file in ImageWriter::UpdateOatFile()." am:
472964bceb
am:
092ccae9f7
* commit '
092ccae9f786c1a9c9cfacdd612328ac017ba3e9':
ART: Do not reopen oat file in ImageWriter::UpdateOatFile().
Mathieu Chartier [Fri, 29 Jan 2016 23:52:09 +0000 (23:52 +0000)]
Merge "ART: Do not reopen oat file in ImageWriter::UpdateOatFile()."
am:
472964bceb
* commit '
472964bcebeeb42e7428aca93c2d8d6295e865ee':
ART: Do not reopen oat file in ImageWriter::UpdateOatFile().
Jeff Hao [Fri, 29 Jan 2016 23:50:06 +0000 (23:50 +0000)]
Merge "Regression test ensuring unresolved classes are not put in dex cache." am:
36a0cc7176
am:
7e98241854
* commit '
7e98241854013694a7c6ff0829259a0bf441037a':
Regression test ensuring unresolved classes are not put in dex cache.
Mathieu Chartier [Fri, 29 Jan 2016 23:48:56 +0000 (23:48 +0000)]
Merge "ART: Do not reopen oat file in ImageWriter::UpdateOatFile()."
Jeff Hao [Fri, 29 Jan 2016 23:48:11 +0000 (23:48 +0000)]
Merge "Regression test ensuring unresolved classes are not put in dex cache."
am:
36a0cc7176
* commit '
36a0cc7176f271b170f972aae86fccd0c4bfd241':
Regression test ensuring unresolved classes are not put in dex cache.
Jeff Hao [Fri, 29 Jan 2016 23:43:04 +0000 (23:43 +0000)]
Merge "Regression test ensuring unresolved classes are not put in dex cache."
Jeff Hao [Fri, 29 Jan 2016 02:22:36 +0000 (18:22 -0800)]
Regression test ensuring unresolved classes are not put in dex cache.
Bug:
26792072
(cherry-picked from commit
2bf56594e78ab7b01ee85c1d885c92cb469dfdf2)
Change-Id: I4e9f4ab0b8ff215c39d854ee041c1acfedcf0b6d
Jeff Hao [Fri, 29 Jan 2016 23:39:38 +0000 (23:39 +0000)]
Merge "Regression test ensuring unresolved classes are not put in dex cache."
Jeff Hao [Fri, 29 Jan 2016 02:22:36 +0000 (18:22 -0800)]
Regression test ensuring unresolved classes are not put in dex cache.
Bug:
26792072
Change-Id: I71ed1eb93956236ece853df08e6b42e08c2f440a
Hiroshi Yamauchi [Fri, 29 Jan 2016 22:26:12 +0000 (22:26 +0000)]
Merge "Add a comment on ReadBarrier::Mark() about ALWAYS_INLINE." am:
1945103a87
am:
c8cc1b0b10
* commit '
c8cc1b0b108bd5ead33ba3ca265c9b04caebd799':
Add a comment on ReadBarrier::Mark() about ALWAYS_INLINE.
Hiroshi Yamauchi [Fri, 29 Jan 2016 22:23:16 +0000 (22:23 +0000)]
Merge "Add a comment on ReadBarrier::Mark() about ALWAYS_INLINE."
am:
1945103a87
* commit '
1945103a8748b761460f80d696ed0169d78a8bf1':
Add a comment on ReadBarrier::Mark() about ALWAYS_INLINE.
Mathieu Chartier [Fri, 29 Jan 2016 20:22:17 +0000 (12:22 -0800)]
Add oat checksum check for app image loading
Bug:
26846419
Bug:
22858531
Change-Id: If30028b7d6b5749f5bdbed0c219d014a3b50a11b
Hiroshi Yamauchi [Fri, 29 Jan 2016 22:18:47 +0000 (22:18 +0000)]
Merge "Add a comment on ReadBarrier::Mark() about ALWAYS_INLINE."
Alex Light [Fri, 29 Jan 2016 21:49:39 +0000 (21:49 +0000)]
Merge "Fix issue with exception type resolution during linking." am:
ea59deb1a3
am:
28370dce29
* commit '
28370dce2900949e494e071f5bbfb4fe0e5478c3':
Fix issue with exception type resolution during linking.
Alex Light [Fri, 29 Jan 2016 21:47:39 +0000 (21:47 +0000)]
Merge "Fix issue with exception type resolution during linking."
am:
ea59deb1a3
* commit '
ea59deb1a3e2916054dc3fd7e5e586316dacf524':
Fix issue with exception type resolution during linking.
Alex Light [Fri, 29 Jan 2016 21:42:26 +0000 (21:42 +0000)]
Merge "Fix issue with exception type resolution during linking."
Hans Boehm [Fri, 29 Jan 2016 20:47:44 +0000 (20:47 +0000)]
Merge "Do not use atomic increment in allocation as fence." am:
ab00be9c6e
am:
eba19bc560
* commit '
eba19bc560f17572f7c346b97cf3d6a193b9a491':
Do not use atomic increment in allocation as fence.
Hans Boehm [Fri, 29 Jan 2016 20:45:19 +0000 (20:45 +0000)]
Merge "Do not use atomic increment in allocation as fence."
am:
ab00be9c6e
* commit '
ab00be9c6e2706be3499bd189637e27edf7f2168':
Do not use atomic increment in allocation as fence.
Hans Boehm [Fri, 29 Jan 2016 20:40:09 +0000 (20:40 +0000)]
Merge "Do not use atomic increment in allocation as fence."
Alex Light [Fri, 29 Jan 2016 20:24:48 +0000 (12:24 -0800)]
Fix issue with exception type resolution during linking.
When using default methods that cross dex-files we would sometimes
attempt to lookup method information using the wrong dex file. This
fixes this issue.
Bug:
26872564
Change-Id: I3c4b64ef970017356962060f3bd3781b4629a3c8
Hiroshi Yamauchi [Fri, 29 Jan 2016 20:06:36 +0000 (12:06 -0800)]
Add a comment on ReadBarrier::Mark() about ALWAYS_INLINE.
This is a follow up on CL 199360.
Bug:
12687968
Bug:
26744236
Change-Id: I9930894a403e897b85d77caf92834afaa9a860a0
Aart Bik [Fri, 29 Jan 2016 19:10:38 +0000 (19:10 +0000)]
Merge "Implement compare() on ARM64." am:
2624ffcdba
am:
1d6a08cdc5
* commit '
1d6a08cdc53be1e7cb4e26259a18175e3ca02a6b':
Implement compare() on ARM64.
Aart Bik [Fri, 29 Jan 2016 19:08:02 +0000 (19:08 +0000)]
Merge "Implement compare() on ARM64."
am:
2624ffcdba
* commit '
2624ffcdbafd0d89cb92f688d4c264bb08a2522c':
Implement compare() on ARM64.
Andreas Gampe [Fri, 29 Jan 2016 19:06:01 +0000 (19:06 +0000)]
Merge "ART: Dump full exception on re-init failure message" am:
392899e8e2
am:
c7981edead
* commit '
c7981edeadc900a0af260d0276636421b2810cab':
ART: Dump full exception on re-init failure message
Andreas Gampe [Fri, 29 Jan 2016 19:03:31 +0000 (19:03 +0000)]
Merge "ART: Dump full exception on re-init failure message"
am:
392899e8e2
* commit '
392899e8e2c3a5bdbe2c92825eead9def7923c9c':
ART: Dump full exception on re-init failure message
Aart Bik [Fri, 29 Jan 2016 19:01:38 +0000 (19:01 +0000)]
Merge "Implement compare() on ARM64."
Andreas Gampe [Fri, 29 Jan 2016 18:50:18 +0000 (18:50 +0000)]
Merge "ART: Dump full exception on re-init failure message"
Aart Bik [Thu, 28 Jan 2016 22:36:22 +0000 (14:36 -0800)]
Implement compare() on ARM64.
Change-Id: I6b5982aeb7401cd90fc37431a72bdd2b7f3e322b
Mathieu Chartier [Fri, 29 Jan 2016 18:05:36 +0000 (10:05 -0800)]
Disable app images for now
Until we figure out why there are crashes.
Bug:
26872785
Bug:
22858531
Change-Id: I1c5f187a7671bbd16aa6651aacb61ee8bbd44e57
Aart Bik [Fri, 29 Jan 2016 17:48:48 +0000 (17:48 +0000)]
Merge "Implementation of integer intrinsics on x86_64" am:
ea3a00744d
am:
04f0ac05bf
* commit '
04f0ac05bfefc28d8fe7696f13c5a6f86519d0ba':
Implementation of integer intrinsics on x86_64
Aart Bik [Fri, 29 Jan 2016 17:46:42 +0000 (17:46 +0000)]
Merge "Implementation of integer intrinsics on x86_64"
am:
ea3a00744d
* commit '
ea3a00744d05bd403f423582bf6dc8462d305b31':
Implementation of integer intrinsics on x86_64
Alex Light [Fri, 29 Jan 2016 17:44:50 +0000 (17:44 +0000)]
Merge "Optimizing compiler support for directly calling interface methods" am:
1c720b7adf
am:
df38089e2b
* commit '
df38089e2bb1b1ce21104323dffc9d0839e1b1bb':
Optimizing compiler support for directly calling interface methods
Aart Bik [Fri, 29 Jan 2016 17:43:30 +0000 (17:43 +0000)]
Merge "Implementation of integer intrinsics on x86_64"
Alex Light [Fri, 29 Jan 2016 17:42:56 +0000 (17:42 +0000)]
Merge "Optimizing compiler support for directly calling interface methods"
am:
1c720b7adf
* commit '
1c720b7adf51f58248748f7505582349a73a651c':
Optimizing compiler support for directly calling interface methods
Alex Light [Fri, 29 Jan 2016 17:38:57 +0000 (17:38 +0000)]
Merge "Optimizing compiler support for directly calling interface methods"
Vladimir Marko [Fri, 29 Jan 2016 16:27:27 +0000 (16:27 +0000)]
ART: Do not reopen oat file in ImageWriter::UpdateOatFile().
Instead, pass the already opened file from Dex2Oat.
Bug:
26831001
Change-Id: I2341259499067f43ce620b590c5482d28f140e9f
Nicolas Geoffray [Fri, 29 Jan 2016 13:52:04 +0000 (13:52 +0000)]
Merge "Disable test after failing test was pushed." am:
ba5ea7003f
am:
c33cf0194e
* commit '
c33cf0194e04e4745f6305262d622e3937e50d0c':
Disable test after failing test was pushed.
Nicolas Geoffray [Fri, 29 Jan 2016 13:50:03 +0000 (13:50 +0000)]
Merge "Disable test after failing test was pushed."
am:
ba5ea7003f
* commit '
ba5ea7003f071f85936ee351aff46f64a56ee096':
Disable test after failing test was pushed.
Nicolas Geoffray [Fri, 29 Jan 2016 13:45:43 +0000 (13:45 +0000)]
Merge "Disable test after failing test was pushed."
Nicolas Geoffray [Fri, 29 Jan 2016 13:38:33 +0000 (13:38 +0000)]
Disable test after failing test was pushed.
bug:
26869497
Change-Id: I950b9fc164b512290d96d0137957348006796338
Nicolas Geoffray [Fri, 29 Jan 2016 12:15:18 +0000 (12:15 +0000)]
Merge "Re-enable test 566-polymorphic-inlining." am:
e38a328dfd
am:
fc856fcdeb
* commit '
fc856fcdeb17b67686035b07ef275e882c515076':
Re-enable test 566-polymorphic-inlining.
Nicolas Geoffray [Fri, 29 Jan 2016 12:13:18 +0000 (12:13 +0000)]
Merge "Re-enable test 566-polymorphic-inlining."
am:
e38a328dfd
* commit '
e38a328dfd26424d91a8316bfdfa555250b8a17b':
Re-enable test 566-polymorphic-inlining.
Nicolas Geoffray [Fri, 29 Jan 2016 12:09:43 +0000 (12:09 +0000)]
Merge "Re-enable test 566-polymorphic-inlining."
Nicolas Geoffray [Fri, 29 Jan 2016 11:41:25 +0000 (11:41 +0000)]
Re-enable test 566-polymorphic-inlining.
- Can not rely on debug builds.
- Need to wait for the method to be compiled.
Change-Id: I26ce89075075da8555fd59ade56bd04bec23f4ce
Roland Levillain [Fri, 29 Jan 2016 12:00:37 +0000 (12:00 +0000)]
Merge "Re-enable test 496-checker-inlining-and-class-loader with CC." am:
5bd53a97ea
am:
3a8229e6e9
* commit '
3a8229e6e9912c877dcc661a2d41eb70563c36ee':
Re-enable test 496-checker-inlining-and-class-loader with CC.
Roland Levillain [Fri, 29 Jan 2016 11:58:38 +0000 (11:58 +0000)]
Merge "Re-enable test 496-checker-inlining-and-class-loader with CC."
am:
5bd53a97ea
* commit '
5bd53a97ea29c3addb2753aebc8433f1cb0713aa':
Re-enable test 496-checker-inlining-and-class-loader with CC.
Roland Levillain [Fri, 29 Jan 2016 11:53:50 +0000 (11:53 +0000)]
Merge "Re-enable test 496-checker-inlining-and-class-loader with CC."
Roland Levillain [Fri, 29 Jan 2016 11:37:48 +0000 (11:37 +0000)]
Re-enable test 496-checker-inlining-and-class-loader with CC.
This test might have been affected by an app image change.
Re-enable it so that we can monitor it on the concurrent
collector configurations.
Bug:
26786304
Bug:
12687968
Change-Id: Iab484418d4a507da6642eec86317d53cc0a2607a
Vladimir Marko [Fri, 29 Jan 2016 11:15:39 +0000 (11:15 +0000)]
Merge "Optimizing: Use dex pc 0 for pattern substitution-generated IGET." am:
87d38b73fe
am:
6d7b8b5a52
* commit '
6d7b8b5a52654f8624aec7078e1e2fdaf39ab947':
Optimizing: Use dex pc 0 for pattern substitution-generated IGET.
Vladimir Marko [Fri, 29 Jan 2016 11:13:37 +0000 (11:13 +0000)]
Merge "Optimizing: Use dex pc 0 for pattern substitution-generated IGET."
am:
87d38b73fe
* commit '
87d38b73fefe904feffa2c22036b8e822f1652f6':
Optimizing: Use dex pc 0 for pattern substitution-generated IGET.
David Brazdil [Fri, 29 Jan 2016 11:11:34 +0000 (11:11 +0000)]
Merge "ART: Do not use AT register in MIPS DSS<->RP swap" am:
4cd4c399bf
am:
eeede83473
* commit '
eeede8347398d99b8e9f8d058dcea0f24fb7e477':
ART: Do not use AT register in MIPS DSS<->RP swap
David Brazdil [Fri, 29 Jan 2016 11:09:32 +0000 (11:09 +0000)]
Merge "ART: Do not use AT register in MIPS DSS<->RP swap"
am:
4cd4c399bf
* commit '
4cd4c399bf3218c28770e175bb7fed58816b21ca':
ART: Do not use AT register in MIPS DSS<->RP swap
Vladimir Marko [Fri, 29 Jan 2016 11:08:21 +0000 (11:08 +0000)]
Merge "Optimizing: Use dex pc 0 for pattern substitution-generated IGET."
David Brazdil [Fri, 29 Jan 2016 11:05:33 +0000 (11:05 +0000)]
Merge "ART: Do not use AT register in MIPS DSS<->RP swap"
Vladimir Marko [Fri, 29 Jan 2016 10:24:41 +0000 (10:24 +0000)]
Optimizing: Use dex pc 0 for pattern substitution-generated IGET.
In the read barrier configuration, HInstanceFieldGet needs
a slow-path with a runtime call with an associated stack map
and we assert that we have a valid dex pc for stack maps.
Fix the pattern substitution-generated HInstanceFieldGet to
use the valid, if bogus, dex pc 0.
Bug:
26854537
Bug:
12687968
Change-Id: I9f379ea530ce3f89af8db40169a6c41b525abbd7
Nicolas Geoffray [Fri, 29 Jan 2016 10:31:40 +0000 (10:31 +0000)]
Merge "Revert "reflection: Add new 1.8 AnnotatedElement methods and tests"" am:
10cd5eec80
am:
0f61866468
* commit '
0f61866468ca3a2237c214aefc515c1caf7205a3':
Revert "reflection: Add new 1.8 AnnotatedElement methods and tests"
Nicolas Geoffray [Fri, 29 Jan 2016 10:29:37 +0000 (10:29 +0000)]
Merge "Revert "reflection: Add new 1.8 AnnotatedElement methods and tests""
am:
10cd5eec80
* commit '
10cd5eec804167dd67b4fd1096108f0837e151c6':
Revert "reflection: Add new 1.8 AnnotatedElement methods and tests"
Nicolas Geoffray [Fri, 29 Jan 2016 10:25:28 +0000 (10:25 +0000)]
Merge "Revert "reflection: Add new 1.8 AnnotatedElement methods and tests""
Nicolas Geoffray [Fri, 29 Jan 2016 10:25:01 +0000 (10:25 +0000)]
Revert "reflection: Add new 1.8 AnnotatedElement methods and tests"
Breaks interpreter access checks:
+Exception in thread "main" java.lang.InternalError: java.lang.IllegalAccessError: Method 'void java.lang.reflect.Proxy.doNewInstanceCheck()' is inaccessible to class '$Proxy0' (declaration of '$Proxy0' appears in generated class)
This reverts commit
c167ee9b65f05f7c6f007d587fd1655388edaee9.
Change-Id: I6c9429cb6f298e89a2da22f7ded0728251321446
David Brazdil [Fri, 29 Jan 2016 09:50:09 +0000 (09:50 +0000)]
ART: Do not use AT register in MIPS DSS<->RP swap
LoadFromOffset clobbers AT if stack offset does not fit in int16_t.
We should never hit that limit but let's stay on the safe side.
Change-Id: I77f564dc3edd0b47d06f8fafb5610c7c0205e9b2
Bill Buzbee [Fri, 29 Jan 2016 03:47:34 +0000 (03:47 +0000)]
Merge "ART: Fix single-step interpretation for mterp" am:
ed1d318ecc
am:
3ed027cce4
* commit '
3ed027cce46123e74be9b807b854bc491c7686f9':
ART: Fix single-step interpretation for mterp
Bill Buzbee [Fri, 29 Jan 2016 03:45:12 +0000 (03:45 +0000)]
Merge "ART: Fix single-step interpretation for mterp"
am:
ed1d318ecc
* commit '
ed1d318eccd3d7e9bc7bdbdf6dbb64e1d0bf6dba':
ART: Fix single-step interpretation for mterp
Bill Buzbee [Fri, 29 Jan 2016 03:33:23 +0000 (03:33 +0000)]
Merge "ART: Fix single-step interpretation for mterp"
Hans Boehm [Fri, 29 Jan 2016 01:19:15 +0000 (17:19 -0800)]
Do not use atomic increment in allocation as fence.
A sequentially consistent fetch_and_add implemented with ARM v8 acquire
release operations is not a fence. Don't use it as one.
The result may also be somewhat faster, since a sequentially consistent
increment requires more fencing than needed for the increment.
Bug:
16377103
Change-Id: I5b1add098d3488aa755f140612e54521b80aa749
buzbee [Thu, 28 Jan 2016 23:48:55 +0000 (15:48 -0800)]
ART: Fix single-step interpretation for mterp
For bring-up (and failover) purposes, mterp can bail out to the
switch interpreter to handle a single opcode. This CL fixes the
handoff of the result register (a bug that was masked by an earlier
revision which passed it around by reference, rather than by value.
Change-Id: Iba9e1576f52b3660348c89466438bdc0526227d0
Bill Buzbee [Fri, 29 Jan 2016 00:07:46 +0000 (00:07 +0000)]
Merge "Fix "Never Interpret" option for all interpreters" am:
1d81df8ff1
am:
dfdfbacc54
* commit '
dfdfbacc54d3506bd1761a0e87fdfa41654ea75f':
Fix "Never Interpret" option for all interpreters
Bill Buzbee [Fri, 29 Jan 2016 00:05:14 +0000 (00:05 +0000)]
Merge "Fix "Never Interpret" option for all interpreters"
am:
1d81df8ff1
* commit '
1d81df8ff1e5bc820d021fa02c552f2b53182b36':
Fix "Never Interpret" option for all interpreters
Bill Buzbee [Thu, 28 Jan 2016 23:59:33 +0000 (23:59 +0000)]
Merge "Fix "Never Interpret" option for all interpreters"
buzbee [Thu, 28 Jan 2016 22:20:06 +0000 (14:20 -0800)]
Fix "Never Interpret" option for all interpreters
CL 196596 added support for an option to bypass interpretation.
However, it only covers 2 our of 3 interpreters (missing mterp).
This change moves the control up a level to the common interpreter
entry where it will take effect before we select which interpreter
to use.
Also, it corrects a somewhat academic bug in that the existing
code that assumes that (dex_pc == 0) means that we just entered a
method. If a method's dex code internally branched to address 0,
we could issue bogus method entry events. By moving this test up
a level, we should avoid this situation. Note, though, that dx
would never generate this pattern, and it's hard to imagine even
hand-generated dex code that would trigger a deoptimization in this
situation.
Change-Id: I6684bbf63570e02f5b01ce423c656889a890de7d
Alex Light [Thu, 7 Jan 2016 22:49:16 +0000 (14:49 -0800)]
Optimizing compiler support for directly calling interface methods
This teaches the optimizing compiler how to perform invoke-super on
interfaces. This should make the invokes generally faster.
Bug:
24618811
Change-Id: I7f9b0fb1209775c1c8837ab5d21f8acba3cc72a5
Andreas Gampe [Thu, 28 Jan 2016 23:31:39 +0000 (15:31 -0800)]
ART: Dump full exception on re-init failure message
It is a recurring issue to investigate the underlying issue. Just
dumping the top-level failure type is not very helpful. Take the
logcat hit and dump the full exception (including causes).
Change-Id: If071df9667473410222438e1c5f956c9b56b4d77
Nicolas Geoffray [Thu, 28 Jan 2016 23:16:30 +0000 (23:16 +0000)]
Merge "Disable test for now." am:
97f4bc04b6
am:
7f8b7873c9
* commit '
7f8b7873c93947bcc7181afb700839f0c2b77ca1':
Disable test for now.
Nicolas Geoffray [Thu, 28 Jan 2016 23:14:14 +0000 (23:14 +0000)]
Merge "Disable test for now."
am:
97f4bc04b6
* commit '
97f4bc04b61d5cf78b0820dbf18e999b20d7a108':
Disable test for now.
Nicolas Geoffray [Thu, 28 Jan 2016 23:08:56 +0000 (23:08 +0000)]
Merge "Disable test for now."