OSDN Git Service

android-x86/art.git
8 years agoam c7936863: am 9ee5d6cd: Merge "Add missing field init in constructors"
Sebastien Hertz [Wed, 26 Aug 2015 06:17:16 +0000 (06:17 +0000)]
am c7936863: am 9ee5d6cd: Merge "Add missing field init in constructors"

* commit 'c7936863dafc081e8e2ccdca9712807bab2fe318':
  Add missing field init in constructors

8 years agoam c4d507da: am d71c89f4: Merge "Update instrumentation stack after exception event"
Sebastien Hertz [Wed, 26 Aug 2015 06:12:18 +0000 (06:12 +0000)]
am c4d507da: am d71c89f4: Merge "Update instrumentation stack after exception event"

* commit 'c4d507da213bd23e91b4aeaa84e6f2d4fe599c7f':
  Update instrumentation stack after exception event

8 years agoam 9ee5d6cd: Merge "Add missing field init in constructors"
Sebastien Hertz [Wed, 26 Aug 2015 06:11:28 +0000 (06:11 +0000)]
am 9ee5d6cd: Merge "Add missing field init in constructors"

* commit '9ee5d6cdc14ac94b64ea1961bf221bad48746929':
  Add missing field init in constructors

8 years agoMerge "Add missing field init in constructors"
Sebastien Hertz [Wed, 26 Aug 2015 06:04:50 +0000 (06:04 +0000)]
Merge "Add missing field init in constructors"

8 years agoam d71c89f4: Merge "Update instrumentation stack after exception event"
Sebastien Hertz [Wed, 26 Aug 2015 06:03:42 +0000 (06:03 +0000)]
am d71c89f4: Merge "Update instrumentation stack after exception event"

* commit 'd71c89f46ad60713494d537001d4b370ce355885':
  Update instrumentation stack after exception event

8 years agoMerge "Update instrumentation stack after exception event"
Sebastien Hertz [Wed, 26 Aug 2015 05:57:33 +0000 (05:57 +0000)]
Merge "Update instrumentation stack after exception event"

8 years agoam fa8114ca: am b5f7abcd: Merge "Revert "Revert "Move annotations to native."""
Jeff Hao [Wed, 26 Aug 2015 02:54:07 +0000 (02:54 +0000)]
am fa8114ca: am b5f7abcd: Merge "Revert "Revert "Move annotations to native."""

* commit 'fa8114ca7226eb14d3804e2995895bdc3c90db92':
  Revert "Revert "Move annotations to native.""

8 years agoam b5f7abcd: Merge "Revert "Revert "Move annotations to native."""
Jeff Hao [Tue, 25 Aug 2015 21:40:39 +0000 (21:40 +0000)]
am b5f7abcd: Merge "Revert "Revert "Move annotations to native."""

* commit 'b5f7abcdef9aec80e67b581a9bcc0de39e98fc85':
  Revert "Revert "Move annotations to native.""

8 years agoMerge "Revert "Revert "Move annotations to native."""
Jeff Hao [Tue, 25 Aug 2015 21:33:38 +0000 (21:33 +0000)]
Merge "Revert "Revert "Move annotations to native."""

8 years agoRevert "Revert "Move annotations to native.""
Jeff Hao [Tue, 25 Aug 2015 20:44:19 +0000 (20:44 +0000)]
Revert "Revert "Move annotations to native.""

This reverts commit 7db6dd79a24570448ae737ee1946b00396696cac.

Adds check if field's declaring class is proxy.
Bug: 23508574

Change-Id: Ie829f1526e74427711e818b56d1588d92946cbf6

8 years agoam fc5ce91d: am dda43e7e: Merge "ART: Add (Fpu)RegHigh stack map location kinds"
David Brazdil [Tue, 25 Aug 2015 16:50:25 +0000 (16:50 +0000)]
am fc5ce91d: am dda43e7e: Merge "ART: Add (Fpu)RegHigh stack map location kinds"

* commit 'fc5ce91d46fdb9169860f5c8c3c57a7359dd343f':
  ART: Add (Fpu)RegHigh stack map location kinds

8 years agoam 58b7ffb7: am 54503b91: Merge "ART: Add option to retain lock levels in verifier"
Andreas Gampe [Tue, 25 Aug 2015 16:46:47 +0000 (16:46 +0000)]
am 58b7ffb7: am 54503b91: Merge "ART: Add option to retain lock levels in verifier"

* commit '58b7ffb7085a9a1cb5b4d9fbd4ff7dd0d94c1722':
  ART: Add option to retain lock levels in verifier

8 years agoam dda43e7e: Merge "ART: Add (Fpu)RegHigh stack map location kinds"
David Brazdil [Tue, 25 Aug 2015 16:44:58 +0000 (16:44 +0000)]
am dda43e7e: Merge "ART: Add (Fpu)RegHigh stack map location kinds"

* commit 'dda43e7e9680e6eead02876e67718d01837d89e0':
  ART: Add (Fpu)RegHigh stack map location kinds

8 years agoMerge "ART: Add (Fpu)RegHigh stack map location kinds"
David Brazdil [Tue, 25 Aug 2015 16:40:48 +0000 (16:40 +0000)]
Merge "ART: Add (Fpu)RegHigh stack map location kinds"

8 years agoam 54503b91: Merge "ART: Add option to retain lock levels in verifier"
Andreas Gampe [Tue, 25 Aug 2015 16:37:58 +0000 (16:37 +0000)]
am 54503b91: Merge "ART: Add option to retain lock levels in verifier"

* commit '54503b91200b0c645358ae428f397c7db358e86a':
  ART: Add option to retain lock levels in verifier

8 years agoART: Add (Fpu)RegHigh stack map location kinds
David Brazdil [Tue, 25 Aug 2015 12:52:43 +0000 (13:52 +0100)]
ART: Add (Fpu)RegHigh stack map location kinds

When running Optimized code on 64-bit, high value of vreg pair may be
stored in the high 32 bits of a CPU register. This is not reflected in
stack maps which would encode both the low and high vreg as
kInRegister with the same register number, making it indistinguishable
from two non-wide vregs with the same value in the lower 32 bits.

Deoptimization deals with this by running the verifier and thus
obtaining vreg pair information, but this would be too slow for try/
catch. This patch therefore adds two new stack map location kinds:
kInRegisterHigh and kInFpuRegisterHigh to differentiate between the
two cases.

Note that this also applies to floating-point registers on x86.

Change-Id: I15092323e56a661673e77bee1f0fca4261374732

8 years agoMerge "ART: Add option to retain lock levels in verifier"
Andreas Gampe [Tue, 25 Aug 2015 16:34:32 +0000 (16:34 +0000)]
Merge "ART: Add option to retain lock levels in verifier"

8 years agoam f1ae0fe2: am 77204c01: Merge "Revert "Revert "[MIPS] Use hard float calling conven...
Vladimir Marko [Tue, 25 Aug 2015 16:25:35 +0000 (16:25 +0000)]
am f1ae0fe2: am 77204c01: Merge "Revert "Revert "[MIPS] Use hard float calling convention for managed code"""

* commit 'f1ae0fe299eff17aec22e0b08815987ee1871c3e':
  Revert "Revert "[MIPS] Use hard float calling convention for managed code""

8 years agoam 77204c01: Merge "Revert "Revert "[MIPS] Use hard float calling convention for...
Vladimir Marko [Tue, 25 Aug 2015 16:16:50 +0000 (16:16 +0000)]
am 77204c01: Merge "Revert "Revert "[MIPS] Use hard float calling convention for managed code"""

* commit '77204c018e27ad70a226daadebf75e9144b1b275':
  Revert "Revert "[MIPS] Use hard float calling convention for managed code""

8 years agoART: Add option to retain lock levels in verifier
Andreas Gampe [Tue, 25 Aug 2015 04:13:08 +0000 (21:13 -0700)]
ART: Add option to retain lock levels in verifier

Templatize SetRegisterType to be able to retain lock levels. When
sharpening a type, e.g., in a branch after an instanceof, the
verifier should remember if the register had been locked before
and not implicitly erase that information.

Bug: 23502994
Change-Id: Iba62688a536792da0920598fecdbf24a4993ec04

8 years agoMerge "Revert "Revert "[MIPS] Use hard float calling convention for managed code"""
Vladimir Marko [Tue, 25 Aug 2015 16:10:51 +0000 (16:10 +0000)]
Merge "Revert "Revert "[MIPS] Use hard float calling convention for managed code"""

8 years agoam 93146839: am 9dc601eb: Merge "Revert "Fix deoptimization with pending exception""
Sebastien Hertz [Tue, 25 Aug 2015 15:17:41 +0000 (15:17 +0000)]
am 93146839: am 9dc601eb: Merge "Revert "Fix deoptimization with pending exception""

* commit '93146839d83c82fc42fe3463bea5aa6e519afc2e':
  Revert "Fix deoptimization with pending exception"

8 years agoRevert "Revert "[MIPS] Use hard float calling convention for managed code""
Goran Jakovljevic [Mon, 24 Aug 2015 12:58:55 +0000 (12:58 +0000)]
Revert "Revert "[MIPS] Use hard float calling convention for managed code""

This reverts commit 7fee84c087e0f903e7d43bef180df047db1c8051.

Fixed issue with temporary registers on Mips32r6.

Change-Id: I93018927e6a6036cff2d55e6cda66d3212a4316b

8 years agoam 9dc601eb: Merge "Revert "Fix deoptimization with pending exception""
Sebastien Hertz [Tue, 25 Aug 2015 15:12:01 +0000 (15:12 +0000)]
am 9dc601eb: Merge "Revert "Fix deoptimization with pending exception""

* commit '9dc601eb65da0cd5f53172699dacd6e5dd38ab44':
  Revert "Fix deoptimization with pending exception"

8 years agoMerge "Revert "Fix deoptimization with pending exception""
Sebastien Hertz [Tue, 25 Aug 2015 15:05:54 +0000 (15:05 +0000)]
Merge "Revert "Fix deoptimization with pending exception""

8 years agoRevert "Fix deoptimization with pending exception"
Sebastien Hertz [Tue, 25 Aug 2015 15:05:17 +0000 (15:05 +0000)]
Revert "Fix deoptimization with pending exception"

This reverts commit 54b62480636ae846d705fc180c7bd6cd08ec1e42.

This is causing test failures with Optimizing compiler.

Bug: 23371176
Bug: 19944235
Change-Id: Ie3ffbcf2b6d2ca8bc93cb008a4e29a7567d04a7c

8 years agoam dd4a05d9: am 5595dd17: Merge "Fix deoptimization with pending exception"
Sebastien Hertz [Tue, 25 Aug 2015 14:14:10 +0000 (14:14 +0000)]
am dd4a05d9: am 5595dd17: Merge "Fix deoptimization with pending exception"

* commit 'dd4a05d909e79d51aa7a1d0159993dde64a4185b':
  Fix deoptimization with pending exception

8 years agoam 5595dd17: Merge "Fix deoptimization with pending exception"
Sebastien Hertz [Tue, 25 Aug 2015 14:07:37 +0000 (14:07 +0000)]
am 5595dd17: Merge "Fix deoptimization with pending exception"

* commit '5595dd177b77bc32a512a8676e7195f649bb4e1d':
  Fix deoptimization with pending exception

8 years agoMerge "Fix deoptimization with pending exception"
Sebastien Hertz [Tue, 25 Aug 2015 14:04:14 +0000 (14:04 +0000)]
Merge "Fix deoptimization with pending exception"

8 years agoAdd missing field init in constructors
Sebastien Hertz [Tue, 25 Aug 2015 13:25:41 +0000 (15:25 +0200)]
Add missing field init in constructors

Adds missing field initializations detected by Eclipse IDE.

Change-Id: I5f2f32bcccb12545fc9f0b42fcec74a23dc81376

8 years agoFix deoptimization with pending exception
Sebastien Hertz [Thu, 20 Aug 2015 10:07:57 +0000 (12:07 +0200)]
Fix deoptimization with pending exception

When deoptimizing the stack, we set a fake exception in the current
Thread* (see method Thread::GetDeoptimizationException). On the next
exception check, the QuickExceptionHandler will deoptimize the stack.

The issue is when we deoptimize while an exception is already pending
in the current Thread*: setting the fake exception will clobber the
pending exception which is not correct. This happens in the
artQuickToInterpreterBridge when returning from the interpreter and
we want to deoptimize the stack for debugging (like single-stepping).

This CL saves the pending exception before asking for deoptimization.
Then the exception is restored just before executing the deoptimized
frames with the interpreter.

Also cleans up the way we save deoptimization context (return value
and pending exception).

Bug: 23371176
Bug: 19944235
Change-Id: I7f4c8347b328817c452beda3399e210eba3a88a4

8 years agoam fe8e0455: am c9774838: Merge "Revert "Move annotations to native.""
Roland Levillain [Tue, 25 Aug 2015 12:20:33 +0000 (12:20 +0000)]
am fe8e0455: am c9774838: Merge "Revert "Move annotations to native.""

* commit 'fe8e04554ad3712a0a2b1a2e0d0e4a9fef469c25':
  Revert "Move annotations to native."

8 years agoam c9774838: Merge "Revert "Move annotations to native.""
Roland Levillain [Tue, 25 Aug 2015 12:13:04 +0000 (12:13 +0000)]
am c9774838: Merge "Revert "Move annotations to native.""

* commit 'c97748381468485535b11bfc8664c26385f4b715':
  Revert "Move annotations to native."

8 years agoMerge "Revert "Move annotations to native.""
Roland Levillain [Tue, 25 Aug 2015 12:07:47 +0000 (12:07 +0000)]
Merge "Revert "Move annotations to native.""

8 years agoRevert "Move annotations to native."
Roland Levillain [Tue, 25 Aug 2015 10:53:19 +0000 (10:53 +0000)]
Revert "Move annotations to native."

This reverts commit 0042c6d49b8488c78f0b937063e316e8d6244439.

Reverting this change (as well as the companion CL
https://android-review.googlesource.com/#/c/167510/ in
platform/libcore) as they make libcore test
libcore.java.lang.reflect.ProxyTest#test24846 fail.

Change-Id: Ie0676cabb128277c7df5dab7bde17aefd3b2c09c

8 years agoam fc509f70: am f0170ded: Merge "ART: Add VLOG printing of SetStatus(Error)"
Andreas Gampe [Tue, 25 Aug 2015 05:16:43 +0000 (05:16 +0000)]
am fc509f70: am f0170ded: Merge "ART: Add VLOG printing of SetStatus(Error)"

* commit 'fc509f70a21cbe1bab82359cc57aca6b9bff4938':
  ART: Add VLOG printing of SetStatus(Error)

8 years agoam f0170ded: Merge "ART: Add VLOG printing of SetStatus(Error)"
Andreas Gampe [Tue, 25 Aug 2015 05:11:11 +0000 (05:11 +0000)]
am f0170ded: Merge "ART: Add VLOG printing of SetStatus(Error)"

* commit 'f0170ded84fbcd3d9152cdbcf9ffbf74c71b03ba':
  ART: Add VLOG printing of SetStatus(Error)

8 years agoMerge "ART: Add VLOG printing of SetStatus(Error)"
Andreas Gampe [Tue, 25 Aug 2015 05:02:46 +0000 (05:02 +0000)]
Merge "ART: Add VLOG printing of SetStatus(Error)"

8 years agoART: Add VLOG printing of SetStatus(Error)
Andreas Gampe [Tue, 25 Aug 2015 04:09:05 +0000 (21:09 -0700)]
ART: Add VLOG printing of SetStatus(Error)

In verbose:class mode, print a message when a class is set to
erroneous, and dump any pending exception.

Change-Id: I2ebfe4fcd8495c3ff42675bd3c0f80125b23c019

8 years agoam cb3c9952: am dcff51a0: Merge "Revert "Do a second check for testing intrinsic...
Andreas Gampe [Mon, 24 Aug 2015 23:03:06 +0000 (23:03 +0000)]
am cb3c9952: am dcff51a0: Merge "Revert "Do a second check for testing intrinsic types.""

* commit 'cb3c9952c81cabedcf9f5460d03d3c62ed3b461c':
  Revert "Do a second check for testing intrinsic types."

8 years agoam dcff51a0: Merge "Revert "Do a second check for testing intrinsic types.""
Andreas Gampe [Mon, 24 Aug 2015 22:57:53 +0000 (22:57 +0000)]
am dcff51a0: Merge "Revert "Do a second check for testing intrinsic types.""

* commit 'dcff51a0079c5e3abaf0335f7cb9a3dd44044456':
  Revert "Do a second check for testing intrinsic types."

8 years agoMerge "Revert "Do a second check for testing intrinsic types.""
Andreas Gampe [Mon, 24 Aug 2015 22:50:51 +0000 (22:50 +0000)]
Merge "Revert "Do a second check for testing intrinsic types.""

8 years agoRevert "Do a second check for testing intrinsic types."
Andreas Gampe [Mon, 24 Aug 2015 22:49:59 +0000 (22:49 +0000)]
Revert "Do a second check for testing intrinsic types."

This reverts commit 4daa0b4c21eee46362b5114fb2c3800c0c7e7a36.

If the intrinsic has a slow-path, like charAt, the slow-path logic will complain as it only understands direct slow-paths, not virtual calls.

We should either override that decision in the slow-path, or replace the HInvokeVirtual when we're overriding the intrinsic choice.

Bug: 23475673
Change-Id: If55fbc8c82d52e0e7a7aec2674ae2bd2b74b5c77

8 years agoUpdate instrumentation stack after exception event
Sebastien Hertz [Mon, 24 Aug 2015 12:27:01 +0000 (14:27 +0200)]
Update instrumentation stack after exception event

If instrumentation is updated on an exception event, we must update
the instrumentation stack (to remove all frames that will be unwound
by the exception) before doing the long jump.

Bug: 23471864
Change-Id: Ic91552bb7280c54bcc58b7ba03a17040b0b0f5ef

8 years agoam 5a689007: am f7b12e7a: Merge "Move annotations to native."
Jeff Hao [Sat, 22 Aug 2015 00:36:25 +0000 (00:36 +0000)]
am 5a689007: am f7b12e7a: Merge "Move annotations to native."

* commit '5a689007668fbba43d34eea7cfa3c8cd2c2e21de':
  Move annotations to native.

8 years agoam f7b12e7a: Merge "Move annotations to native."
Jeff Hao [Sat, 22 Aug 2015 00:25:11 +0000 (00:25 +0000)]
am f7b12e7a: Merge "Move annotations to native."

* commit 'f7b12e7ae8f481f3fab27d1a17bded4b4f2ce423':
  Move annotations to native.

8 years agoMerge "Move annotations to native."
Jeff Hao [Sat, 22 Aug 2015 00:17:57 +0000 (00:17 +0000)]
Merge "Move annotations to native."

8 years agoMove annotations to native.
Jeff Hao [Thu, 30 Jul 2015 03:14:10 +0000 (20:14 -0700)]
Move annotations to native.

Art side of this change. There is also a corresponding Libcore change.

Seeing ~2-3x speedup over dalvik KK MR1 in AnnotatedElementBenchmark.
Benchmark  Speedup of Art AOSP to Dalvik KK MR1
GetAllReturnsLargeAnnotation  2.99
GetAllReturnsMarkerAnnotation  2.20
GetAllReturnsNoAnnotation  2.43
GetAllReturnsSmallAnnotation  2.52
GetAllReturnsThreeAnnotations  2.87
GetAnnotationsOnSubclass  2.42
GetDeclaredAnnotationsOnSubclass 2.49
GetFieldAnnotation  2.68
GetFieldAnnotations  2.60
GetMethodAnnotation  2.66
GetMethodAnnotations  2.61
GetParameterAnnotations  2.52
GetTypeAnnotation  2.56
GetTypeAnnotations  2.17
IsFieldAnnotationPresent  3.26
IsMethodAnnotationPresent  4.99
IsTypeAnnotationPresent  1.34

Change-Id: Ibdbb6d23b17eaab6e83c8774b1bb9401e8227941

8 years agoam ed8cf61b: am 2ee4589e: Merge "Correct for signal, native bridge test hard-coded...
Andreas Gampe [Fri, 21 Aug 2015 23:39:11 +0000 (23:39 +0000)]
am ed8cf61b: am 2ee4589e: Merge "Correct for signal, native bridge test hard-coded signal handling values"

* commit 'ed8cf61b841d40bdabd60f633b2c3ef036cb8f3a':
  Correct for signal, native bridge test hard-coded signal handling values

8 years agoam 2ee4589e: Merge "Correct for signal, native bridge test hard-coded signal handling...
Andreas Gampe [Fri, 21 Aug 2015 23:33:18 +0000 (23:33 +0000)]
am 2ee4589e: Merge "Correct for signal, native bridge test hard-coded signal handling values"

* commit '2ee4589ef330e341f7682833c896fb6ea4f18dea':
  Correct for signal, native bridge test hard-coded signal handling values

8 years agoMerge "Correct for signal, native bridge test hard-coded signal handling values"
Andreas Gampe [Fri, 21 Aug 2015 23:26:39 +0000 (23:26 +0000)]
Merge "Correct for signal, native bridge test hard-coded signal handling values"

8 years agoCorrect for signal, native bridge test hard-coded signal handling values
Agi Csaki [Fri, 21 Aug 2015 19:56:30 +0000 (12:56 -0700)]
Correct for signal, native bridge test hard-coded signal handling values

Added inline assembly to ensure that the instruction causing a segfault
in x86/x86_64 for the 004-SignalTest and 115-native-bridge test always
has a size of 3 bytes, in response to a bug that caused the test to fail
when this instruction had variable sizes.

Bug: 22876261
Change-Id: I474a04782a446439956c22360c71cea2655f8a1b

8 years agoam 3adb5b13: am 300432d2: Merge "Add class flags to class to help GC scanning"
Mathieu Chartier [Fri, 21 Aug 2015 22:25:37 +0000 (22:25 +0000)]
am 3adb5b13: am 300432d2: Merge "Add class flags to class to help GC scanning"

* commit '3adb5b13ea0512dfebee23b1b871b36396b3a8f0':
  Add class flags to class to help GC scanning

8 years agoam 300432d2: Merge "Add class flags to class to help GC scanning"
Mathieu Chartier [Fri, 21 Aug 2015 21:23:07 +0000 (21:23 +0000)]
am 300432d2: Merge "Add class flags to class to help GC scanning"

* commit '300432d27ba9dd6961458fb1e1c845766f25c50a':
  Add class flags to class to help GC scanning

8 years agoMerge "Add class flags to class to help GC scanning"
Mathieu Chartier [Fri, 21 Aug 2015 20:50:14 +0000 (20:50 +0000)]
Merge "Add class flags to class to help GC scanning"

8 years agoam 448ff4fb: am 879775bb: Merge "Revert "[MIPS] Use hard float calling convention...
Vladimir Marko [Fri, 21 Aug 2015 18:52:17 +0000 (18:52 +0000)]
am 448ff4fb: am 879775bb: Merge "Revert "[MIPS] Use hard float calling convention for managed code""

* commit '448ff4fba7b38c5eb846087bcf4375120854e73e':
  Revert "[MIPS] Use hard float calling convention for managed code"

8 years agoam 879775bb: Merge "Revert "[MIPS] Use hard float calling convention for managed...
Vladimir Marko [Fri, 21 Aug 2015 18:44:43 +0000 (18:44 +0000)]
am 879775bb: Merge "Revert "[MIPS] Use hard float calling convention for managed code""

* commit '879775bba4903a4d066df3ebeac5cd4faf7da3e4':
  Revert "[MIPS] Use hard float calling convention for managed code"

8 years agoMerge "Revert "[MIPS] Use hard float calling convention for managed code""
Vladimir Marko [Fri, 21 Aug 2015 18:39:54 +0000 (18:39 +0000)]
Merge "Revert "[MIPS] Use hard float calling convention for managed code""

8 years agoRevert "[MIPS] Use hard float calling convention for managed code"
Vladimir Marko [Fri, 21 Aug 2015 18:39:26 +0000 (18:39 +0000)]
Revert "[MIPS] Use hard float calling convention for managed code"

MipsMir2Lir::LockCallTemps() is broken for secondary architecture on aosp_mips64-eng.

This reverts commit a29449dcf57c57fe0876f51367985477317cc557.

Change-Id: I480ea7569d73aea7894fc0a6dd804b1135286a37

8 years agoam b049d1ab: am e74493cb: Merge "ART: Special form of lock aliasing"
Andreas Gampe [Fri, 21 Aug 2015 18:24:11 +0000 (18:24 +0000)]
am b049d1ab: am e74493cb: Merge "ART: Special form of lock aliasing"

* commit 'b049d1ab2e17b7b349a322f63e0944c13e92f9ae':
  ART: Special form of lock aliasing

8 years agoam 9ee7b6b4: am 24011e73: Merge "Made CheckJNI check varargs when possible"
Alex Light [Fri, 21 Aug 2015 18:23:35 +0000 (18:23 +0000)]
am 9ee7b6b4: am 24011e73: Merge "Made CheckJNI check varargs when possible"

* commit '9ee7b6b40aa25263e6b540773495456b1ac9f2ab':
  Made CheckJNI check varargs when possible

8 years agoam e74493cb: Merge "ART: Special form of lock aliasing"
Andreas Gampe [Fri, 21 Aug 2015 17:30:43 +0000 (17:30 +0000)]
am e74493cb: Merge "ART: Special form of lock aliasing"

* commit 'e74493cbc8f33bfd53b792f98f135d3db680f029':
  ART: Special form of lock aliasing

8 years agoAdd class flags to class to help GC scanning
Mathieu Chartier [Wed, 19 Aug 2015 01:35:52 +0000 (18:35 -0700)]
Add class flags to class to help GC scanning

Reduces GC time and pauses by reducing the number of loads required
to scan an object.

Average total GC time before on EvaluateAndApplyChanges (EAAC): 7.452s
After: 7.144s

Average GC pause times before on EAAC: 860.67us
After: 722.75us

Adding the class flags field cause a memory increase of ~24k system
wide on low memory devices.

Change-Id: I3f04212d5787bfbf5e55026584d149f55476105e

8 years agoMerge "ART: Special form of lock aliasing"
Andreas Gampe [Fri, 21 Aug 2015 17:24:14 +0000 (17:24 +0000)]
Merge "ART: Special form of lock aliasing"

8 years agoam 24011e73: Merge "Made CheckJNI check varargs when possible"
Alex Light [Fri, 21 Aug 2015 17:17:16 +0000 (17:17 +0000)]
am 24011e73: Merge "Made CheckJNI check varargs when possible"

* commit '24011e738d77dedb28c1b4d6ff34445cc2acc4a7':
  Made CheckJNI check varargs when possible

8 years agoMerge "Made CheckJNI check varargs when possible"
Alex Light [Fri, 21 Aug 2015 15:43:37 +0000 (15:43 +0000)]
Merge "Made CheckJNI check varargs when possible"

8 years agoam 9d7fc8d0: am df3269a9: Merge "Stop framework on buildbot devices to avoid lowmemor...
Nicolas Geoffray [Fri, 21 Aug 2015 14:52:17 +0000 (14:52 +0000)]
am 9d7fc8d0: am df3269a9: Merge "Stop framework on buildbot devices to avoid lowmemorykiller."

* commit '9d7fc8d0191bae558821454e554b6b1eb46ffb46':
  Stop framework on buildbot devices to avoid lowmemorykiller.

8 years agoam df3269a9: Merge "Stop framework on buildbot devices to avoid lowmemorykiller."
Nicolas Geoffray [Fri, 21 Aug 2015 14:46:55 +0000 (14:46 +0000)]
am df3269a9: Merge "Stop framework on buildbot devices to avoid lowmemorykiller."

* commit 'df3269a9681b5b75d7b3088652428d86a6cc8485':
  Stop framework on buildbot devices to avoid lowmemorykiller.

8 years agoMerge "Stop framework on buildbot devices to avoid lowmemorykiller."
Nicolas Geoffray [Fri, 21 Aug 2015 14:40:47 +0000 (14:40 +0000)]
Merge "Stop framework on buildbot devices to avoid lowmemorykiller."

8 years agoam 1d7219c1: am 3979bdf4: Merge "Fix TrySplitNonPairOrUnalignedPairIntervalAt."
Nicolas Geoffray [Fri, 21 Aug 2015 14:37:11 +0000 (14:37 +0000)]
am 1d7219c1: am 3979bdf4: Merge "Fix TrySplitNonPairOrUnalignedPairIntervalAt."

* commit '1d7219c1733608db7584f4f0ac434a567b7d9110':
  Fix TrySplitNonPairOrUnalignedPairIntervalAt.

8 years agoStop framework on buildbot devices to avoid lowmemorykiller.
Nicolas Geoffray [Fri, 21 Aug 2015 14:32:35 +0000 (15:32 +0100)]
Stop framework on buildbot devices to avoid lowmemorykiller.

Change-Id: If7fa58f9bcb67b90cc2473daa280c3c7d0f0f513

8 years agoam 3979bdf4: Merge "Fix TrySplitNonPairOrUnalignedPairIntervalAt."
Nicolas Geoffray [Fri, 21 Aug 2015 14:30:49 +0000 (14:30 +0000)]
am 3979bdf4: Merge "Fix TrySplitNonPairOrUnalignedPairIntervalAt."

* commit '3979bdf446b425e69171db58789819e26542f79d':
  Fix TrySplitNonPairOrUnalignedPairIntervalAt.

8 years agoMerge "Fix TrySplitNonPairOrUnalignedPairIntervalAt."
Nicolas Geoffray [Fri, 21 Aug 2015 14:25:23 +0000 (14:25 +0000)]
Merge "Fix TrySplitNonPairOrUnalignedPairIntervalAt."

8 years agoFix TrySplitNonPairOrUnalignedPairIntervalAt.
Nicolas Geoffray [Thu, 20 Aug 2015 18:52:26 +0000 (19:52 +0100)]
Fix TrySplitNonPairOrUnalignedPairIntervalAt.

We need to both:
1) Look at pair that don't start at an even register.
2) Also remove the other half from the list of actives.

Change-Id: Ia99fa9852c67b8633e8d17a258fe302add54b14a

8 years agoam d45be7d8: am e75ffdfe: Merge "[MIPS] Use hard float calling convention for managed...
Vladimir Marko [Fri, 21 Aug 2015 13:44:53 +0000 (13:44 +0000)]
am d45be7d8: am e75ffdfe: Merge "[MIPS] Use hard float calling convention for managed code"

* commit 'd45be7d8e8a68e079adbf9808feed59600871733':
  [MIPS] Use hard float calling convention for managed code

8 years agoam e75ffdfe: Merge "[MIPS] Use hard float calling convention for managed code"
Vladimir Marko [Fri, 21 Aug 2015 13:36:53 +0000 (13:36 +0000)]
am e75ffdfe: Merge "[MIPS] Use hard float calling convention for managed code"

* commit 'e75ffdfe3fbd4253bf1ffd48350b7f6472500c30':
  [MIPS] Use hard float calling convention for managed code

8 years agoMerge "[MIPS] Use hard float calling convention for managed code"
Vladimir Marko [Fri, 21 Aug 2015 13:31:49 +0000 (13:31 +0000)]
Merge "[MIPS] Use hard float calling convention for managed code"

8 years ago[MIPS] Use hard float calling convention for managed code
Goran Jakovljevic [Wed, 22 Jul 2015 09:08:57 +0000 (11:08 +0200)]
[MIPS] Use hard float calling convention for managed code

Note that this isn't o32 ABI. Same set of registers is used for
arguments ($a0-$a3 and $f12-$f15), but we don't skip registers
and fp arguments are never passed via core registers.

Change-Id: Ifb883ff6e15758b539137898b49ac2f8ee075f49

8 years agoam 6f26f42b: am 28de0f65: Merge "Do a second check for testing intrinsic types."
Nicolas Geoffray [Fri, 21 Aug 2015 10:21:25 +0000 (10:21 +0000)]
am 6f26f42b: am 28de0f65: Merge "Do a second check for testing intrinsic types."

* commit '6f26f42b048edbcc99a28110dffb22c6ee87bb81':
  Do a second check for testing intrinsic types.

8 years agoam 28de0f65: Merge "Do a second check for testing intrinsic types."
Nicolas Geoffray [Fri, 21 Aug 2015 10:14:50 +0000 (10:14 +0000)]
am 28de0f65: Merge "Do a second check for testing intrinsic types."

* commit '28de0f652e32e112edab0e5e7dc779943ae488d5':
  Do a second check for testing intrinsic types.

8 years agoMerge "Do a second check for testing intrinsic types."
Nicolas Geoffray [Fri, 21 Aug 2015 10:06:20 +0000 (10:06 +0000)]
Merge "Do a second check for testing intrinsic types."

8 years agoDo a second check for testing intrinsic types.
Nicolas Geoffray [Thu, 20 Aug 2015 13:05:14 +0000 (14:05 +0100)]
Do a second check for testing intrinsic types.

This allows to intrinsify calls made in a different dex file.

Can't easily write a test because it depends on having inlined
a method from boot classpath that calls an intrinsic. Once
String.equals is implemented with the hybrid approach we can write one.

Change-Id: I591d9496e236429943d6bfa7f8b20f576b1cfb9a

8 years agoART: Special form of lock aliasing
Andreas Gampe [Tue, 18 Aug 2015 15:57:44 +0000 (08:57 -0700)]
ART: Special form of lock aliasing

Check whether the instruction immediately before a monitor-enter
is a move-object, establishing previously untracked lock aliasing
in a low-overhead manner.

Bug: 20102779
Bug: 21169615
Bug: 21988678
Bug: 23300986
Change-Id: Ia10d6219357e7bce29f58134637b07d3f4857b2f

8 years agoam e417ffa7: am 6bd6a830: Merge "ART: (Partially) fix lock aliasing"
Andreas Gampe [Thu, 20 Aug 2015 23:15:43 +0000 (23:15 +0000)]
am e417ffa7: am 6bd6a830: Merge "ART: (Partially) fix lock aliasing"

* commit 'e417ffa7949dfcacb13785cb6d4cff1317b2c429':
  ART: (Partially) fix lock aliasing

8 years agoam 6bd6a830: Merge "ART: (Partially) fix lock aliasing"
Andreas Gampe [Thu, 20 Aug 2015 22:57:42 +0000 (22:57 +0000)]
am 6bd6a830: Merge "ART: (Partially) fix lock aliasing"

* commit '6bd6a830f24033830a910f88928b400a7ed28418':
  ART: (Partially) fix lock aliasing

8 years agoMerge "ART: (Partially) fix lock aliasing"
Andreas Gampe [Thu, 20 Aug 2015 22:52:44 +0000 (22:52 +0000)]
Merge "ART: (Partially) fix lock aliasing"

8 years agoMade CheckJNI check varargs when possible
Alex Light [Wed, 19 Aug 2015 22:23:23 +0000 (15:23 -0700)]
Made CheckJNI check varargs when possible

Several JNI functions such as NewObject and Call*Method take a variable
number of arguments. This patch will make CheckJNI do (limited) dynamic
validation of these arguments. Currently it is limited to checking that
objects are valid and that no value types have illegal values.

Bug: 20344596
Change-Id: I1f81d2bdd80215e0007fc636bac27d5bcc2dba96

8 years agoam 9c8f4aee: am 944973e5: Merge "Add a `--showcommands` option to ART\'s buildbot...
Roland Levillain [Thu, 20 Aug 2015 17:10:07 +0000 (17:10 +0000)]
am 9c8f4aee: am 944973e5: Merge "Add a `--showcommands` option to ART\'s buildbot-build.sh."

* commit '9c8f4aee2c707d101365c7f7453db8764ba6652f':
  Add a `--showcommands` option to ART's buildbot-build.sh.

8 years agoam 944973e5: Merge "Add a `--showcommands` option to ART\'s buildbot-build.sh."
Roland Levillain [Thu, 20 Aug 2015 17:02:57 +0000 (17:02 +0000)]
am 944973e5: Merge "Add a `--showcommands` option to ART\'s buildbot-build.sh."

* commit '944973e56fd3c04c92d902b05d0148f77ed28a78':
  Add a `--showcommands` option to ART's buildbot-build.sh.

8 years agoMerge "Add a `--showcommands` option to ART's buildbot-build.sh."
Roland Levillain [Thu, 20 Aug 2015 16:57:28 +0000 (16:57 +0000)]
Merge "Add a `--showcommands` option to ART's buildbot-build.sh."

8 years agoAdd a `--showcommands` option to ART's buildbot-build.sh.
Roland Levillain [Thu, 20 Aug 2015 16:49:56 +0000 (17:49 +0100)]
Add a `--showcommands` option to ART's buildbot-build.sh.

Change-Id: Ib562a02b2f96dd5abd580ae751d5d86749144bf3

8 years agoam 80ddbd8f: am 113af44c: Merge "Fix indentation in reference type propagation"
David Brazdil [Thu, 20 Aug 2015 16:44:43 +0000 (16:44 +0000)]
am 80ddbd8f: am 113af44c: Merge "Fix indentation in reference type propagation"

* commit '80ddbd8f60e72da1d28475dde767498e09ee4bf5':
  Fix indentation in reference type propagation

8 years agoam 113af44c: Merge "Fix indentation in reference type propagation"
David Brazdil [Thu, 20 Aug 2015 16:22:55 +0000 (16:22 +0000)]
am 113af44c: Merge "Fix indentation in reference type propagation"

* commit '113af44c238625500ec5b999a9990f39519e2ae2':
  Fix indentation in reference type propagation

8 years agoam 5ce9ec28: am a05264c1: Merge "ARM64: Minor optimization for conversions from long...
Roland Levillain [Thu, 20 Aug 2015 16:22:07 +0000 (16:22 +0000)]
am 5ce9ec28: am a05264c1: Merge "ARM64: Minor optimization for conversions from long to int."

* commit '5ce9ec2892b0e34c4697c256e8c57523ed7bfefa':
  ARM64: Minor optimization for conversions from long to int.

8 years agoam 67120f96: am 1d4a598e: Merge "Fix formatting comment in Checker"
David Brazdil [Thu, 20 Aug 2015 16:18:09 +0000 (16:18 +0000)]
am 67120f96: am 1d4a598e: Merge "Fix formatting comment in Checker"

* commit '67120f966354d9d50d4f9b7890655bfbfe80ded3':
  Fix formatting comment in Checker

8 years agoMerge "Fix indentation in reference type propagation"
David Brazdil [Thu, 20 Aug 2015 16:16:52 +0000 (16:16 +0000)]
Merge "Fix indentation in reference type propagation"

8 years agoam a05264c1: Merge "ARM64: Minor optimization for conversions from long to int."
Roland Levillain [Thu, 20 Aug 2015 16:16:47 +0000 (16:16 +0000)]
am a05264c1: Merge "ARM64: Minor optimization for conversions from long to int."

* commit 'a05264c142526f74af0cf45e643f7b07500431d8':
  ARM64: Minor optimization for conversions from long to int.

8 years agoMerge "ARM64: Minor optimization for conversions from long to int."
Roland Levillain [Thu, 20 Aug 2015 16:11:31 +0000 (16:11 +0000)]
Merge "ARM64: Minor optimization for conversions from long to int."

8 years agoam 1d4a598e: Merge "Fix formatting comment in Checker"
David Brazdil [Thu, 20 Aug 2015 16:10:50 +0000 (16:10 +0000)]
am 1d4a598e: Merge "Fix formatting comment in Checker"

* commit '1d4a598ed12d86934ceb5e6fd79f80f974f3f23f':
  Fix formatting comment in Checker

8 years agoFix indentation in reference type propagation
David Brazdil [Thu, 20 Aug 2015 16:05:49 +0000 (17:05 +0100)]
Fix indentation in reference type propagation

Change-Id: I5860c4fef55326ac2b510e3e34c4541b691794e0