OSDN Git Service
Mingyao Yang [Thu, 11 Feb 2016 19:27:37 +0000 (19:27 +0000)]
Merge "Some clean-up for the handling of HSelect in LSE"
Roland Levillain [Thu, 11 Feb 2016 15:22:52 +0000 (15:22 +0000)]
Merge "Make run test 572-checker-array-get-regression gcstress friendly."
Roland Levillain [Thu, 11 Feb 2016 12:50:41 +0000 (12:50 +0000)]
Make run test 572-checker-array-get-regression gcstress friendly.
The large array allocated in
test/572-checker-array-get-regression/src/Main.java used to
be too big for the small heap used in gcstress mode. Use a
smaller array size that however still exercises the initial
issue checked by this regression test.
Bug:
26817006
Bug:
12687968
Change-Id: Id7080a18007cad9b5d4ac31b45f7df46213a908e
Nicolas Geoffray [Thu, 11 Feb 2016 11:41:19 +0000 (11:41 +0000)]
Merge "Fix AllocateBlockedReg."
Nicolas Geoffray [Thu, 11 Feb 2016 11:40:11 +0000 (11:40 +0000)]
Merge "Revert "Revert "Revert "ART: Enable Jit Profiling in Mterp for arm/arm64""""
Nicolas Geoffray [Thu, 11 Feb 2016 11:39:37 +0000 (11:39 +0000)]
Revert "Revert "Revert "ART: Enable Jit Profiling in Mterp for arm/arm64"""
Unfortunately, run-test interpreter on arm32 are still timing out, and the following jdwp tests on armv8 are failing:
org.apache.harmony.jpda.tests.jdwp.Events.EventWithExceptionTest#testBreakpoint_BeforeException (no test history available)
org.apache.harmony.jpda.tests.jdwp.Events.EventWithExceptionTest#testFieldAccess (no test history available)
org.apache.harmony.jpda.tests.jdwp.Events.EventWithExceptionTest#testFieldModification (no test history available)
org.apache.harmony.jpda.tests.jdwp.Events.EventWithExceptionTest#testMethodExit (no test history available)
org.apache.harmony.jpda.tests.jdwp.Events.EventWithExceptionTest#testMethodExitWithReturnValue (no test history available)
org.apache.harmony.jpda.tests.jdwp.Events.FieldAccessTest#testFieldAccessEvent (no test history available)
org.apache.harmony.jpda.tests.jdwp.Events.FieldModification002Test#testFieldModifyEvent (no test history available)
org.apache.harmony.jpda.tests.jdwp.Events.FieldModificationTest#testFieldModifyEvent (no test history available)
org.apache.harmony.jpda.tests.jdwp.Events.MethodExitWithReturnValueTest#testMethodExitWithReturnValueException (no test history available)
This reverts commit
9687f244bdb5dd0b4d9dd804a7c8c7b4a911d364.
Change-Id: Iadac4902ab8d7eb574cc4abeba5f93388d59dcb4
Mathieu Chartier [Wed, 10 Feb 2016 22:59:54 +0000 (22:59 +0000)]
Merge "Always visit ProfilingInfo, the counter could be reset."
Bill Buzbee [Wed, 10 Feb 2016 22:42:02 +0000 (22:42 +0000)]
Merge "Revert "Revert "ART: Enable Jit Profiling in Mterp for arm/arm64"""
Bill Buzbee [Wed, 10 Feb 2016 21:50:37 +0000 (21:50 +0000)]
Merge "ART: Fix arm mterp shadow handling"
buzbee [Wed, 10 Feb 2016 16:59:12 +0000 (08:59 -0800)]
ART: Fix arm mterp shadow handling
The shadow frame conventions for the interpreter require that any
time a virtual register is set, a corresponding shadow register
must also be set (cleared if non-reference). The arm Mterp
implementation was failing to do this for some 64-bit operations.
Change-Id: Iee174d54318bf6ebb677966ad020d8cbe578986c
Vladimir Marko [Wed, 10 Feb 2016 14:18:20 +0000 (14:18 +0000)]
Merge "ART/Thumb2: Disassemble SBFX/UBFX."
Vladimir Marko [Wed, 10 Feb 2016 12:52:59 +0000 (12:52 +0000)]
ART/Thumb2: Disassemble SBFX/UBFX.
Change-Id: I856206de81f41959f68de0653db021903dd1a210
Roland Levillain [Wed, 10 Feb 2016 12:41:32 +0000 (12:41 +0000)]
Merge "Fix run test 572-checker-array-get-regression on 32-bit archs."
Roland Levillain [Wed, 10 Feb 2016 12:33:29 +0000 (12:33 +0000)]
Fix run test 572-checker-array-get-regression on 32-bit archs.
HCurrentMethod instructions are typed as long on 64-bit
architectures, but as integer on 32-bit ones.
Bug:
26817006
Bug:
12687968
Change-Id: Icec2f0b0629c0af7a7afeabb0fd2881babb86368
Roland Levillain [Wed, 10 Feb 2016 11:51:54 +0000 (11:51 +0000)]
Merge "Fix ARM64 Baker's read barrier fast path for ArraySet."
Vladimir Marko [Wed, 10 Feb 2016 09:44:52 +0000 (09:44 +0000)]
Merge "Try to substitute constructor chains for IPUTs."
Bill Buzbee [Tue, 9 Feb 2016 21:29:52 +0000 (21:29 +0000)]
Merge "Mterp: Fix and restore mac host build"
Vladimir Marko [Thu, 4 Feb 2016 19:46:56 +0000 (19:46 +0000)]
Try to substitute constructor chains for IPUTs.
Match a constructor chain where each constructor either
forwards some or all of its arguments to the next (i.e.
superclass constructor or a constructor in the same class)
and may pass extra zeros (of any type, including null),
followed by any number of IPUTs on "this", storing either
arguments or zeros, until we reach the contructor of
java.lang.Object.
When collecting IPUTs from the constructor chain, remove
any IPUTs that store the same field as an IPUT that comes
later. This is safe in this case even if those IPUTs store
volatile fields because the uninitialized object reference
wasn't allowed to escape yet. Also remove any IPUTs that
store zero values as the allocated object is already zero
initialized.
Change-Id: If93022310bf04fe38ee741665ac4a65d4c2bb25f
Andreas Gampe [Tue, 9 Feb 2016 18:54:02 +0000 (18:54 +0000)]
Merge "ART: Give better error messages in dex-file verifier"
Vladimir Marko [Tue, 9 Feb 2016 18:47:23 +0000 (18:47 +0000)]
Merge "ARM: Add direct calls to math intrinsics"
Andreas Gampe [Tue, 9 Feb 2016 17:21:04 +0000 (09:21 -0800)]
ART: Give better error messages in dex-file verifier
Try to decode field and method names when an access-flag violation
has been found. This is not guaranteed to work, if the file is
broken enough.
Bug:
27064244
Bug:
27070841
Change-Id: Ie913076462e958d4f21b481631bc874cf6f67c0d
Bill Buzbee [Fri, 5 Feb 2016 14:08:10 +0000 (14:08 +0000)]
Revert "Revert "ART: Enable Jit Profiling in Mterp for arm/arm64""
Fixes: missing sign extension in iget template
Call to wrong branch profiling helper in arm/goto_16 and arm/goto_32
Missing export PCs
Reworks: Branch handlers to reduce cost of branch profiling.
Re-enables Jit profiling for both Arm and Arm64.
Performance note:
Branch profiling is relatively expensive, though the real
cost will depend on branch frequency. Taking a very
branch intensive benchmark, CaffeineMark's logic test, we
see the following scores (higher is better):
Mterp (profiling off) 6187
Mterp (profiling on) 4305
Switch (profiling off) 3931
Switch (profiling on) 2032
This reverts commit
95717f0010e7a9445450f4d39babfaf3a83e29b5.
Change-Id: Ia2ef8b54ce95bfa86178b89c43f8a703316b2944
Narayan Kamath [Tue, 9 Feb 2016 14:22:51 +0000 (14:22 +0000)]
Merge "openjdkjvm: Don't leak the results of JVM_RawMonitorCreate."
Narayan Kamath [Tue, 9 Feb 2016 13:11:09 +0000 (13:11 +0000)]
openjdkjvm: Don't leak the results of JVM_RawMonitorCreate.
bug:
27050501
Change-Id: Ib0db3e5a1ec412de07455f09fe88b3102b347e46
Roland Levillain [Tue, 9 Feb 2016 12:49:18 +0000 (12:49 +0000)]
Fix ARM64 Baker's read barrier fast path for ArraySet.
Do not exhaust the pool of scratch (temporary) registers
gratuitously when emitting an instrumented array load with a
large constant index.
Bug:
26817006
Bug:
12687968
Change-Id: I65a4fe676aa3c9e2c8d7e26195d9af6432c83ff9
Narayan Kamath [Tue, 9 Feb 2016 11:34:26 +0000 (11:34 +0000)]
Merge "openjdkjvm: clean up verbose logging."
Narayan Kamath [Fri, 5 Feb 2016 14:58:02 +0000 (14:58 +0000)]
openjdkjvm: clean up verbose logging.
bug:
26994173
Change-Id: I4b55d68fa89737e25e9d7b10b335423b3ea4bef2
Mingyao Yang [Wed, 3 Feb 2016 13:46:57 +0000 (05:46 -0800)]
Some clean-up for the handling of HSelect in LSE
Use $noinline and throwing an Exception for doing no-inlining in
the test.
Also create reference info early for HSelect if it has reference
type, which may help the pre-existence-based alias analysis.
Change-Id: Ia825058a457b049f87a13087bb78f5233513e0a8
Hiroshi Yamauchi [Tue, 9 Feb 2016 02:19:30 +0000 (02:19 +0000)]
Merge "Check pages are readable after mprotect for SEGV_ACCERR diagnosis"
Hiroshi Yamauchi [Mon, 8 Feb 2016 22:18:21 +0000 (14:18 -0800)]
Check pages are readable after mprotect for SEGV_ACCERR diagnosis
We have a suspected mprotect issue where we see seg faults after pages
are mprotected with PROT_READ|PROT_WRITE with the SS collector on
host. This change attempts to see if earlier reads would cause faults
similarly.
Bug:
19894268
Change-Id: I041a663c6b55b747120915f73a0db5f566744ed8
Alex Light [Mon, 8 Feb 2016 21:54:56 +0000 (21:54 +0000)]
Merge "Default methods should not be found by getDeclaredMethod"
Tamas Berghammer [Mon, 8 Feb 2016 20:26:26 +0000 (20:26 +0000)]
Merge "Revert "Make it possible to enable native debugging through debug flags""
Tamas Berghammer [Mon, 8 Feb 2016 20:21:54 +0000 (20:21 +0000)]
Revert "Make it possible to enable native debugging through debug flags"
The change causes issues in test-art-target-gtest-jni_internal_test32
This reverts commit
c94a61f06ffc13288c67891048128c987b29bf33.
Change-Id: Iecfe3c6874d7b0dd59f10156fe2eb743ab7221dc
Alex Light [Mon, 8 Feb 2016 18:30:04 +0000 (10:30 -0800)]
Default methods should not be found by getDeclaredMethod
We were incorrectly returning default methods from getDeclaredMethod
calls on an implementing class that uses the default implementation.
Bug:
27060609
Change-Id: I2e07023a11585e5f7cd92c4c0e1263f54aea1f5f
Tamas Berghammer [Mon, 8 Feb 2016 17:01:58 +0000 (17:01 +0000)]
Merge "Make it possible to enable native debugging through debug flags"
David Srbecky [Mon, 8 Feb 2016 12:49:09 +0000 (12:49 +0000)]
Merge "Split elf_writer_debug.cc to several files."
David Srbecky [Fri, 5 Feb 2016 15:49:10 +0000 (15:49 +0000)]
Split elf_writer_debug.cc to several files.
Refactoring only. The file has grown significantly over time,
and it is time to split it so it can be better managed.
Change-Id: Idce0231718add722292f4701df353d5baf31de5f
David Srbecky [Mon, 8 Feb 2016 12:46:10 +0000 (12:46 +0000)]
Merge "Move code related to debug info generation to its own directory."
David Srbecky [Fri, 5 Feb 2016 13:34:46 +0000 (13:34 +0000)]
Move code related to debug info generation to its own directory.
debug/dwarf/ contains helper classes which hide the details
of the DWARF file format. It acts as independent DWARF library.
debug/ contains ART-specific code which generates ELF debug
sections (which includes non-DWARF sections like .symtab).
Change-Id: Id351f604e4e64be2ca395a78324ea02e30481497
Tamas Berghammer [Fri, 5 Feb 2016 18:09:08 +0000 (18:09 +0000)]
Make it possible to enable native debugging through debug flags
* Add support for a new debug flag disabling the optimizations in
the compiler and enable the generation of some additional debug
info (--native-debuggable).
* Ignore the content of the oat files if force JIT is enabled so
the runtime ignores the AOT-ed code what doesn't contain any
debug info.
Time measurements on a Nexus 5 with running:
am start -n com.facebook.katana/com.facebook.katana.LoginActivity -W
Before change: | AVG | DEV
--------------------------------------
ThisTime: 549 492 512 511 | 516 | 24
TotalTime: 549 492 512 511 | 516 | 24
WaitTime: 662 511 528 526 | 557 | 71
After change: | AVG | DEV
--------------------------------------
ThisTime: 530 467 503 544 | 511 | 34
TotalTime: 530 467 503 544 | 511 | 34
WaitTime: 551 497 536 583 | 541 | 36
Based on the numbers the speed impact of the change is less then the
accuracy of the measurement and it is also negligible.
The minor speed improvement displayed in the measurements are just
the cause of the variance of the measurement and not caused by this
change.
Change-Id: Ia9022cbc1bbfcc072314b6c95f63a4bf8060c36c
Serguei Katkov [Thu, 28 Jan 2016 02:21:26 +0000 (08:21 +0600)]
Mterp: Fix and restore mac host build
The following issues are fixed:
- Macro literal
- macro args should be comma separated
- no .type and .size for mac host build
- globals are _ prefixed
Change-Id: I28ef9138d5db06a6917a66b401c629bf66fac193
Signed-off-by: Serguei Katkov <serguei.i.katkov@intel.com>
Nicolas Geoffray [Sun, 7 Feb 2016 23:24:10 +0000 (23:24 +0000)]
Merge "Disable osr while investigating flakiness."
Nicolas Geoffray [Sun, 7 Feb 2016 13:13:33 +0000 (13:13 +0000)]
Disable osr while investigating flakiness.
org.apache.harmony.tests.java.util.TreeMapRndTest#testPutAll fails
in debug mode.
Change-Id: Idd15b25a236d4e5d3eb6d83ac0c038c1e10ee55a
Nicolas Geoffray [Sun, 7 Feb 2016 12:48:28 +0000 (12:48 +0000)]
Always visit ProfilingInfo, the counter could be reset.
The counter could be reset or overflow, but we may have
inline caches populated.
bug:
26775558
Change-Id: I0566b6b4a7bf8dfb3411492c0413eafbf39da7c3
Nicolas Geoffray [Sat, 6 Feb 2016 17:01:15 +0000 (17:01 +0000)]
Fix AllocateBlockedReg.
Motivated by System.arraycopy(char) for x86, where only looking
at use and not register use makes the allocator think it's out
of registers.
bug:
27019403
Change-Id: I0db5bc839a77e6394a07facbf19d00a165dc2ef7
Christopher Ferris [Sat, 6 Feb 2016 00:56:50 +0000 (00:56 +0000)]
Merge "Newer kernels added SEGV_BNDERR."
Andreas Gampe [Sat, 6 Feb 2016 00:13:57 +0000 (00:13 +0000)]
Merge "ART: Curb lock-verification-failure spam"
Andreas Gampe [Fri, 5 Feb 2016 04:52:54 +0000 (20:52 -0800)]
ART: Curb lock-verification-failure spam
Just print one message per class. Also print a helpful message once.
Bug:
26951356
Change-Id: I83702b67dc535d86e03835df7a72afda081c83be
Nicolas Geoffray [Fri, 5 Feb 2016 23:34:43 +0000 (23:34 +0000)]
Merge "Point fixes after OSR change."
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
Andreas Gampe [Fri, 5 Feb 2016 23:06:51 +0000 (23:06 +0000)]
Merge "ART: Better InitWithoutImage error messages"
Andreas Gampe [Fri, 5 Feb 2016 05:45:01 +0000 (21:45 -0800)]
ART: Better InitWithoutImage error messages
InitWithoutImage can easily fail when assumptions of the runtime
with respect to core classes are wrong. Give some more general
helpful messages.
Change-Id: Icedac9a0d6ad84b2d1dde9e30bf4fab2f48a3efd
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"
Christopher Ferris [Thu, 4 Feb 2016 22:06:34 +0000 (14:06 -0800)]
Newer kernels added SEGV_BNDERR.
Bug:
23789423
Change-Id: Ia2a9b0504546456c0da5dd20ae040b6df0977cbe
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