OSDN Git Service

android-x86/art.git
8 years agoam 48215e2e: Merge "Revert "Revert "Use the object class as top in reference type...
Calin Juravle [Tue, 28 Jul 2015 10:54:52 +0000 (10:54 +0000)]
am 48215e2e: Merge "Revert "Revert "Use the object class as top in reference type propagation"""

* commit '48215e2e9b519682555d33fe695e894d601d7647':
  Revert "Revert "Use the object class as top in reference type propagation""

8 years agoam 5716a1f0: Merge "Revert "Revert "Fixes and improvements in ReferenceTypePropagation"""
Calin Juravle [Tue, 28 Jul 2015 10:54:51 +0000 (10:54 +0000)]
am 5716a1f0: Merge "Revert "Revert "Fixes and improvements in ReferenceTypePropagation"""

* commit '5716a1f07380eb3d6e6a47b6589bcfe78b93be0f':
  Revert "Revert "Fixes and improvements in ReferenceTypePropagation""

8 years agoMerge "Revert "Revert "Use the object class as top in reference type propagation"""
Calin Juravle [Tue, 28 Jul 2015 10:44:36 +0000 (10:44 +0000)]
Merge "Revert "Revert "Use the object class as top in reference type propagation"""

8 years agoMerge "Revert "Revert "Fixes and improvements in ReferenceTypePropagation"""
Calin Juravle [Tue, 28 Jul 2015 10:44:27 +0000 (10:44 +0000)]
Merge "Revert "Revert "Fixes and improvements in ReferenceTypePropagation"""

8 years agoam 9af8d8dd: Merge "Added repe_cmpsw instruction to x86, x86_64 assemblers"
Roland Levillain [Tue, 28 Jul 2015 10:19:00 +0000 (10:19 +0000)]
am 9af8d8dd: Merge "Added repe_cmpsw instruction to x86, x86_64 assemblers"

* commit '9af8d8dd02d7fb4902cda5167217b8687fe3f86a':
  Added repe_cmpsw instruction to x86, x86_64 assemblers

8 years agoMerge "Added repe_cmpsw instruction to x86, x86_64 assemblers"
Roland Levillain [Tue, 28 Jul 2015 10:11:04 +0000 (10:11 +0000)]
Merge "Added repe_cmpsw instruction to x86, x86_64 assemblers"

8 years agoam 73961d95: Merge "Add remembered set functionality for native roots"
Mathieu Chartier [Mon, 27 Jul 2015 23:26:50 +0000 (23:26 +0000)]
am 73961d95: Merge "Add remembered set functionality for native roots"

* commit '73961d95f2bfa9d0fbc8980cdd4aef8aeed84e1d':
  Add remembered set functionality for native roots

8 years agoam 6e67b579: Merge "Bugfix: Java char is 16 bits, can not be treated as boolean."
Mathieu Chartier [Mon, 27 Jul 2015 23:26:48 +0000 (23:26 +0000)]
am 6e67b579: Merge "Bugfix: Java char is 16 bits, can not be treated as boolean."

* commit '6e67b5797f7c57281faa72dab08319d0ced7302e':
  Bugfix: Java char is 16 bits, can not be treated as boolean.

8 years agoMerge "Add remembered set functionality for native roots"
Mathieu Chartier [Mon, 27 Jul 2015 23:19:31 +0000 (23:19 +0000)]
Merge "Add remembered set functionality for native roots"

8 years agoAdd remembered set functionality for native roots
Mathieu Chartier [Mon, 27 Jul 2015 23:08:02 +0000 (16:08 -0700)]
Add remembered set functionality for native roots

Fixes GSS tests. The issue was that there could be classes which had
native roots in the target space which we need to mark and update.

Change-Id: I33e628d40bcb74f768492f740f8f084077d80edf

8 years agoMerge "Bugfix: Java char is 16 bits, can not be treated as boolean."
Mathieu Chartier [Mon, 27 Jul 2015 23:15:59 +0000 (23:15 +0000)]
Merge "Bugfix: Java char is 16 bits, can not be treated as boolean."

8 years agoBugfix: Java char is 16 bits, can not be treated as boolean.
Fredrik Roubert [Mon, 27 Jul 2015 22:14:08 +0000 (00:14 +0200)]
Bugfix: Java char is 16 bits, can not be treated as boolean.

Using SetFieldBooleanVolatile() and SetFieldBoolean() happens to work
for char values that only use the lower 8 bits, but is a mistake that
was introduced by the "Add AccessibleObject and Field to mirror" commit:

https://android.googlesource.com/platform/art/+/daaf326

Change-Id: Iec02ba3084c992ea239ecef688d7d29c7e21ae16

8 years agoAdded repe_cmpsw instruction to x86, x86_64 assemblers
agicsaki [Mon, 27 Jul 2015 18:34:13 +0000 (11:34 -0700)]
Added repe_cmpsw instruction to x86, x86_64 assemblers

Change-Id: I7634959eebb64d607f47497db320d5c2afdef16b

8 years agoam 41bad0ef: Merge "HDeoptimize should hold values live in env."
Mingyao Yang [Mon, 27 Jul 2015 20:33:16 +0000 (20:33 +0000)]
am 41bad0ef: Merge "HDeoptimize should hold values live in env."

* commit '41bad0ef883c96cd9befa1b9be5ac1a6cdf282fd':
  HDeoptimize should hold values live in env.

8 years agoam 9578d10b: Merge "Add checker ability to 525-arrays-and-fields tests."
Aart Bik [Mon, 27 Jul 2015 20:33:14 +0000 (20:33 +0000)]
am 9578d10b: Merge "Add checker ability to 525-arrays-and-fields tests."

* commit '9578d10b5866bfab63cc4218ec5ab3f6dd10c8ce':
  Add checker ability to 525-arrays-and-fields tests.

8 years agoMerge "HDeoptimize should hold values live in env."
Mingyao Yang [Mon, 27 Jul 2015 20:20:01 +0000 (20:20 +0000)]
Merge "HDeoptimize should hold values live in env."

8 years agoRevert "Revert "Use the object class as top in reference type propagation""
Calin Juravle [Thu, 16 Jul 2015 15:51:30 +0000 (16:51 +0100)]
Revert "Revert "Use the object class as top in reference type propagation""

This reverts commit 7733bd644ac71f86d4b30a319624b23343882e53.

Change-Id: I7d393a808c01c084c18d632a54e0554b4b455f2c

8 years agoRevert "Revert "Fixes and improvements in ReferenceTypePropagation""
Calin Juravle [Wed, 15 Jul 2015 13:41:29 +0000 (14:41 +0100)]
Revert "Revert "Fixes and improvements in ReferenceTypePropagation""

This reverts commit 9b0096ba77e7e61bc2dcbbf954831dcae54a6c27.

Change-Id: I824f16e800ca32e646577d5e1e0d593887ccead1

8 years agoHDeoptimize should hold values live in env.
Mingyao Yang [Wed, 22 Jul 2015 22:56:34 +0000 (15:56 -0700)]
HDeoptimize should hold values live in env.

Values that are not live in compiled code anymore may still be needed in
interpreter, due to code motion, etc.

Bug: 22665511
Change-Id: I8b85833c5c462f8fe36f86d6026a51b07563995a

8 years agoMerge "Add checker ability to 525-arrays-and-fields tests."
Aart Bik [Mon, 27 Jul 2015 16:34:39 +0000 (16:34 +0000)]
Merge "Add checker ability to 525-arrays-and-fields tests."

8 years agoam 35dfc983: Merge "Exercise constant folding of int & long mul, div and rem."
Roland Levillain [Mon, 27 Jul 2015 15:42:49 +0000 (15:42 +0000)]
am 35dfc983: Merge "Exercise constant folding of int & long mul, div and rem."

* commit '35dfc983581b28e1b5db8061f7d1940e878d3f1a':
  Exercise constant folding of int & long mul, div and rem.

8 years agoam 87bada67: Merge "Cosmetic changes in ART run-tests."
Roland Levillain [Mon, 27 Jul 2015 15:42:47 +0000 (15:42 +0000)]
am 87bada67: Merge "Cosmetic changes in ART run-tests."

* commit '87bada67022b877273e7aaf09546af7aa35238ff':
  Cosmetic changes in ART run-tests.

8 years agoam ee1e8987: Merge "Fix & add Checker assertions in 442-checker-constant-folding."
Roland Levillain [Mon, 27 Jul 2015 15:42:45 +0000 (15:42 +0000)]
am ee1e8987: Merge "Fix & add Checker assertions in 442-checker-constant-folding."

* commit 'ee1e8987a862b9c1ae1533c04162e42dbf23b964':
  Fix & add Checker assertions in 442-checker-constant-folding.

8 years agoMerge "Exercise constant folding of int & long mul, div and rem."
Roland Levillain [Mon, 27 Jul 2015 15:31:51 +0000 (15:31 +0000)]
Merge "Exercise constant folding of int & long mul, div and rem."

8 years agoMerge "Cosmetic changes in ART run-tests."
Roland Levillain [Mon, 27 Jul 2015 15:29:58 +0000 (15:29 +0000)]
Merge "Cosmetic changes in ART run-tests."

8 years agoMerge "Fix & add Checker assertions in 442-checker-constant-folding."
Roland Levillain [Mon, 27 Jul 2015 15:28:20 +0000 (15:28 +0000)]
Merge "Fix & add Checker assertions in 442-checker-constant-folding."

8 years agoExercise constant folding of int & long mul, div and rem.
Roland Levillain [Wed, 22 Jul 2015 13:12:01 +0000 (14:12 +0100)]
Exercise constant folding of int & long mul, div and rem.

Change-Id: Ic70b56dbcb4a660a4c8ca04f7b2b5201ad29952a

8 years agoCosmetic changes in ART run-tests.
Roland Levillain [Thu, 23 Jul 2015 11:15:01 +0000 (12:15 +0100)]
Cosmetic changes in ART run-tests.

Perform a copyright headers clean up mostly.

Change-Id: I26c855b2f54d0887676d9b9b8281b14b7978ab29

8 years agoFix & add Checker assertions in 442-checker-constant-folding.
Roland Levillain [Thu, 23 Jul 2015 11:11:42 +0000 (12:11 +0100)]
Fix & add Checker assertions in 442-checker-constant-folding.

Change-Id: Id4165b14816c04961d5c274f24861d0e7856d95e

8 years agoam 0fae2f58: Merge "Enable art host static builds only for checkbuilds."
Calin Juravle [Mon, 27 Jul 2015 10:49:11 +0000 (10:49 +0000)]
am 0fae2f58: Merge "Enable art host static builds only for checkbuilds."

* commit '0fae2f5851dd79c4100134a92f997b2e7a520083':
  Enable art host static builds only for checkbuilds.

8 years agoMerge "Enable art host static builds only for checkbuilds."
Calin Juravle [Mon, 27 Jul 2015 10:39:13 +0000 (10:39 +0000)]
Merge "Enable art host static builds only for checkbuilds."

8 years agoam 939e702b: Merge "ART: Abbreviate interpreter-access-checks"
Andreas Gampe [Sun, 26 Jul 2015 17:43:01 +0000 (17:43 +0000)]
am 939e702b: Merge "ART: Abbreviate interpreter-access-checks"

* commit '939e702be62b059250f0e810f6bdd299186a08a0':
  ART: Abbreviate interpreter-access-checks

8 years agoMerge "ART: Abbreviate interpreter-access-checks"
Andreas Gampe [Sun, 26 Jul 2015 17:31:59 +0000 (17:31 +0000)]
Merge "ART: Abbreviate interpreter-access-checks"

8 years agoART: Abbreviate interpreter-access-checks
Andreas Gampe [Sun, 26 Jul 2015 17:26:03 +0000 (10:26 -0700)]
ART: Abbreviate interpreter-access-checks

Tag is too long.

Change-Id: I49febb97cec1172bcf06438fe8e0605f266e3fde

8 years agoam a09d5df5: Merge "Fix gcstress tests"
Mathieu Chartier [Fri, 24 Jul 2015 23:30:50 +0000 (23:30 +0000)]
am a09d5df5: Merge "Fix gcstress tests"

* commit 'a09d5df5128c5c51226028d4a82ed461cf993024':
  Fix gcstress tests

8 years agoMerge "Fix gcstress tests"
Mathieu Chartier [Fri, 24 Jul 2015 23:17:16 +0000 (23:17 +0000)]
Merge "Fix gcstress tests"

8 years agoFix gcstress tests
Mathieu Chartier [Fri, 24 Jul 2015 23:05:55 +0000 (16:05 -0700)]
Fix gcstress tests

We may visit the native roots multiple times (e.g. temp classes).
This used to not be handled by the SS GC but is now handle by
MarkObjectIfNotInToSpace.

Change-Id: I18226e20b36ace41c155ba4c3f54eac2244f524c

8 years agoam 34e1ed2f: Merge "ART: Make warnings into errors in InitZygote"
Andreas Gampe [Fri, 24 Jul 2015 23:08:58 +0000 (23:08 +0000)]
am 34e1ed2f: Merge "ART: Make warnings into errors in InitZygote"

* commit '34e1ed2ff52b4a3a1115b6ad467d6978d2b489a3':
  ART: Make warnings into errors in InitZygote

8 years agoMerge "ART: Make warnings into errors in InitZygote"
Andreas Gampe [Fri, 24 Jul 2015 22:56:43 +0000 (22:56 +0000)]
Merge "ART: Make warnings into errors in InitZygote"

8 years agoART: Make warnings into errors in InitZygote
Andreas Gampe [Fri, 24 Jul 2015 22:41:20 +0000 (15:41 -0700)]
ART: Make warnings into errors in InitZygote

These warnings are actual errors and lead to failure to start the
runtime. Print them accordingly.

Change-Id: I907e32a3c5da5364ecc9678bb9a11604234d669c

8 years agoam e3ab2a7d: Merge "ART: Change the stack dump format to be in line with debuggerd"
Andreas Gampe [Fri, 24 Jul 2015 22:40:50 +0000 (22:40 +0000)]
am e3ab2a7d: Merge "ART: Change the stack dump format to be in line with debuggerd"

* commit 'e3ab2a7dc3ff7ef0da6a82de7387470fb67695d0':
  ART: Change the stack dump format to be in line with debuggerd

8 years agoMerge "ART: Change the stack dump format to be in line with debuggerd"
Andreas Gampe [Fri, 24 Jul 2015 22:25:01 +0000 (22:25 +0000)]
Merge "ART: Change the stack dump format to be in line with debuggerd"

8 years agoam 8f3402e7: Merge "Revert "runtest: Have gcstress tests skip 955-lambda-smali""
Igor Murashkin [Fri, 24 Jul 2015 22:17:53 +0000 (22:17 +0000)]
am 8f3402e7: Merge "Revert "runtest: Have gcstress tests skip 955-lambda-smali""

* commit '8f3402e70bfdd1f768ccfe7614184f71fd8e7d19':
  Revert "runtest: Have gcstress tests skip 955-lambda-smali"

8 years agoART: Change the stack dump format to be in line with debuggerd
Andreas Gampe [Thu, 23 Jul 2015 21:37:18 +0000 (14:37 -0700)]
ART: Change the stack dump format to be in line with debuggerd

Make offsets 16 digits on 64-bit platforms.

Add the ability to provide the build fingerprint, and print it in
the traces output.

Bug: 22693991

(cherry picked from commit 242ae94dc39be53e519a6163ea1db494ceb75954)

Change-Id: Ibd3d3b3bd65dce84acfb97a487807d6f280a9508

8 years agoMerge "Revert "runtest: Have gcstress tests skip 955-lambda-smali""
Igor Murashkin [Fri, 24 Jul 2015 22:01:21 +0000 (22:01 +0000)]
Merge "Revert "runtest: Have gcstress tests skip 955-lambda-smali""

8 years agoRevert "runtest: Have gcstress tests skip 955-lambda-smali"
Igor Murashkin [Fri, 24 Jul 2015 21:43:26 +0000 (14:43 -0700)]
Revert "runtest: Have gcstress tests skip 955-lambda-smali"

This reverts commit ef3119e6c75c431d9cf54e92dfe5b805597b1657.

8 years agoam 0fc01dd3: Merge "Visit class native roots from VisitReferences"
Mathieu Chartier [Fri, 24 Jul 2015 19:09:23 +0000 (19:09 +0000)]
am 0fc01dd3: Merge "Visit class native roots from VisitReferences"

* commit '0fc01dd3725792a190f4c97cbdfefd2733b76e21':
  Visit class native roots from VisitReferences

8 years agoMerge "Visit class native roots from VisitReferences"
Mathieu Chartier [Fri, 24 Jul 2015 18:58:57 +0000 (18:58 +0000)]
Merge "Visit class native roots from VisitReferences"

8 years agoVisit class native roots from VisitReferences
Mathieu Chartier [Thu, 23 Jul 2015 23:01:26 +0000 (16:01 -0700)]
Visit class native roots from VisitReferences

Visit class roots when we call Class::VisitReferences instead of in
the class linker. This makes it easier to implement class unloading
since unmarked classes won't have their roots visited by the class
linker.

Bug: 22181835
Change-Id: I63f31e5ebef7b2a0b764b3ba3cb038b3f561b379

8 years agoAdd checker ability to 525-arrays-and-fields tests.
Aart Bik [Thu, 23 Jul 2015 21:15:22 +0000 (14:15 -0700)]
Add checker ability to 525-arrays-and-fields tests.

Rationale:
Good to verify hoisting occurs and even some
not-hoisting (although the latter is already
reflected in the computed results).

Change-Id: I23575e4fd480836b436b1f27f67e561c7b40419d

8 years agoEnable art host static builds only for checkbuilds.
Calin Juravle [Fri, 24 Jul 2015 15:45:26 +0000 (16:45 +0100)]
Enable art host static builds only for checkbuilds.

Change-Id: I42cc850089a5ecbcc201699f0b996da4fd959bb3

8 years agoam 2a7ea34c: Merge "Add some more uninterruptible annotations"
Mathieu Chartier [Thu, 23 Jul 2015 22:04:51 +0000 (22:04 +0000)]
am 2a7ea34c: Merge "Add some more uninterruptible annotations"

* commit '2a7ea34cda9bf776339dfc7f4a22ab01f9525f2d':
  Add some more uninterruptible annotations

8 years agoMerge "Add some more uninterruptible annotations"
Mathieu Chartier [Thu, 23 Jul 2015 21:56:01 +0000 (21:56 +0000)]
Merge "Add some more uninterruptible annotations"

8 years agoAdd some more uninterruptible annotations
Mathieu Chartier [Thu, 23 Jul 2015 21:11:16 +0000 (14:11 -0700)]
Add some more uninterruptible annotations

Added to mirror sites, class linker, and intern table.

Bug: 20072211
Change-Id: I2224bcefefaab05d325f14844b1514e3d719e649

8 years agoam 20cd654b: Merge "Fix alignments in quick_entrypoints_x86_64.S"
Mathieu Chartier [Thu, 23 Jul 2015 19:08:17 +0000 (19:08 +0000)]
am 20cd654b: Merge "Fix alignments in quick_entrypoints_x86_64.S"

* commit '20cd654b84404af22aa0ac12b3952a317393b2d5':
  Fix alignments in quick_entrypoints_x86_64.S

8 years agoMerge "Fix alignments in quick_entrypoints_x86_64.S"
Mathieu Chartier [Thu, 23 Jul 2015 18:59:17 +0000 (18:59 +0000)]
Merge "Fix alignments in quick_entrypoints_x86_64.S"

8 years agoam f7efc9ef: Merge "ART: Fix Quick/Optimizing suspend check assumption mismatch."
Vladimir Marko [Thu, 23 Jul 2015 18:37:19 +0000 (18:37 +0000)]
am f7efc9ef: Merge "ART: Fix Quick/Optimizing suspend check assumption mismatch."

* commit 'f7efc9ef90c38212f8c4fbece99080f784a53181':
  ART: Fix Quick/Optimizing suspend check assumption mismatch.

8 years agoam bea4eb4b: Merge "Disable Checker for tests that don\'t invoke the compiler."
David Brazdil [Thu, 23 Jul 2015 18:37:17 +0000 (18:37 +0000)]
am bea4eb4b: Merge "Disable Checker for tests that don\'t invoke the compiler."

* commit 'bea4eb4b29aa1030aa1919dfedaa95aea2599b7a':
  Disable Checker for tests that don't invoke the compiler.

8 years agoam bd76db36: Merge "Fix and extend the documentation of art::Thread\'s fields offsets."
Roland Levillain [Thu, 23 Jul 2015 18:37:16 +0000 (18:37 +0000)]
am bd76db36: Merge "Fix and extend the documentation of art::Thread\'s fields offsets."

* commit 'bd76db36abc1026cdc3f737ec0f2be6174a131a1':
  Fix and extend the documentation of art::Thread's fields offsets.

8 years agoam 195fa34d: Merge "ART: Fix missing role definition"
Andreas Gampe [Thu, 23 Jul 2015 18:37:14 +0000 (18:37 +0000)]
am 195fa34d: Merge "ART: Fix missing role definition"

* commit '195fa34db058b12c0f53f49ded482fd28d73d7d2':
  ART: Fix missing role definition

8 years agoam d59f0b19: Merge "Fix hash set memory leaks"
Mathieu Chartier [Thu, 23 Jul 2015 18:37:12 +0000 (18:37 +0000)]
am d59f0b19: Merge "Fix hash set memory leaks"

* commit 'd59f0b198ae5a0bf2cc4d2f9cadbe51ebf14277e':
  Fix hash set memory leaks

8 years agoam 3c9c7760: Merge "Add uninterruptible role"
Mathieu Chartier [Thu, 23 Jul 2015 18:37:11 +0000 (18:37 +0000)]
am 3c9c7760: Merge "Add uninterruptible role"

* commit '3c9c776017cd628d594fda0943634f2bdcc980b8':
  Add uninterruptible role

8 years agoam f64914d7: Merge "Move to newer clang annotations"
Mathieu Chartier [Thu, 23 Jul 2015 18:37:09 +0000 (18:37 +0000)]
am f64914d7: Merge "Move to newer clang annotations"

* commit 'f64914d7392b7d35c7f35bc917b0797b9c4605ac':
  Move to newer clang annotations

8 years agoam fab0712a: Merge "runtest: Have gcstress tests skip 955-lambda-smali"
Igor Murashkin [Thu, 23 Jul 2015 18:37:07 +0000 (18:37 +0000)]
am fab0712a: Merge "runtest: Have gcstress tests skip 955-lambda-smali"

* commit 'fab0712a178670949c909f55486648c425add463':
  runtest: Have gcstress tests skip 955-lambda-smali

8 years agoam 6078aec2: Merge "ART: Add VerboseMethods to optimizing compiler"
Andreas Gampe [Thu, 23 Jul 2015 18:37:05 +0000 (18:37 +0000)]
am 6078aec2: Merge "ART: Add VerboseMethods to optimizing compiler"

* commit '6078aec213dfaf111c29969706e8e5967cfc9bea':
  ART: Add VerboseMethods to optimizing compiler

8 years agoam d8da9dc8: Merge "More diagnostics for flaky oat file assistant test."
Richard Uhler [Thu, 23 Jul 2015 18:37:03 +0000 (18:37 +0000)]
am d8da9dc8: Merge "More diagnostics for flaky oat file assistant test."

* commit 'd8da9dc897ececb8df8cafd458b48fa65a703acc':
  More diagnostics for flaky oat file assistant test.

8 years agoam c20d7286: Merge "Replaced CHECK with EXPECT in tests."
Aart Bik [Thu, 23 Jul 2015 18:37:01 +0000 (18:37 +0000)]
am c20d7286: Merge "Replaced CHECK with EXPECT in tests."

* commit 'c20d728627c19f7d81328bed9b800a643f6ba680':
  Replaced CHECK with EXPECT in tests.

8 years agoFix alignments in quick_entrypoints_x86_64.S
Man Cao [Thu, 23 Jul 2015 18:18:49 +0000 (11:18 -0700)]
Fix alignments in quick_entrypoints_x86_64.S

Places calling artIsAssignableFromCode() were not 16-byte aligned.

Change-Id: I86ff4f73a942ede09c0206e76614eb826dd896c2

8 years agoMerge "ART: Fix Quick/Optimizing suspend check assumption mismatch."
Vladimir Marko [Thu, 23 Jul 2015 16:53:02 +0000 (16:53 +0000)]
Merge "ART: Fix Quick/Optimizing suspend check assumption mismatch."

8 years agoMerge "Disable Checker for tests that don't invoke the compiler."
David Brazdil [Thu, 23 Jul 2015 16:18:59 +0000 (16:18 +0000)]
Merge "Disable Checker for tests that don't invoke the compiler."

8 years agoART: Fix Quick/Optimizing suspend check assumption mismatch.
Vladimir Marko [Wed, 22 Jul 2015 16:50:37 +0000 (17:50 +0100)]
ART: Fix Quick/Optimizing suspend check assumption mismatch.

Quick's SuspendCheckElimination (SCE) expects that every
method contains a suspend check and it eliminates suspend
checks in loops containing an invoke. Optimizing eliminates
the suspend check from leaf methods, so the combination of
a Quick-compiled loop calling an Optimizing-compiled leaf
method can lead to missing suspend checks and potentially
leading to ANRs.

Enable Quick's kLeafOptimization flag to remove suspend
checks from leaf methods and disable Quick's SCE. This
aligns the suspend check placement for the two backends
and avoids the broken combination.

Currently, all methods containing a try-catch are compiled
with Quick, so it's relatively easy to create a regression
test. However, this test will not be valid when Optimizing
starts supporting try-catch.

Bug: 22657404
Change-Id: I3bc40bf3f5c1e7d18704d1547b139e939950b770

8 years agoDisable Checker for tests that don't invoke the compiler.
David Brazdil [Thu, 23 Jul 2015 10:53:42 +0000 (11:53 +0100)]
Disable Checker for tests that don't invoke the compiler.

Running tests in no-prebuild mode will resort to running the
interpreter when either dex2oat or patchoat are not available, thus
not producing the CFG dump tested by Checker. This patch disables
Checker under such configurations.

Bug: 22552692

Change-Id: I23c97aa0aa627675861ef84f8c570303b614d9af

8 years agoMerge "Fix and extend the documentation of art::Thread's fields offsets."
Roland Levillain [Thu, 23 Jul 2015 10:26:14 +0000 (10:26 +0000)]
Merge "Fix and extend the documentation of art::Thread's fields offsets."

8 years agoMerge "ART: Fix missing role definition"
Andreas Gampe [Thu, 23 Jul 2015 08:14:14 +0000 (08:14 +0000)]
Merge "ART: Fix missing role definition"

8 years agoART: Fix missing role definition
Andreas Gampe [Thu, 23 Jul 2015 06:44:55 +0000 (23:44 -0700)]
ART: Fix missing role definition

Add missing static member definition. Follow-up to
4e2cb098017bf073335ebb02b1bc0a36828cd720

Bug: 20072211
Change-Id: I392da3724ded7c455b9b57add6fceb70191f9ff6

8 years agoMerge "Fix hash set memory leaks"
Mathieu Chartier [Thu, 23 Jul 2015 03:14:15 +0000 (03:14 +0000)]
Merge "Fix hash set memory leaks"

8 years agoFix hash set memory leaks
Mathieu Chartier [Thu, 23 Jul 2015 02:39:56 +0000 (19:39 -0700)]
Fix hash set memory leaks

There was a memory leak if ShrinkToMaximumLoad caused the set to
become 0 size. Fixes valgrind tests.

Change-Id: Ibdd033768d622443fb34e7a5e5e1c00e082a1a4a

8 years agoMerge "Add uninterruptible role"
Mathieu Chartier [Thu, 23 Jul 2015 00:49:51 +0000 (00:49 +0000)]
Merge "Add uninterruptible role"

8 years agoAdd uninterruptible role
Mathieu Chartier [Wed, 22 Jul 2015 23:17:51 +0000 (16:17 -0700)]
Add uninterruptible role

Example error:
cannot call function 'CopyOf' while mutex 'uninterruptible_' is held

TODO: Add annotation to more locations.

Bug: 20072211

Change-Id: I1bbf5a77e3deeafa5898df529cb7cb53a6d010d2

8 years agoMerge "Move to newer clang annotations"
Mathieu Chartier [Wed, 22 Jul 2015 22:19:19 +0000 (22:19 +0000)]
Merge "Move to newer clang annotations"

8 years agoMerge "runtest: Have gcstress tests skip 955-lambda-smali"
Igor Murashkin [Wed, 22 Jul 2015 22:18:42 +0000 (22:18 +0000)]
Merge "runtest: Have gcstress tests skip 955-lambda-smali"

8 years agoruntest: Have gcstress tests skip 955-lambda-smali
Igor Murashkin [Wed, 22 Jul 2015 22:15:06 +0000 (15:15 -0700)]
runtest: Have gcstress tests skip 955-lambda-smali

This prevents the test from failing due to a timeout (temporarily).

Bug: 22665783
Change-Id: I978786ba2f94de8f13e32718a16e6909820dab51

8 years agoMove to newer clang annotations
Mathieu Chartier [Fri, 17 Jul 2015 03:32:27 +0000 (20:32 -0700)]
Move to newer clang annotations

Also enable -Wthread-safety-negative.

Changes:
Switch to capabilities and negative capabilities.

Future work:
Use capabilities to implement uninterruptible annotations to work
with AssertNoThreadSuspension.

Bug: 20072211

Change-Id: I42fcbe0300d98a831c89d1eff3ecd5a7e99ebf33

8 years agoMerge "ART: Add VerboseMethods to optimizing compiler"
Andreas Gampe [Wed, 22 Jul 2015 21:45:44 +0000 (21:45 +0000)]
Merge "ART: Add VerboseMethods to optimizing compiler"

8 years agoART: Add VerboseMethods to optimizing compiler
Andreas Gampe [Wed, 22 Jul 2015 19:10:13 +0000 (12:10 -0700)]
ART: Add VerboseMethods to optimizing compiler

Bring the optimizing compiler up to Quick levels for debuggability.

Change-Id: Ib2adce7a31cc6a60c37c63d0df5cb6a35a85e790

9 years agoMerge "More diagnostics for flaky oat file assistant test."
Richard Uhler [Wed, 22 Jul 2015 19:24:28 +0000 (19:24 +0000)]
Merge "More diagnostics for flaky oat file assistant test."

9 years agoMerge "Replaced CHECK with EXPECT in tests."
Aart Bik [Wed, 22 Jul 2015 18:33:17 +0000 (18:33 +0000)]
Merge "Replaced CHECK with EXPECT in tests."

9 years agoReplaced CHECK with EXPECT in tests.
Aart Bik [Wed, 22 Jul 2015 18:27:39 +0000 (11:27 -0700)]
Replaced CHECK with EXPECT in tests.

Doh!

Change-Id: Ibef45031146215034647c7eaab4065c766d6fb86

9 years agoam c5bee2a1: Merge "Revert "Fixes and improvements in ReferenceTypePropagation""
Calin Juravle [Wed, 22 Jul 2015 17:30:47 +0000 (17:30 +0000)]
am c5bee2a1: Merge "Revert "Fixes and improvements in ReferenceTypePropagation""

* commit 'c5bee2a133f6505b8004075288b19efb99e24b4f':
  Revert "Fixes and improvements in ReferenceTypePropagation"

9 years agoam 32d7806b: Merge "Revert "Use the object class as top in reference type propagation""
Calin Juravle [Wed, 22 Jul 2015 17:30:45 +0000 (17:30 +0000)]
am 32d7806b: Merge "Revert "Use the object class as top in reference type propagation""

* commit '32d7806b34efda2af0f5a0eaaa384c781565d364':
  Revert "Use the object class as top in reference type propagation"

9 years agoMerge "Revert "Fixes and improvements in ReferenceTypePropagation""
Calin Juravle [Wed, 22 Jul 2015 17:20:08 +0000 (17:20 +0000)]
Merge "Revert "Fixes and improvements in ReferenceTypePropagation""

9 years agoMerge "Revert "Use the object class as top in reference type propagation""
Calin Juravle [Wed, 22 Jul 2015 17:19:20 +0000 (17:19 +0000)]
Merge "Revert "Use the object class as top in reference type propagation""

9 years agoRevert "Use the object class as top in reference type propagation"
Calin Juravle [Wed, 22 Jul 2015 17:14:50 +0000 (17:14 +0000)]
Revert "Use the object class as top in reference type propagation"

This reverts commit 3fabec7a25d151b26ba7de13615bbead0dd615a6.

Change-Id: Id8614f6b6e3e0e4c9caeb9f771e4c145d9fec64f

9 years agoRevert "Fixes and improvements in ReferenceTypePropagation"
Calin Juravle [Wed, 22 Jul 2015 17:14:32 +0000 (17:14 +0000)]
Revert "Fixes and improvements in ReferenceTypePropagation"

This reverts commit b0d5fc0ac139da4aaa1440263416b9bde05630b0.

Change-Id: Iea8adfc0bd4cb7ee2b292278b8bac80a259acbd1

9 years agoam d77aa00c: Merge "ART: Fix Thumb2 literal fixup."
Vladimir Marko [Wed, 22 Jul 2015 16:44:26 +0000 (16:44 +0000)]
am d77aa00c: Merge "ART: Fix Thumb2 literal fixup."

* commit 'd77aa00c583cc72f96bc4522d02d2070dcd72f1c':
  ART: Fix Thumb2 literal fixup.

9 years agoMerge "ART: Fix Thumb2 literal fixup."
Vladimir Marko [Wed, 22 Jul 2015 16:32:16 +0000 (16:32 +0000)]
Merge "ART: Fix Thumb2 literal fixup."

9 years agoam ff6e79c9: Merge "Added unit tests to LICM."
Aart Bik [Wed, 22 Jul 2015 16:23:50 +0000 (16:23 +0000)]
am ff6e79c9: Merge "Added unit tests to LICM."

* commit 'ff6e79c97f25692fdaae503e59f4f9e19bbdb4c0':
  Added unit tests to LICM.

9 years agoFix and extend the documentation of art::Thread's fields offsets.
Roland Levillain [Wed, 22 Jul 2015 16:19:28 +0000 (17:19 +0100)]
Fix and extend the documentation of art::Thread's fields offsets.

Change-Id: Ie13c71d1b734ec0778c388b9bcb7773dcf319f16

9 years agoMerge "Added unit tests to LICM."
Aart Bik [Wed, 22 Jul 2015 16:13:43 +0000 (16:13 +0000)]
Merge "Added unit tests to LICM."

9 years agoam 0e126bb7: Merge "When a Checker assertion cannot be parsed, display it."
Roland Levillain [Wed, 22 Jul 2015 15:30:47 +0000 (15:30 +0000)]
am 0e126bb7: Merge "When a Checker assertion cannot be parsed, display it."

* commit '0e126bb7c6c001c63f104797912a38cbe619073c':
  When a Checker assertion cannot be parsed, display it.