OSDN Git Service
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"
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: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 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: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: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: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: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"
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: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
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."
Nicolas Geoffray [Thu, 28 Jan 2016 23:07:47 +0000 (23:07 +0000)]
Disable test for now.
Change-Id: Ibc7f2a2b1fb35c7b0b9d8a34b5e6adc243a67776
Mathieu Chartier [Thu, 28 Jan 2016 23:05:12 +0000 (23:05 +0000)]
Merge "Clear image file in image writer"
am:
70dd22fb3b
* commit '
70dd22fb3b6a66bbae98cb54dde3ecc4bd2de610':
Clear image file in image writer
Mathieu Chartier [Thu, 28 Jan 2016 23:00:23 +0000 (23:00 +0000)]
Merge "Clear image file in image writer"
Hiroshi Yamauchi [Thu, 28 Jan 2016 21:58:17 +0000 (21:58 +0000)]
Merge "Remove ALWAYS_INLINE from ReadBarrier::Mark()."
am:
fd071680f0
* commit '
fd071680f083831e3d93fb66cc34095dfad8c602':
Remove ALWAYS_INLINE from ReadBarrier::Mark().
Hiroshi Yamauchi [Thu, 28 Jan 2016 21:52:56 +0000 (21:52 +0000)]
Merge "Remove ALWAYS_INLINE from ReadBarrier::Mark()."
Hiroshi Yamauchi [Thu, 28 Jan 2016 21:39:41 +0000 (13:39 -0800)]
Remove ALWAYS_INLINE from ReadBarrier::Mark().
This fixes a Ritzperf EAAC performance regression in the read barrier
config.
Bug:
26744236
Bug:
12687968
Change-Id: Ieaeb57def0e3a9eeb5fd8b1234658b45fd31ce77
Mathieu Chartier [Thu, 28 Jan 2016 20:21:31 +0000 (20:21 +0000)]
Merge "Fix image test with GSS"
am:
de31ca6201
* commit '
de31ca62015e94016155a99a268ea798ab1ef75c':
Fix image test with GSS
Mathieu Chartier [Thu, 28 Jan 2016 20:15:55 +0000 (20:15 +0000)]
Merge "Fix image test with GSS"
Mathieu Chartier [Thu, 28 Jan 2016 17:49:55 +0000 (09:49 -0800)]
Fix image test with GSS
There was a gap between image space and non moving space for some
reason. No time for a better fix.
Bug:
26849108
Change-Id: If7fe9db060b7accbffd1b4636ce4e0d82a02ed7b
Mathieu Chartier [Thu, 28 Jan 2016 20:02:00 +0000 (12:02 -0800)]
Clear image file in image writer
The goal is to not erase the image file in installd in case we abort
compilation due to no new profile data. Currently aborting results in
an empty image file.
Bug:
22858531
Change-Id: I32eee3391f860f4a373db3d746d096cc36d623f2
Mathieu Chartier [Thu, 28 Jan 2016 19:15:12 +0000 (19:15 +0000)]
Merge "Remove some more read barriers in image relocation"
am:
4047c5b3b0
* commit '
4047c5b3b00f015b81cb52da0cda545d6a3820c8':
Remove some more read barriers in image relocation
Mathieu Chartier [Thu, 28 Jan 2016 19:02:13 +0000 (19:02 +0000)]
Merge "Remove some more read barriers in image relocation"
Mathieu Chartier [Thu, 28 Jan 2016 02:37:48 +0000 (18:37 -0800)]
Remove some more read barriers in image relocation
Bug:
26786304
Bug:
22858531
Change-Id: I70dacae7657ebf6dac2b3dad7726eebe5a2b2649
Nicolas Geoffray [Thu, 28 Jan 2016 18:22:58 +0000 (18:22 +0000)]
Merge "Doh. Forgot to ensure it\'s compiled."
am:
c43a8fc564
* commit '
c43a8fc5640aea17785e47d52fc198d2952f9639':
Doh. Forgot to ensure it's compiled.
Vladimir Marko [Thu, 28 Jan 2016 18:20:31 +0000 (18:20 +0000)]
Merge "Optimizing: Try pattern substitution when we cannot inline."
am:
1c7736c282
* commit '
1c7736c2823b1127e0e19fa4d71795b894632bc0':
Optimizing: Try pattern substitution when we cannot inline.
Alex Light [Thu, 28 Jan 2016 18:20:17 +0000 (18:20 +0000)]
Merge "Fix issue with IMT dispatch."
am:
09cd656da2
* commit '
09cd656da2bb278d376105deea8c1cf357cc0752':
Fix issue with IMT dispatch.
Nicolas Geoffray [Thu, 28 Jan 2016 18:19:15 +0000 (18:19 +0000)]
Merge "Doh. Forgot to ensure it's compiled."
Vladimir Marko [Thu, 28 Jan 2016 18:16:14 +0000 (18:16 +0000)]
Merge "Optimizing: Try pattern substitution when we cannot inline."
Nicolas Geoffray [Thu, 28 Jan 2016 18:15:53 +0000 (18:15 +0000)]
Doh. Forgot to ensure it's compiled.
Change-Id: I7b1786497c6bd0e83d8afe70fabecfacc8ca6a3a
Alex Light [Thu, 28 Jan 2016 18:15:07 +0000 (18:15 +0000)]
Merge "Fix issue with IMT dispatch."
Vladimir Marko [Fri, 22 Jan 2016 12:09:44 +0000 (12:09 +0000)]
Optimizing: Try pattern substitution when we cannot inline.
Change-Id: I7c01f4494bac8498accc0f087044ec509fee4c98
Jeff Hao [Thu, 28 Jan 2016 18:10:44 +0000 (18:10 +0000)]
Merge "Stop verifier ResolveClass from putting unresolved classes in dex cache."
am:
fa72bf1823
* commit '
fa72bf1823a39b43552fa1b9ae572023830a4ac1':
Stop verifier ResolveClass from putting unresolved classes in dex cache.
Jeff Hao [Thu, 28 Jan 2016 18:07:16 +0000 (18:07 +0000)]
Merge "Stop verifier ResolveClass from putting unresolved classes in dex cache."
Richard Uhler [Thu, 28 Jan 2016 18:06:26 +0000 (18:06 +0000)]
Merge "Factor out common code for SetPendingNext."
am:
26a04e1e31
* commit '
26a04e1e319d47de3e88fae8df53a85013e05f22':
Factor out common code for SetPendingNext.
Jeff Hao [Thu, 28 Jan 2016 03:14:53 +0000 (19:14 -0800)]
Stop verifier ResolveClass from putting unresolved classes in dex cache.
Bug:
26792072
(cherry-picked from commit
340bd820b1d7552417beb47325f12caea8ba718b)
Change-Id: I6d1b5aaa4a05e42881aebf9d907fc66fce2144ad
Richard Uhler [Thu, 28 Jan 2016 18:01:12 +0000 (18:01 +0000)]
Merge "Factor out common code for SetPendingNext."
David Brazdil [Thu, 28 Jan 2016 17:47:33 +0000 (17:47 +0000)]
Merge "ART: Add missing swaps to MIPS codegen"
am:
1aa9c11810
* commit '
1aa9c118107695155cf68f8b2460a49fc9ba066e':
ART: Add missing swaps to MIPS codegen
David Brazdil [Thu, 28 Jan 2016 17:42:55 +0000 (17:42 +0000)]
Merge "ART: Add missing swaps to MIPS codegen"
David Brazdil [Thu, 28 Jan 2016 17:14:52 +0000 (17:14 +0000)]
ART: Add missing swaps to MIPS codegen
Change-Id: I0fb50280ddf43f817d991c15d3b6cdeb4635d6c2
Roland Levillain [Thu, 28 Jan 2016 17:32:42 +0000 (17:32 +0000)]
Merge "Do not enforce deterministic compilation with read barriers."
am:
73bcf03b82
* commit '
73bcf03b8299aa3c30a8ecd67b400abf1cecf81f':
Do not enforce deterministic compilation with read barriers.
Roland Levillain [Thu, 28 Jan 2016 17:28:03 +0000 (17:28 +0000)]
Merge "Do not enforce deterministic compilation with read barriers."
Tamas Berghammer [Thu, 28 Jan 2016 17:15:44 +0000 (17:15 +0000)]
Merge "Add a comment to oatdump for 0 size symbols"
am:
7e742ee057
* commit '
7e742ee0579629dfbacc76cd2064a2bef4107074':
Add a comment to oatdump for 0 size symbols
Tamas Berghammer [Thu, 28 Jan 2016 17:04:24 +0000 (17:04 +0000)]
Merge "Add a comment to oatdump for 0 size symbols"
Nicolas Geoffray [Thu, 28 Jan 2016 16:46:03 +0000 (16:46 +0000)]
Merge "Change log to avoid polluting logcat."
am:
ae79704e71
* commit '
ae79704e711956c29a035dfc94ce3cbb1e89a493':
Change log to avoid polluting logcat.
Nicolas Geoffray [Thu, 28 Jan 2016 16:42:40 +0000 (16:42 +0000)]
Merge "Change log to avoid polluting logcat."
Tamas Berghammer [Thu, 28 Jan 2016 16:30:14 +0000 (16:30 +0000)]
Add a comment to oatdump for 0 size symbols
The symbolizer inside oatdump generates 0 size symbols for the
trampoline symbols. Add a comment explaining why we emitting them with
0 size.
Change-Id: I16ed87554681ce57aafc26517a1e674647b5f9ac
David Brazdil [Thu, 28 Jan 2016 16:28:00 +0000 (16:28 +0000)]
Merge "ART: Fix gtest after liveness CL"
am:
6f06fdb008
* commit '
6f06fdb008d8f3d5fca09db5a22b6a2a23eced42':
ART: Fix gtest after liveness CL
David Brazdil [Thu, 28 Jan 2016 16:25:00 +0000 (16:25 +0000)]
Merge "ART: Fix gtest after liveness CL"
David Brazdil [Thu, 28 Jan 2016 16:22:40 +0000 (16:22 +0000)]
ART: Fix gtest after liveness CL
Change-Id: I2d029044cebe6e1ee7d7efb2e20541060f88c07c
Nicolas Geoffray [Thu, 28 Jan 2016 16:13:00 +0000 (16:13 +0000)]
Merge "Implement first kind of polymorphic inlining."
am:
9ff1de06d6
* commit '
9ff1de06d6ed1da36f7e976224a2d13e5e9882bf':
Implement first kind of polymorphic inlining.
Nicolas Geoffray [Thu, 28 Jan 2016 16:09:16 +0000 (16:09 +0000)]
Merge "Implement first kind of polymorphic inlining."
David Brazdil [Thu, 28 Jan 2016 15:56:51 +0000 (15:56 +0000)]
Merge "ART: Implement HSelect"
am:
bee600ff66
* commit '
bee600ff66e3e233274faa1391890ff424a8244e':
ART: Implement HSelect
Nicolas Geoffray [Thu, 17 Dec 2015 14:57:09 +0000 (14:57 +0000)]
Implement first kind of polymorphic inlining.
Add HClassTableGet to fetch an ArtMethod from the vtable or imt,
and compare it to the only method the profiling saw.
Change-Id: I76afd3689178f10e3be048aa3ac9a97c6f63295d
David Brazdil [Thu, 28 Jan 2016 15:53:09 +0000 (15:53 +0000)]
Merge "ART: Implement support for instruction inlining"
am:
75fd2a8ab9
* commit '
75fd2a8ab9b4aff59308034da26eb4986d10fa9e':
ART: Implement support for instruction inlining
David Brazdil [Thu, 28 Jan 2016 15:52:08 +0000 (15:52 +0000)]
Merge "ART: Implement HSelect"
David Brazdil [Mon, 14 Dec 2015 11:44:01 +0000 (11:44 +0000)]
ART: Implement HSelect
This patch adds a new HIR instruction to Optimizing. HSelect returns
one of two inputs based on the outcome of a condition.
This is only initial implementation which:
- defines the new instruction,
- repurposes BooleanSimplifier to emit it,
- extends InstructionSimplifier to statically resolve it,
- updates existing code and tests accordingly.
Code generators currently emit fallback if/then/else code and will be
updated in follow-up CLs to use platform-specific conditional moves
when possible.
Change-Id: Ib61b17146487ebe6b55350c2b589f0b971dcaaee
David Brazdil [Thu, 28 Jan 2016 15:48:32 +0000 (15:48 +0000)]
Merge "ART: Implement support for instruction inlining"
David Brazdil [Tue, 26 Jan 2016 11:28:37 +0000 (11:28 +0000)]
ART: Implement support for instruction inlining
Optimizing HIR contains 'non-materialized' instructions which are
emitted at their use sites rather than their defining sites. This
was not properly handled by the liveness analysis which did not
adjust the use positions of the inputs of such instructions.
Despite the analysis being incorrect, the current use cases never
produce incorrect code.
This patch generalizes the concept of inlined instructions and
updates liveness analysis to set the compute use positions correctly.
Change-Id: Id703c154b20ab861241ae5c715a150385d3ff621
Tamas Berghammer [Thu, 28 Jan 2016 15:42:15 +0000 (15:42 +0000)]
Merge "Emit symbol names for trampoline symbols in oatdump"
am:
2d36c0ced1
* commit '
2d36c0ced12435e8dbc216c4ee4ebf32dbe19669':
Emit symbol names for trampoline symbols in oatdump
Tamas Berghammer [Thu, 28 Jan 2016 15:37:54 +0000 (15:37 +0000)]
Merge "Emit symbol names for trampoline symbols in oatdump"
Roland Levillain [Thu, 28 Jan 2016 15:36:10 +0000 (15:36 +0000)]
Merge "Fix ARM & ARM64 UnsafeCASObject intrinsic with heap poisoning."
am:
9e485e66b5
* commit '
9e485e66b50598a3978b8a010085063edb0feb85':
Fix ARM & ARM64 UnsafeCASObject intrinsic with heap poisoning.
Roland Levillain [Thu, 28 Jan 2016 15:33:33 +0000 (15:33 +0000)]
Merge "Fix ARM & ARM64 UnsafeCASObject intrinsic with heap poisoning."
Roland Levillain [Thu, 28 Jan 2016 14:37:01 +0000 (14:37 +0000)]
Do not enforce deterministic compilation with read barriers.
Forcing determinism of the boot image compilation (on host)
does not work when read barriers are enabled, as the former
switches the GC to a non-concurrent one by passing the
option `-Xgc:nonconcurrent`.
Also make dex2oat abort when invoked with
`--force-determinism` while read barriers are enabled.
Bug:
12687968
Bug:
26687569
Change-Id: I37b388fccbe4502a90def8031a898f1a40df6a9f
Roland Levillain [Thu, 28 Jan 2016 12:35:24 +0000 (12:35 +0000)]
Merge "Re-enable some run-tests with CC after mterp fix."
am:
05aeb408f2
* commit '
05aeb408f292d8d94af1646a94bc69faf77f0b46':
Re-enable some run-tests with CC after mterp fix.
Roland Levillain [Thu, 28 Jan 2016 12:32:01 +0000 (12:32 +0000)]
Merge "Re-enable some run-tests with CC after mterp fix."
Tamas Berghammer [Thu, 28 Jan 2016 12:11:08 +0000 (12:11 +0000)]
Merge "Don\'t crash if the perf map creation failed"
am:
5faf22c1d4
* commit '
5faf22c1d4eb5d711f792b73d3e5773d67160c8f':
Don't crash if the perf map creation failed
Tamas Berghammer [Thu, 28 Jan 2016 12:06:37 +0000 (12:06 +0000)]
Merge "Don't crash if the perf map creation failed"
Tamas Berghammer [Wed, 27 Jan 2016 16:15:56 +0000 (16:15 +0000)]
Don't crash if the perf map creation failed
The perf map file is used in the jit compiler to emit the symbol name
for the start address of each jitted function. The file is stored in
/data/misc/trace (previously /data) what is only accessible on
userdebug builds. This change modifies the code to work on user builds
with not using the perf map file if we failed to create it.
Change-Id: Icfecd4bdab94ffc528ec218f3ac2b872fbdacf37
Nicolas Geoffray [Thu, 28 Jan 2016 09:29:31 +0000 (09:29 +0000)]
Change log to avoid polluting logcat.
Change-Id: I804afe9e3a78876f4fc2d74ae084419530435840
Nicolas Geoffray [Thu, 28 Jan 2016 09:17:59 +0000 (09:17 +0000)]
Merge "Revert "Revert "Lift the spill at each irreducible loop block restriction."""
am:
8bfdf83aa7
* commit '
8bfdf83aa73a19233f62b7a8d4761e84b1713db4':
Revert "Revert "Lift the spill at each irreducible loop block restriction.""
Nicolas Geoffray [Thu, 28 Jan 2016 09:14:04 +0000 (09:14 +0000)]
Merge "Revert "Revert "Lift the spill at each irreducible loop block restriction."""
Nicolas Geoffray [Wed, 27 Jan 2016 14:15:23 +0000 (14:15 +0000)]
Revert "Revert "Lift the spill at each irreducible loop block restriction.""
This reverts commit
2818dbcd75ea9beadcba9d18e2f68523108d0cf5.
Change-Id: I92b2b60b4f08f50cacfea4132f1c28cfbd628f1a
Mathieu Chartier [Thu, 28 Jan 2016 03:06:38 +0000 (03:06 +0000)]
Merge changes from topic \'pointer_conversion\'
am:
c5a8af76c3
* commit '
c5a8af76c337b49a05fe647cf2d1a0ceb8da4f76':
Pass template args down
Fix pointer conversion error in SetElementPtrSize
Mathieu Chartier [Thu, 28 Jan 2016 03:02:05 +0000 (03:02 +0000)]
Merge changes from topic 'pointer_conversion'
* changes:
Pass template args down
Fix pointer conversion error in SetElementPtrSize
Mathieu Chartier [Thu, 28 Jan 2016 00:37:19 +0000 (16:37 -0800)]
Pass template args down
Fixes failing DCHECK in dex2oatd
(cherry picked from commit
3df47c1c675e62cf0e5853699149c1181a48b28f)
Change-Id: I96a3b582705e4bffa39ee8e24ec43ff0d7a57ccd
Mathieu Chartier [Wed, 27 Jan 2016 23:30:10 +0000 (15:30 -0800)]
Fix pointer conversion error in SetElementPtrSize
SetElementPtrSize used to cast from pointer to uint64_t which
could sign extend with 32 bit dex2oat for 64 bit app image.
Also removed C style casts and added more logging.
Bug:
22858531
(cherry picked from commit
d22886357d4c53f74ca298faa7ad2555794e17e0)
Change-Id: I479124328fbc497cfcae20c43b4b55827e446527
Andreas Gampe [Thu, 28 Jan 2016 00:20:31 +0000 (00:20 +0000)]
Merge "ART: Add option to ensure deterministic compilation"
am:
78e90155b2
* commit '
78e90155b249588cb800e7f6e5993ebcbd465292':
ART: Add option to ensure deterministic compilation
Andreas Gampe [Thu, 28 Jan 2016 00:17:21 +0000 (00:17 +0000)]
Merge "ART: Add option to ensure deterministic compilation"
Andreas Gampe [Wed, 20 Jan 2016 21:33:13 +0000 (13:33 -0800)]
ART: Add option to ensure deterministic compilation
To ensure reliable stable generation of a boot image, add a flag
for forced determinism, trading compile time for a deterministic
output.
We have to run certain passes in the compiler-driver single-threaded.
It is also necessary to try to make the heap layout deterministic.
Switch to nonconcurrent GC, use the free-list implementation for LOS,
and try to allocate the main space at a known location. This is best
effort at the moment.
To allow the compiler phase to be parallelized, const-strings need
to be created beforehand.
The identity hashcode seed needs to be pinned.
Besides the Dex object we also need to null the DexFile pointer in
dex caches.
For classes, we need to remove the clinit thread ID.
Fix oatdump alignment padding accounting.
Bug:
26687569
Change-Id: Ia82120e8f715bb3691d861817b12778ac677355a
Alex Light [Wed, 27 Jan 2016 00:07:41 +0000 (16:07 -0800)]
Fix issue with IMT dispatch.
If a default and an abstract method map to the same IMT slot one could
end up invoking the default method when one invokes the abstract
method.
Bug:
24618811
Bug:
26827549
Change-Id: I2ccb8e8b5362eb4961531b63e7b946ad8ef936a6
Igor Murashkin [Wed, 27 Jan 2016 21:42:57 +0000 (21:42 +0000)]
Merge "reflection: Add new 1.8 AnnotatedElement methods and tests"
am:
a3abcb5250
* commit '
a3abcb5250ccb89695049a69d3fb0bd0300ae190':
reflection: Add new 1.8 AnnotatedElement methods and tests