OSDN Git Service
Nicolas Geoffray [Fri, 5 Feb 2016 23:32:25 +0000 (23:32 +0000)]
Point fixes after OSR change.
- ldr -> ldrb in osr stub for arm32
- disable 570-checker-osr for tracing
- don't osr proxy methods.
Change-Id: I9c713c9b7eab86ca9beb75f228fb3b76185621ef
Hiroshi Yamauchi [Fri, 5 Feb 2016 22:35:25 +0000 (22:35 +0000)]
Merge "Use 8-byte increment bracket sizes for rosalloc thread local runs."
Mathieu Chartier [Fri, 5 Feb 2016 22:17:12 +0000 (22:17 +0000)]
Merge "Address missed amend"
Mathieu Chartier [Fri, 5 Feb 2016 21:47:06 +0000 (13:47 -0800)]
Address missed amend
Forgot to amend after addressing code review comments.
Bug:
26990650
(cherry picked from commit
3cfc2e4fb6c4735a145aa184db14d0bf33653e33)
Change-Id: Ic8483a50e0670cac1291385a82b7c5e4a313cd18
Hiroshi Yamauchi [Tue, 2 Feb 2016 23:22:09 +0000 (15:22 -0800)]
Use 8-byte increment bracket sizes for rosalloc thread local runs.
Very small space savings (< 1%) after device boot and up to 10%
allocation speedup.
Some minor cleanup.
Bug:
9986565
Change-Id: I51d791c4674d6944fe9a7ee78537ac3490c1a02c
Mathieu Chartier [Fri, 5 Feb 2016 20:05:00 +0000 (20:05 +0000)]
Merge "Disable kDebugStackWalk"
Mathieu Chartier [Fri, 5 Feb 2016 20:00:49 +0000 (12:00 -0800)]
Disable kDebugStackWalk
Someone left it enabled.
Bug:
27039049
Change-Id: I2bec610a3f20e1214dc34b4e06227609da2a2ab8
Mathieu Chartier [Fri, 5 Feb 2016 20:01:12 +0000 (20:01 +0000)]
Merge "Fix moving GC bugs in quick_field_entrypoints.cc"
Mathieu Chartier [Fri, 5 Feb 2016 02:13:32 +0000 (18:13 -0800)]
Fix moving GC bugs in quick_field_entrypoints.cc
There was some missing handles. Fixed style.
Bug:
26990650
(cherry picked from commit
1fd00287bedce99cd602aec00d421bddb7a9a107)
Change-Id: If7cb0de61e6b19004838e98345fdbc60ccdd5767
Aart Bik [Fri, 5 Feb 2016 18:43:54 +0000 (18:43 +0000)]
Merge "Implemented compare/signum intrinsics as HCompare (with all code generation for all)"
Alex Light [Fri, 5 Feb 2016 18:02:11 +0000 (18:02 +0000)]
Merge "Make test 971-iface-super smaller to prevent gcstress timeouts."
Aart Bik [Tue, 2 Feb 2016 02:57:58 +0000 (18:57 -0800)]
Implemented compare/signum intrinsics as HCompare
(with all code generation for all)
Rationale:
At HIR level, many more optimizations are possible, while ultimately
generated code can take advantage of full semantics.
Change-Id: I6e2ee0311784e5e336847346f7f3c4faef4fd17e
Nicolas Geoffray [Fri, 5 Feb 2016 17:25:17 +0000 (17:25 +0000)]
Merge "Revert "Revert "Implement on-stack replacement for arm/arm64/x86/x86_64."""
Nicolas Geoffray [Fri, 5 Feb 2016 16:51:53 +0000 (16:51 +0000)]
Revert "Revert "Implement on-stack replacement for arm/arm64/x86/x86_64.""
This reverts commit
bd89a5c556324062b7d841843b039392e84cfaf4.
Change-Id: I08d190431520baa7fcec8fbdb444519f25ac8d44
David Brazdil [Fri, 5 Feb 2016 16:07:44 +0000 (16:07 +0000)]
Merge "Extend De Morgan factorisation to `HBooleanNot`."
David Brazdil [Fri, 5 Feb 2016 15:47:16 +0000 (15:47 +0000)]
Merge "Revert "Implement on-stack replacement for arm/arm64/x86/x86_64.""
David Brazdil [Fri, 5 Feb 2016 15:46:42 +0000 (15:46 +0000)]
Revert "Implement on-stack replacement for arm/arm64/x86/x86_64."
DCHECK whether loop headers are covered fails.
This reverts commit
891bc286963892ed96134ca1adb7822737af9710.
Change-Id: I0f9a90630b014b16d20ba1dfba31ce63e6648021
Nicolas Geoffray [Fri, 5 Feb 2016 14:39:18 +0000 (14:39 +0000)]
Merge "Implement on-stack replacement for arm/arm64/x86/x86_64."
David Brazdil [Fri, 5 Feb 2016 14:26:53 +0000 (14:26 +0000)]
Merge "Support CMOV for x86_64 Select"
Alexandre Rames [Fri, 5 Feb 2016 14:00:28 +0000 (14:00 +0000)]
Extend De Morgan factorisation to `HBooleanNot`.
Change-Id: I81aa92277fa136d675e7ef01be8e4acdbd3d3b7c
David Srbecky [Fri, 5 Feb 2016 13:47:49 +0000 (13:47 +0000)]
Merge "Do not emit DWARF debug info if there are no methods."
Paul Duffin [Fri, 5 Feb 2016 13:39:20 +0000 (13:39 +0000)]
Merge "Add some more tests to those breaking since move to OpenJDK"
Nicolas Geoffray [Fri, 5 Feb 2016 13:19:37 +0000 (13:19 +0000)]
Merge "Revert "Disable test for now.""
Nicolas Geoffray [Fri, 5 Feb 2016 13:19:23 +0000 (13:19 +0000)]
Revert "Disable test for now."
This reverts commit
0a57b45f83d6aa8876e6e91d0e5b3f62a1690d3f.
Change-Id: I8348fdaa62cc86e3b03466844715397f6601b7c8
David Brazdil [Fri, 5 Feb 2016 13:12:24 +0000 (13:12 +0000)]
Merge "Revert "Revert "X86: Use the constant area for more operations."""
David Srbecky [Fri, 5 Feb 2016 11:42:23 +0000 (11:42 +0000)]
Do not emit DWARF debug info if there are no methods.
Change-Id: I43406e54b454dbac45980d5c5edd90cd5593b9fd
Paul Duffin [Fri, 5 Feb 2016 11:46:26 +0000 (11:46 +0000)]
Add some more tests to those breaking since move to OpenJDK
Adds the names of some new failing tests that were created by
splitting out parts of the SimpleDateFormatTest method
test_parseLjava_lang_StringLjava_text_ParsePosition into their
own methods. That was done to highlight those failures that were
previously hidden by an earlier failure in the method.
Bug:
25998255
Change-Id: If3bde4fa4c8ae4b39fd89e18e8fd6a9a2ab739ba
Nicolas Geoffray [Fri, 29 Jan 2016 12:40:13 +0000 (12:40 +0000)]
Implement on-stack replacement for arm/arm64/x86/x86_64.
High-level overview:
- osr_method_threshold is used to know when to compile a method
in osr mode (-> treat all loops as irreducible).
- branch instructions in the compiler query whether they can
jump to an osr method.
- An osr entry point is found through the stack maps: if a stack
map is duplicated in the CodeInfo, it is an osr entry point.
Change-Id: Ifb39338cd281e2c7eccce67f4e18d46428be71e4
David Srbecky [Fri, 5 Feb 2016 11:33:47 +0000 (11:33 +0000)]
Merge changes I514f1db3,I7dc1c7c0
* changes:
Generate mini-debug-info on separate thread.
Change the method which generates DWARF mini-debug-info.
David Srbecky [Fri, 22 Jan 2016 19:19:25 +0000 (19:19 +0000)]
Generate mini-debug-info on separate thread.
The generation and compression of mini-debug-info is a lot of work.
However, we can do it on background thread when the main thread is
busy with .rodata and .text related I/O.
Change-Id: I514f1db3cb50aa250639f3ef697faa9bc9976d12
David Srbecky [Fri, 5 Feb 2016 09:40:10 +0000 (09:40 +0000)]
Change the method which generates DWARF mini-debug-info.
This splits some code from CL198651. It moves the WriteSection
call out one level and does not otherwise change behaviour.
Change-Id: I7dc1c7c08b577b50bf6fa366a9b0ca757048b81e
Vladimir Marko [Fri, 5 Feb 2016 09:57:59 +0000 (09:57 +0000)]
Merge "ART: Avoid uninitialized padding in LinkerPatch."
Nicolas Geoffray [Fri, 5 Feb 2016 09:24:32 +0000 (09:24 +0000)]
Merge "Revert "ART: Enable Jit Profiling in Mterp for arm/arm64""
Nicolas Geoffray [Fri, 5 Feb 2016 09:24:02 +0000 (09:24 +0000)]
Revert "ART: Enable Jit Profiling in Mterp for arm/arm64"
Not super happy to revert this, but unfortunately, too many problems when testing:
arm: tests timeout when running run-tests with the interpreter.
arm64 failures:
test-art-target-run-test-ndebug-prebuild-jit-relocate-ntrace-cms-checkjni-image-npictest-ndebuggable-003-omnibus-opcodes64
test-art-target-run-test-ndebug-prebuild-jit-relocate-ntrace-cms-checkjni-image-npictest-ndebuggable-005-annotations64
test-art-target-run-test-ndebug-prebuild-jit-relocate-ntrace-cms-checkjni-image-npictest-ndebuggable-064-field-access64
test-art-target-run-test-ndebug-prebuild-jit-relocate-ntrace-cms-checkjni-image-npictest-ndebuggable-406-fields64
org.apache.harmony.jpda.tests.jdwp.Events.EventWithExceptionTest#testBreakpoint_BeforeException
org.apache.harmony.jpda.tests.jdwp.Events.EventWithExceptionTest#testFieldAccess
org.apache.harmony.jpda.tests.jdwp.Events.EventWithExceptionTest#testFieldModification
org.apache.harmony.jpda.tests.jdwp.Events.EventWithExceptionTest#testMethodExit
org.apache.harmony.jpda.tests.jdwp.Events.EventWithExceptionTest#testMethodExitWithReturnValue
org.apache.harmony.jpda.tests.jdwp.Events.FieldAccessTest#testFieldAccessEvent
org.apache.harmony.jpda.tests.jdwp.Events.FieldModification002Test#testFieldModifyEvent
org.apache.harmony.jpda.tests.jdwp.Events.FieldModificationTest#testFieldModifyEvent
org.apache.harmony.jpda.tests.jdwp.Events.MethodExitWithReturnValueTest#testMethodExitWithReturnValueException
This reverts commit
a0a16105423459287497a98129dcba2828ccd7f0.
Change-Id: I8ff0512265ed0a422be67e7410998ad02639509c
Nicolas Geoffray [Fri, 5 Feb 2016 08:50:23 +0000 (08:50 +0000)]
Merge "Disable test for now."
Nicolas Geoffray [Fri, 5 Feb 2016 08:46:27 +0000 (08:46 +0000)]
Disable test for now.
Change-Id: I03af3ee1627d6eade46d8bd74ac9eb60245d66fc
Mathieu Chartier [Fri, 5 Feb 2016 00:25:39 +0000 (00:25 +0000)]
Merge "Use GC critical section for adding and removing app images"
Mathieu Chartier [Thu, 4 Feb 2016 21:31:46 +0000 (13:31 -0800)]
Use GC critical section for adding and removing app images
A SuspendAll was not sufficient since there are points during the GC
when the mutator lock can be temporarily released. This was causing
at least some assert failures in CC such as attempting to clear
black read barrier pointers on app image objects with white read
barrier pointers.
Bug:
26979834
Bug:
26970811
Bug:
26786304
Bug:
22858531
Change-Id: I375fc05e787e629c40de6f345802447c02601ff0
Igor Murashkin [Thu, 4 Feb 2016 23:30:13 +0000 (23:30 +0000)]
Merge "runtime: Cleanup comments for kAccSkipAccessChecks"
Bill Buzbee [Thu, 4 Feb 2016 22:12:43 +0000 (22:12 +0000)]
Merge "ART: Enable Jit Profiling in Mterp for arm/arm64"
Vladimir Marko [Thu, 4 Feb 2016 20:01:32 +0000 (20:01 +0000)]
ART: Avoid uninitialized padding in LinkerPatch.
Bug:
26956807
Change-Id: I0cb54a4443109de9bc95728d96bd1f80810e68a3
Mathieu Chartier [Thu, 4 Feb 2016 19:56:56 +0000 (19:56 +0000)]
Merge "madvise away app image dex cache arrays"
Mathieu Chartier [Thu, 4 Feb 2016 19:18:20 +0000 (19:18 +0000)]
Merge "Use correct requested alloc space begin for CC"
Mathieu Chartier [Thu, 4 Feb 2016 00:40:20 +0000 (16:40 -0800)]
madvise away app image dex cache arrays
This saves ram and PSS by reducing the number of mapped pages. Also
PROT_NONE the dex cache arrays section to make accesses fault.
virtual shared shared private private
size RSS PSS clean dirty clean dirty swap
-------- -------- -------- -------- -------- -------- -------- --------
Before:
/data/app/com.facebook.katana-2/oat/arm/base.art
52484 52144 43522 17244 0 0 34900 0
/data/app/com.google.android.apps.maps-2/oat/arm/base.art
6876 6816 6816 0 0 2008 4808 0
After:
/data/app/com.facebook.katana-2/oat/arm/base.art
52484 49204 42032 14344 0 0 34860 0
/data/app/com.google.android.apps.maps-2/oat/arm/base.art
6876 6388 6388 0 0 1584 4804 0
Bug:
22858531
Change-Id: I87888a7c1518a92736dbd29eed338e7472ae3587
Calin Juravle [Thu, 4 Feb 2016 19:14:40 +0000 (19:14 +0000)]
Merge "Don't use native bridge for non zygote-spawn processes"
Calin Juravle [Thu, 4 Feb 2016 19:07:51 +0000 (19:07 +0000)]
Don't use native bridge for non zygote-spawn processes
... unless we force it for testing purposes.
Bug:
26954924
Change-Id: Ib4660a35175abb479d0399e18b6194eb04dbc248
Igor Murashkin [Thu, 4 Feb 2016 19:01:21 +0000 (11:01 -0800)]
runtime: Cleanup comments for kAccSkipAccessChecks
Bug:
22414682
Change-Id: I5a19cba0fb1d6b55639c173582d547f85bc26779
Mark P Mendell [Mon, 25 Jan 2016 14:47:50 +0000 (14:47 +0000)]
Revert "Revert "X86: Use the constant area for more operations.""
This reverts commit
cf8d1bb97e193e02b430d707d3b669565fababb4.
Handle the case of an intrinsic where CurrentMethod is still an input.
This will be the case when there are unresolved classes in the
hierarchy.
Add a test case to confirm that we don't crash when handling Math.abs,
which wants to add a pointer to the constant area for the bitmask to be
used to remove the sign bit.
Enhance 565-checker-condition-liveness to check for the case of deeply
nested EmitAtUseSite chains.
Change-Id: I022e8b96a32f5bf464331d0c318c56b9d0ac3c9a
Roland Levillain [Thu, 4 Feb 2016 17:59:08 +0000 (17:59 +0000)]
Merge "Ignore ZipFileTest#testZipFileWithLotsOfEntries failures with CC on N5."
Alex Light [Wed, 3 Feb 2016 20:14:32 +0000 (12:14 -0800)]
Make test 971-iface-super smaller to prevent gcstress timeouts.
Change-Id: I0c0c5eb58936335c48e15cb7e899ab3a7ddbc00f
Roland Levillain [Thu, 4 Feb 2016 17:57:48 +0000 (17:57 +0000)]
Merge "Ignore DeflaterOutputStreamTest#testSyncFlushEnabled failures with CC."
Roland Levillain [Thu, 4 Feb 2016 17:51:13 +0000 (17:51 +0000)]
Ignore ZipFileTest#testZipFileWithLotsOfEntries failures with CC on N5.
This test sometimes fails with a
java.util.concurrent.TimeoutException on ART Builbot's
hammerhead concurrent collector configuration:
* libcore.java.util.zip.ZipFileTest#testZipFileWithLotsOfEntries
Disable it while we investigate.
Bug:
26711853
Change-Id: I22d2c1f7ae6fc447045dfa0f7075b10e5b2094ae
Mathieu Chartier [Thu, 4 Feb 2016 17:50:22 +0000 (09:50 -0800)]
Use correct requested alloc space begin for CC
Now we restore the original value instead of setting to null.
Bug:
26970047
Change-Id: I94d546c3a69ddf11805990a1003707bf55013328
Roland Levillain [Thu, 4 Feb 2016 17:29:22 +0000 (17:29 +0000)]
Ignore DeflaterOutputStreamTest#testSyncFlushEnabled failures with CC.
This test sometimes fails with a
java.util.concurrent.TimeoutException on ART Builbot's
x86 concurrent collector configuration:
* libcore.java.util.zip.DeflaterOutputStreamTest#testSyncFlushEnabled
Disable it while we investigate.
Bug:
26507762
Change-Id: I4f026c20a555f985a17bf785606cae53f3f804d3
Aart Bik [Thu, 4 Feb 2016 16:59:17 +0000 (16:59 +0000)]
Merge "Fixed bug on premature DCHECK. With fail-before/pass-after test"
Mark Mendell [Mon, 1 Feb 2016 15:08:35 +0000 (10:08 -0500)]
Support CMOV for x86_64 Select
If possible, generate CMOV to implement HSelect. Tricky cases are
an FP condition (no single CC generated), FP inputs (no FP CMOV)
and when the condition is a boolean or not emitted at the use site.
In these cases, keep using the existing HSelect code.
Added Load32BitValue for int and FP and used that to remove code
duplication. Added minimal checker test for int/long CMOV generation.
Change-Id: Id71e515f0afa5a30f53c5de3a5244de1ea429aae
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Roland Levillain [Thu, 4 Feb 2016 16:44:57 +0000 (16:44 +0000)]
Merge "Re-enable some MIPS/MIPS64 run-tests"
buzbee [Wed, 3 Feb 2016 23:23:56 +0000 (15:23 -0800)]
ART: Enable Jit Profiling in Mterp for arm/arm64
Adds the hooks for branch profiling to arm and arm64. The
other Jit profiling modes are handled in common code.
Stubbed out support for on-stack replacement.
Change-Id: Ic298a81139108c3d7f1325b59d97e14a9de08de6
Roland Levillain [Thu, 4 Feb 2016 14:36:46 +0000 (14:36 +0000)]
Merge "Test 565-checker-doublenegbitwise applies to all architectures."
Goran Jakovljevic [Thu, 4 Feb 2016 14:18:41 +0000 (15:18 +0100)]
Re-enable some MIPS/MIPS64 run-tests
These tests are passing now on MIPS/MIPS64:
- 441-checker-inliner
- 536-checker-intrinsic-optimization
- 557-checker-instruction-simplifier-ror
Change-Id: I57b82f8ec1e774e8e0a16ba289e50aa4a764b96b
David Srbecky [Thu, 4 Feb 2016 13:17:41 +0000 (13:17 +0000)]
Merge "Reduce the size of native debug info generated by JIT."
David Srbecky [Thu, 28 Jan 2016 20:01:28 +0000 (20:01 +0000)]
Reduce the size of native debug info generated by JIT.
Remove some ELF file overheads:
- Do not produce program headers.
- Do not page align strtab.
- Do not write oat_patches sections.
This more than halves the size of JIT native debug info.
Since we generate many small entries, the overheads added up.
Change-Id: I27d95548c61e2e38c3683d6f5eb870a2db6e812d
Alexandre Rames [Thu, 4 Feb 2016 13:16:08 +0000 (13:16 +0000)]
Test 565-checker-doublenegbitwise applies to all architectures.
Change-Id: Icd8c54b5b8e90f839c4ef1646074f70be1cfe094
Igor Murashkin [Thu, 4 Feb 2016 00:34:43 +0000 (00:34 +0000)]
Merge "runtime: Don't skip verification for -Xverify:soft-fail"
Mathieu Chartier [Thu, 4 Feb 2016 00:22:21 +0000 (00:22 +0000)]
Merge "Strip image-format arg in dex2oat"
Mathieu Chartier [Wed, 3 Feb 2016 23:50:29 +0000 (15:50 -0800)]
Strip image-format arg in dex2oat
Avoids printing it out to prevent spam.
Bug:
22858531
Change-Id: I9d0b35b8fa317bc39ab27946baa88812a32381e2
Alex Light [Wed, 3 Feb 2016 21:51:04 +0000 (21:51 +0000)]
Merge "Fix class_linker_test to take into account default methods."
Alex Light [Wed, 3 Feb 2016 21:45:41 +0000 (13:45 -0800)]
Fix class_linker_test to take into account default methods.
Bug:
26963208
Change-Id: Ie22ce4e7fae3b259b9a58356dbd9662fda6d49e3
Igor Murashkin [Wed, 3 Feb 2016 00:56:50 +0000 (16:56 -0800)]
runtime: Don't skip verification for -Xverify:soft-fail
When forcing the interpreter into access checks mode,
make sure that the regular verification is still run,
giving the verifier an opportunity to throw a VerifyError.
If verification would've succeeded (without -Xverify:soft-fail flag),
override this and soft-fail, to force the interpreter-with-access-checks to be run
instead of the normal faster interpreter.
This fixes the following run-tests under the interpeter-access-checks:
* 135
* 412
* 471
* 506
* 800
Bug:
22414682
Change-Id: I5cb86a8bba71c7af9361a63c0802786c852b857b
Mathieu Chartier [Wed, 3 Feb 2016 21:22:49 +0000 (21:22 +0000)]
Merge "Avoid read barrier for UpdateEntrypoints"
Aart Bik [Wed, 3 Feb 2016 20:56:02 +0000 (12:56 -0800)]
Fixed bug on premature DCHECK.
With fail-before/pass-after test
bug=
26947011
Rationale:
During BCE, the phi structure is under construction,
to be fixed by InsertPhiNodes() and carefully checked
with the SSA checker. So utilities should not overly
DCHECK on SSA consistency during the modifications.
Change-Id: Ia9df9ee5aac0c1dd2c3e3a447c730246d5e48bbb
Igor Murashkin [Wed, 3 Feb 2016 20:15:05 +0000 (20:15 +0000)]
Merge changes I44ee74d8,I78b17187
* changes:
runtime: Update Proxy to assume 1 less direct method
runtime: Fix field resolution with access checks (runtest 073)
Igor Murashkin [Wed, 3 Feb 2016 20:13:59 +0000 (20:13 +0000)]
Merge changes from topic 'reflection_1_8'
* changes:
Revert "Revert "reflection: Add new 1.8 AnnotatedElement methods and tests""
interpreter: Fix proxy method invocation with access checks enabled.
Mathieu Chartier [Wed, 3 Feb 2016 19:48:27 +0000 (11:48 -0800)]
Avoid read barrier for UpdateEntrypoints
Somehow not caught by local testing.
Bug:
26786304
Change-Id: Ib9b53c0252bc053013fddd63c8146f4057a38453
Aart Bik [Wed, 3 Feb 2016 17:29:11 +0000 (17:29 +0000)]
Merge "Minor improvement on static BCE analysis."
Aart Bik [Tue, 2 Feb 2016 21:26:16 +0000 (13:26 -0800)]
Minor improvement on static BCE analysis.
Rationale:
Avoid testing initial range if nothing is known.
Change-Id: I22646a5fd6e4481245d1a2f57891d2805550489f
Roland Levillain [Wed, 3 Feb 2016 12:28:41 +0000 (12:28 +0000)]
Merge "Implement first kind of polymorphic inlining on MIPS."
Roland Levillain [Wed, 3 Feb 2016 12:27:20 +0000 (12:27 +0000)]
Implement first kind of polymorphic inlining on MIPS.
Change-Id: Ie430d6c5821273143a1872b376e8e24683d00ab0
Roland Levillain [Wed, 3 Feb 2016 12:14:14 +0000 (12:14 +0000)]
Merge "Revert "Revert "Optimizing: double-negated bitwise operations simplifications"""
Alexandre Rames [Wed, 3 Feb 2016 10:54:07 +0000 (10:54 +0000)]
Revert "Revert "Optimizing: double-negated bitwise operations simplifications""
This reverts commit
737c0a99dfbba306ec1f50e2adf66b5d97805af6 with fixes.
In the original patch, the new instruction could be inserted before
one of its inputs. A regression test is also added.
Change-Id: Ie49a17ac90ff048355d9cc944b468cd1b1914424
Vladimir Marko [Wed, 3 Feb 2016 10:51:15 +0000 (10:51 +0000)]
Merge "ART: Fix rounding up in DexCacheArraysLayout constructor."
Nicolas Geoffray [Wed, 3 Feb 2016 10:44:56 +0000 (10:44 +0000)]
Merge "Assume fp operations can also take a constant on x86."
David Srbecky [Wed, 3 Feb 2016 10:43:03 +0000 (10:43 +0000)]
Merge "Write DWARF strings inline and remove .debug_str section."
David Srbecky [Mon, 1 Feb 2016 15:37:32 +0000 (15:37 +0000)]
Write DWARF strings inline and remove .debug_str section.
This means we no longer de-duplicate strings. Contra-intuitively this
saves space since removal of the indirection (4 bytes per string)
outweights the saving that we had from removal of duplicated strings.
The removal of buffering and deduplication also speeds up the processing.
Change-Id: Iee559094ed6180363e1665fbc79493e624b63435
David Srbecky [Wed, 3 Feb 2016 10:39:42 +0000 (10:39 +0000)]
Merge "Share DWARF .debug_abbrev sections."
David Srbecky [Fri, 29 Jan 2016 18:59:56 +0000 (18:59 +0000)]
Share DWARF .debug_abbrev sections.
Restructure the code so that all compilation units share the same
.debug_abbrev sections. This deduplicates many of the abbrevs.
Change-Id: I7da07a8c850871786df52674183c16d574684729
Nicolas Geoffray [Wed, 3 Feb 2016 10:13:41 +0000 (10:13 +0000)]
Assume fp operations can also take a constant on x86.
Because irreducible loops disable the constant pool optimization
on x86, we need to handle cases where a fp operation gets one.
Change-Id: I43387f31aa2589d02112953baa62fd0994d0a6d7
David Brazdil [Wed, 3 Feb 2016 10:00:20 +0000 (10:00 +0000)]
Merge "ART: Enable multi-level instruction inlining"
David Brazdil [Tue, 2 Feb 2016 16:50:46 +0000 (16:50 +0000)]
ART: Enable multi-level instruction inlining
Change-Id: I4b4c927d7b1598dc197793c25185fb079dec7fe1
Mingyao Yang [Wed, 3 Feb 2016 07:21:05 +0000 (07:21 +0000)]
Merge "Handle HSelect in LSE."
Mingyao Yang [Wed, 3 Feb 2016 04:10:32 +0000 (20:10 -0800)]
Handle HSelect in LSE.
HSelect essentially creates an alias which breaks the singleton
assumption. Need to handle the case in singleton detection.
Bug:
26922558
Change-Id: I259deefe16e1e16c08179a10369cfe5ae23ae155
Mathieu Chartier [Wed, 3 Feb 2016 03:02:54 +0000 (03:02 +0000)]
Merge "Prevent crashes if boot images fail to load"
Mathieu Chartier [Wed, 3 Feb 2016 01:24:39 +0000 (17:24 -0800)]
Prevent crashes if boot images fail to load
We now reset the requested_alloc_space_begin so that there are no gaps
between any boot images and the non moving space.
Also clear boot_image_spaces so that ClassLinker::InitFromBootImage is
not called.
Finally, delete image spaces so that the maps and oat files are
unmapped.
Bug:
26913820
(cherry picked from commit
1e5ff87e774fdbd46efb1d2f61b1b2ab80145a19)
Change-Id: Ia31937f29ef217eac083165dfff37cd068fbd32b
Mathieu Chartier [Wed, 3 Feb 2016 00:18:12 +0000 (00:18 +0000)]
Merge "Fix updating string dex cache array for no class table case"
Mathieu Chartier [Tue, 2 Feb 2016 18:09:58 +0000 (10:09 -0800)]
Fix updating string dex cache array for no class table case
The issue was that array classes do not have a dex cache. Also removed
some unnecessary mutables.
Bug:
22858531
Change-Id: I2bc45f019e064b6e562c8f158cc2ac8c0e513afd
Mathieu Chartier [Wed, 3 Feb 2016 00:08:44 +0000 (00:08 +0000)]
Merge "Fix remaining read barrier issues in image relocation"
Mathieu Chartier [Tue, 2 Feb 2016 04:15:11 +0000 (20:15 -0800)]
Fix remaining read barrier issues in image relocation
Added a way to disallow read barriers, this makes it easy to find
the issues.
Bug:
26786304
Change-Id: I7ebb50832686d03e096a979aae9741239371683f
Hans Boehm [Tue, 2 Feb 2016 23:11:14 +0000 (23:11 +0000)]
Merge "Rosalloc fast path in assembly for MIPS64"
Richard Uhler [Tue, 2 Feb 2016 23:08:12 +0000 (23:08 +0000)]
Merge "Fix DCHECK compilation error."
Hiroshi Yamauchi [Tue, 2 Feb 2016 21:55:04 +0000 (21:55 +0000)]
Merge "Use SS/GSS collectors in dex2oat if they are the default."