OSDN Git Service

android-x86/art.git
7 years agoMerge "Don't call into ResolveType with possible exception" am: 7a8e16c827 am: 344eadad7e
Mathieu Chartier [Wed, 14 Dec 2016 21:27:14 +0000 (21:27 +0000)]
Merge "Don't call into ResolveType with possible exception" am: 7a8e16c827 am: 344eadad7e
am: 79b10a8582

Change-Id: Iefac5a1f0f2d8317f1ab947ee72157a9caa322ba

7 years agoDon't call into ResolveType with possible exception am: fb568d3988 am: 47194c8cd2
Mathieu Chartier [Wed, 14 Dec 2016 21:26:58 +0000 (21:26 +0000)]
Don't call into ResolveType with possible exception am: fb568d3988 am: 47194c8cd2
am: 7a029d31e4

Change-Id: If9f7ba268549901402b5c0c017160885adba9129

7 years agoMerge "Don't call into ResolveType with possible exception" am: 7a8e16c827
Mathieu Chartier [Wed, 14 Dec 2016 21:20:42 +0000 (21:20 +0000)]
Merge "Don't call into ResolveType with possible exception" am: 7a8e16c827
am: 344eadad7e

Change-Id: Iadd0df38779ed62ee8eda3097be9087951261e49

7 years agoDon't call into ResolveType with possible exception am: fb568d3988
Mathieu Chartier [Wed, 14 Dec 2016 21:20:26 +0000 (21:20 +0000)]
Don't call into ResolveType with possible exception am: fb568d3988
am: 47194c8cd2

Change-Id: I169484c10d04b530035ffc5a3ab628115bbc6fea

7 years agoMerge "Don't call into ResolveType with possible exception"
Mathieu Chartier [Wed, 14 Dec 2016 21:13:56 +0000 (21:13 +0000)]
Merge "Don't call into ResolveType with possible exception"
am: 7a8e16c827

Change-Id: I66fd3f8b55793fc56d39d36267b24d9e04310437

7 years agoDon't call into ResolveType with possible exception
Mathieu Chartier [Wed, 14 Dec 2016 21:13:55 +0000 (21:13 +0000)]
Don't call into ResolveType with possible exception
am: fb568d3988

Change-Id: I18cd0c6f39bbedb65dc53bd4e9c5cbb99b56849d

7 years agoMerge "Don't call into ResolveType with possible exception"
Mathieu Chartier [Wed, 14 Dec 2016 21:04:24 +0000 (21:04 +0000)]
Merge "Don't call into ResolveType with possible exception"

7 years agoDon't call into ResolveType with possible exception
Mathieu Chartier [Tue, 6 Dec 2016 21:21:38 +0000 (13:21 -0800)]
Don't call into ResolveType with possible exception

Bug: 33307169

Test: test-art-host

Change-Id: Ic4d499d772828ba1da7a1b9acfc2026f0fcec2b2

7 years agoMerge "Don't visit proxy methods in CHAStackVisitor::VisitFrame" am: c47778723e am...
Mathieu Chartier [Wed, 14 Dec 2016 19:17:19 +0000 (19:17 +0000)]
Merge "Don't visit proxy methods in CHAStackVisitor::VisitFrame" am: c47778723e am: d0b7114616
am: 02a755a3cf

Change-Id: I5de828eb64f671e4862ec9e5a3fc99229dbb7b88

7 years agoMerge "Don't visit proxy methods in CHAStackVisitor::VisitFrame" am: c47778723e
Mathieu Chartier [Wed, 14 Dec 2016 19:11:19 +0000 (19:11 +0000)]
Merge "Don't visit proxy methods in CHAStackVisitor::VisitFrame" am: c47778723e
am: d0b7114616

Change-Id: I1a70b7cd90df87849e1173bba615cfd789b7569d

7 years agoMerge "Don't visit proxy methods in CHAStackVisitor::VisitFrame"
Mathieu Chartier [Wed, 14 Dec 2016 19:05:48 +0000 (19:05 +0000)]
Merge "Don't visit proxy methods in CHAStackVisitor::VisitFrame"
am: c47778723e

Change-Id: I2c9b05124c0401507e3b0c8628763f7a98d42d01

7 years agoMerge "Don't visit proxy methods in CHAStackVisitor::VisitFrame"
Mathieu Chartier [Wed, 14 Dec 2016 18:57:56 +0000 (18:57 +0000)]
Merge "Don't visit proxy methods in CHAStackVisitor::VisitFrame"

7 years agoMerge "Remove boolean arguments from NewLibrary()" am: bc1f469af0 am: c4a8aacbf2
Colin Cross [Wed, 14 Dec 2016 18:53:26 +0000 (18:53 +0000)]
Merge "Remove boolean arguments from NewLibrary()" am: bc1f469af0 am: c4a8aacbf2
am: 8894f0cb1a

Change-Id: I02f03c47f13400b93ecd95737cf7d1910fab312b

7 years agoMerge "Remove boolean arguments from NewLibrary()" am: bc1f469af0
Colin Cross [Wed, 14 Dec 2016 18:46:23 +0000 (18:46 +0000)]
Merge "Remove boolean arguments from NewLibrary()" am: bc1f469af0
am: c4a8aacbf2

Change-Id: I882b7fdc05a470440817c640871c9363637b2c47

7 years agoMerge "Remove boolean arguments from NewLibrary()"
Colin Cross [Wed, 14 Dec 2016 18:39:52 +0000 (18:39 +0000)]
Merge "Remove boolean arguments from NewLibrary()"
am: bc1f469af0

Change-Id: I771aeb2010658b0215b955ef862ff495e548ca56

7 years agoMerge "Remove boolean arguments from NewLibrary()"
Treehugger Robot [Wed, 14 Dec 2016 18:32:21 +0000 (18:32 +0000)]
Merge "Remove boolean arguments from NewLibrary()"

7 years agoMerge "Add exclusion for Reference.clear and reference processing" am: 816f78479d...
Mathieu Chartier [Wed, 14 Dec 2016 17:51:02 +0000 (17:51 +0000)]
Merge "Add exclusion for Reference.clear and reference processing" am: 816f78479d am: e58aab804a
am: 80e758c86f

Change-Id: Ib3c1391bbd6c2c23326cefa25669437e10350b9d

7 years agoMerge "Don't re-read referent in ReferenceProcessor::GetReferent" am: c9da0f8bb0...
Mathieu Chartier [Wed, 14 Dec 2016 17:50:43 +0000 (17:50 +0000)]
Merge "Don't re-read referent in ReferenceProcessor::GetReferent" am: c9da0f8bb0 am: 67653d8c0d
am: ab075a5427

Change-Id: I001993e5eae43acf54c419fccb8695e4bfa9a4fb

7 years agoMerge "Add exclusion for Reference.clear and reference processing" am: 816f78479d
Mathieu Chartier [Wed, 14 Dec 2016 17:44:03 +0000 (17:44 +0000)]
Merge "Add exclusion for Reference.clear and reference processing" am: 816f78479d
am: e58aab804a

Change-Id: I5d2a71766fee021652f2c88f171fc66e05462e01

7 years agoMerge "Don't re-read referent in ReferenceProcessor::GetReferent" am: c9da0f8bb0
Mathieu Chartier [Wed, 14 Dec 2016 17:43:43 +0000 (17:43 +0000)]
Merge "Don't re-read referent in ReferenceProcessor::GetReferent" am: c9da0f8bb0
am: 67653d8c0d

Change-Id: I3ec834e52a1cef1770a48f58c105de651f1c8ede

7 years agoMerge "Add exclusion for Reference.clear and reference processing"
Mathieu Chartier [Wed, 14 Dec 2016 17:37:46 +0000 (17:37 +0000)]
Merge "Add exclusion for Reference.clear and reference processing"
am: 816f78479d

Change-Id: Ie3332a0c4191e798035e83964b82016bf2953873

7 years agoMerge "Don't re-read referent in ReferenceProcessor::GetReferent"
Mathieu Chartier [Wed, 14 Dec 2016 17:37:21 +0000 (17:37 +0000)]
Merge "Don't re-read referent in ReferenceProcessor::GetReferent"
am: c9da0f8bb0

Change-Id: I727e7d180c72a8c9547e0bddd505df5b2cffd6d5

7 years agoMerge "Add exclusion for Reference.clear and reference processing"
Mathieu Chartier [Wed, 14 Dec 2016 17:30:23 +0000 (17:30 +0000)]
Merge "Add exclusion for Reference.clear and reference processing"

7 years agoMerge "Don't re-read referent in ReferenceProcessor::GetReferent"
Mathieu Chartier [Wed, 14 Dec 2016 17:30:07 +0000 (17:30 +0000)]
Merge "Don't re-read referent in ReferenceProcessor::GetReferent"

7 years agoMerge "Fix AssemblerMIPS64Test.LongBalc() running out of memory." am: afca9306a6...
Vladimir Marko [Wed, 14 Dec 2016 16:09:07 +0000 (16:09 +0000)]
Merge "Fix AssemblerMIPS64Test.LongBalc() running out of memory." am: afca9306a6 am: 9d51ab357e
am: 0461aa6d6e

Change-Id: I7f060d4fbb8bbb813e2566900155d29dd11e8879

7 years agoMerge "Fix AssemblerMIPS64Test.LongBalc() running out of memory." am: afca9306a6
Vladimir Marko [Wed, 14 Dec 2016 16:02:07 +0000 (16:02 +0000)]
Merge "Fix AssemblerMIPS64Test.LongBalc() running out of memory." am: afca9306a6
am: 9d51ab357e

Change-Id: I11ac23b97f2d90607dda222ea5f1ee64db21e2c7

7 years agoMerge "Fix AssemblerMIPS64Test.LongBalc() running out of memory."
Vladimir Marko [Wed, 14 Dec 2016 15:55:06 +0000 (15:55 +0000)]
Merge "Fix AssemblerMIPS64Test.LongBalc() running out of memory."
am: afca9306a6

Change-Id: I1268e080ff3f3d1fdbdd79d89c4d5730d09bf079

7 years agoMerge "Fix AssemblerMIPS64Test.LongBalc() running out of memory."
Treehugger Robot [Wed, 14 Dec 2016 15:48:29 +0000 (15:48 +0000)]
Merge "Fix AssemblerMIPS64Test.LongBalc() running out of memory."

7 years agoFix AssemblerMIPS64Test.LongBalc() running out of memory.
Vladimir Marko [Wed, 14 Dec 2016 14:18:22 +0000 (14:18 +0000)]
Fix AssemblerMIPS64Test.LongBalc() running out of memory.

Pre-allocate the necessary buffer because the reallocation
strategy doesn't work well for a test of this size.

Test: m test-art-host-gtest-assembler_mips64_test
Change-Id: I16bc75f0ae83a62e5f3ed2cd8228dd40f0eb9524

7 years agoMerge "ARM: Fix breaking changes from recent VIXL update." am: b73e659be3 am: ad0e67a6de
Nicolas Geoffray [Wed, 14 Dec 2016 14:07:33 +0000 (14:07 +0000)]
Merge "ARM: Fix breaking changes from recent VIXL update." am: b73e659be3 am: ad0e67a6de
am: 68d36c8b4f

Change-Id: I06bc35f3f1c86bb10336d3e965ac354f95e42f7e

7 years agoMerge "ARM: Fix breaking changes from recent VIXL update." am: b73e659be3
Nicolas Geoffray [Wed, 14 Dec 2016 14:01:32 +0000 (14:01 +0000)]
Merge "ARM: Fix breaking changes from recent VIXL update." am: b73e659be3
am: ad0e67a6de

Change-Id: I206a75472d807c800abfde8448706686de20d8a9

7 years agoMerge "ARM: Fix breaking changes from recent VIXL update."
Nicolas Geoffray [Wed, 14 Dec 2016 13:55:06 +0000 (13:55 +0000)]
Merge "ARM: Fix breaking changes from recent VIXL update."
am: b73e659be3

Change-Id: Id83c34cb94aa4785c070a35d30e1d4f45aa4d236

7 years agoMerge "ARM: Fix breaking changes from recent VIXL update."
Nicolas Geoffray [Wed, 14 Dec 2016 13:43:48 +0000 (13:43 +0000)]
Merge "ARM: Fix breaking changes from recent VIXL update."

7 years agoMerge "Implement VisitShouldDeoptimizeFlag for MIPS/MIPS64" am: 3f92bdea52 am: 776b293eaf
Goran Jakovljevic [Wed, 14 Dec 2016 12:25:26 +0000 (12:25 +0000)]
Merge "Implement VisitShouldDeoptimizeFlag for MIPS/MIPS64" am: 3f92bdea52 am: 776b293eaf
am: 2347f2fcd0

Change-Id: Ibe40a6c1ae00236662dcf60ba9e9eeed04e8e6bc

7 years agoMerge "Implement VisitShouldDeoptimizeFlag for MIPS/MIPS64" am: 3f92bdea52
Goran Jakovljevic [Wed, 14 Dec 2016 12:18:24 +0000 (12:18 +0000)]
Merge "Implement VisitShouldDeoptimizeFlag for MIPS/MIPS64" am: 3f92bdea52
am: 776b293eaf

Change-Id: Ibd9927c3a62a6431a33c37462243bae7c8ee0f48

7 years agoMerge "Implement VisitShouldDeoptimizeFlag for MIPS/MIPS64"
Goran Jakovljevic [Wed, 14 Dec 2016 12:11:24 +0000 (12:11 +0000)]
Merge "Implement VisitShouldDeoptimizeFlag for MIPS/MIPS64"
am: 3f92bdea52

Change-Id: Ia2f5cc7e7fed0fa78105befa7e781bafada6c7ca

7 years agoMerge "MIPS64: Improve method invocation." am: b70b66e701 am: c9b368f479
Alexey Frunze [Wed, 14 Dec 2016 12:04:24 +0000 (12:04 +0000)]
Merge "MIPS64: Improve method invocation." am: b70b66e701 am: c9b368f479
am: b3280433ac

Change-Id: I4159ecd9d7061b80a6471ea9d13000de4d0735f1

7 years agoMerge "Implement VisitShouldDeoptimizeFlag for MIPS/MIPS64"
Treehugger Robot [Wed, 14 Dec 2016 12:00:51 +0000 (12:00 +0000)]
Merge "Implement VisitShouldDeoptimizeFlag for MIPS/MIPS64"

7 years agoMerge "MIPS64: Improve method invocation." am: b70b66e701
Alexey Frunze [Wed, 14 Dec 2016 11:57:23 +0000 (11:57 +0000)]
Merge "MIPS64: Improve method invocation." am: b70b66e701
am: c9b368f479

Change-Id: Icfa12b7c567f12be1128becbd2f01d9e175419a7

7 years agoMerge "MIPS64: Improve method invocation."
Alexey Frunze [Wed, 14 Dec 2016 11:51:23 +0000 (11:51 +0000)]
Merge "MIPS64: Improve method invocation."
am: b70b66e701

Change-Id: Ie5cc97825258886bac942565e420f6d608433fce

7 years agoMerge "MIPS64: Improve method invocation."
Treehugger Robot [Wed, 14 Dec 2016 11:45:32 +0000 (11:45 +0000)]
Merge "MIPS64: Improve method invocation."

7 years agoMerge "Support GVN for HLoadClass::LoadKind::kJitTableAddress." am: 001e1c1202 am...
Nicolas Geoffray [Wed, 14 Dec 2016 09:40:16 +0000 (09:40 +0000)]
Merge "Support GVN for HLoadClass::LoadKind::kJitTableAddress." am: 001e1c1202 am: 7ccdebe66b
am: ba5c80e3b6

Change-Id: Ifbf1e59a0f73109e8d0164d4b0f94ef57c04e42a

7 years agoMerge "Handle primitive types in VerifierTypes::AddAssignability." am: dfc453b2ab...
Nicolas Geoffray [Wed, 14 Dec 2016 09:33:46 +0000 (09:33 +0000)]
Merge "Handle primitive types in VerifierTypes::AddAssignability." am: dfc453b2ab am: a22c7440ea
am: bd626bb279

Change-Id: I694683b1eeac29e0a38bbde53b739d9f4244d903

7 years agoMerge "Support GVN for HLoadClass::LoadKind::kJitTableAddress." am: 001e1c1202
Nicolas Geoffray [Wed, 14 Dec 2016 09:33:45 +0000 (09:33 +0000)]
Merge "Support GVN for HLoadClass::LoadKind::kJitTableAddress." am: 001e1c1202
am: 7ccdebe66b

Change-Id: Ic2253f50f3955c49845cab189c91564b717b4375

7 years agoMerge "Support GVN for HLoadClass::LoadKind::kJitTableAddress."
Nicolas Geoffray [Wed, 14 Dec 2016 09:27:15 +0000 (09:27 +0000)]
Merge "Support GVN for HLoadClass::LoadKind::kJitTableAddress."
am: 001e1c1202

Change-Id: I14e454cf6f5adbda61291af3d481f8c993743aff

7 years agoMerge "Handle primitive types in VerifierTypes::AddAssignability." am: dfc453b2ab
Nicolas Geoffray [Wed, 14 Dec 2016 09:27:14 +0000 (09:27 +0000)]
Merge "Handle primitive types in VerifierTypes::AddAssignability." am: dfc453b2ab
am: a22c7440ea

Change-Id: Iab729af1ac94abeb3519009776d11f72d7d3a4b2

7 years agoImplement VisitShouldDeoptimizeFlag for MIPS/MIPS64
Goran Jakovljevic [Mon, 5 Dec 2016 15:31:55 +0000 (16:31 +0100)]
Implement VisitShouldDeoptimizeFlag for MIPS/MIPS64

This is follow-up change for I18bf716a601b6413b46312e925a6ad9e4008efa4.

Test: mma ART_TEST_JIT=true test-art-target-run-test-jit on CI20 and QEMU

Change-Id: I750814ae740a4549f1a2af11be7ae4318ae26a2f

7 years agoMerge "Support GVN for HLoadClass::LoadKind::kJitTableAddress."
Nicolas Geoffray [Wed, 14 Dec 2016 09:21:59 +0000 (09:21 +0000)]
Merge "Support GVN for HLoadClass::LoadKind::kJitTableAddress."

7 years agoMerge "Handle primitive types in VerifierTypes::AddAssignability."
Nicolas Geoffray [Wed, 14 Dec 2016 09:20:16 +0000 (09:20 +0000)]
Merge "Handle primitive types in VerifierTypes::AddAssignability."
am: dfc453b2ab

Change-Id: I087fd12b6215a92b5c8180c239303d2a71999137

7 years agoMerge "Handle primitive types in VerifierTypes::AddAssignability."
Nicolas Geoffray [Wed, 14 Dec 2016 09:15:05 +0000 (09:15 +0000)]
Merge "Handle primitive types in VerifierTypes::AddAssignability."

7 years agoMerge "ART: Make switch back-edge suspension point consistent" am: a248587487 am...
Andreas Gampe [Wed, 14 Dec 2016 01:18:49 +0000 (01:18 +0000)]
Merge "ART: Make switch back-edge suspension point consistent" am: a248587487 am: 006fa3a9e6
am: ff0f01c4e7

Change-Id: I2535717a98b9922e8cd5363956116518b451c75f

7 years agoMerge "ART: Make switch back-edge suspension point consistent" am: a248587487
Andreas Gampe [Wed, 14 Dec 2016 01:12:18 +0000 (01:12 +0000)]
Merge "ART: Make switch back-edge suspension point consistent" am: a248587487
am: 006fa3a9e6

Change-Id: Id4dabe365d6b0ec42bc7c33ccc2e490517416521

7 years agoMerge "ART: Make switch back-edge suspension point consistent"
Andreas Gampe [Wed, 14 Dec 2016 01:06:17 +0000 (01:06 +0000)]
Merge "ART: Make switch back-edge suspension point consistent"
am: a248587487

Change-Id: I8eb60834f9f1247860c97a740294020eabc27add

7 years agoMerge "ART: Make switch back-edge suspension point consistent"
Treehugger Robot [Wed, 14 Dec 2016 00:54:45 +0000 (00:54 +0000)]
Merge "ART: Make switch back-edge suspension point consistent"

7 years agoAdd exclusion for Reference.clear and reference processing
Mathieu Chartier [Tue, 13 Dec 2016 22:44:33 +0000 (14:44 -0800)]
Add exclusion for Reference.clear and reference processing

Prevents race conditions like unclearing cleared references or
calling IsMarkedHeapReference on null references.

Bug: 33389022

Test: test-art-host

Change-Id: Iee83b76d84453e929172f1a83f284aa4910e126c

7 years agoART: Make switch back-edge suspension point consistent
Andreas Gampe [Tue, 13 Dec 2016 22:43:58 +0000 (14:43 -0800)]
ART: Make switch back-edge suspension point consistent

Both compiled code and mterp attribute a back-edge suspend point
to the target. Make switch consistent by proactively updating
the frame's dex PC in that case.

Add another macro for reuse.

Bug: 31684812
Test: m test-art-host-run-test-911-get-stack-trace
Test: m ART_TEST_INTERPRETER=true ART_TEST_JIT=true ART_TEST_TRACE=true test-art-host
Change-Id: I9969cc4ffbc34cf1d8849938a1cd7e2c9aec462d

7 years agoMerge "ART: Clean up utils.h" am: d812f78297 am: 3539cb7018
Andreas Gampe [Tue, 13 Dec 2016 22:14:06 +0000 (22:14 +0000)]
Merge "ART: Clean up utils.h" am: d812f78297 am: 3539cb7018
am: af14d2c1ae

Change-Id: I57fb1d2bf7bfac619c6f03240ba04ce0b826dc64

7 years agoSupport GVN for HLoadClass::LoadKind::kJitTableAddress.
Nicolas Geoffray [Tue, 13 Dec 2016 13:43:31 +0000 (13:43 +0000)]
Support GVN for HLoadClass::LoadKind::kJitTableAddress.

Fixes performance regressions seen in eg Dhrystone.

Also add comment on why a class may not be found when sharpening.

Test: manual Dhrystone run, performance recovers
Test: ART_TEST_JIT=true test-art-host-run-test-jit
Change-Id: I8e879f1c390f83e8bc930f343beb7b4a41c2f190

7 years agoMIPS64: Improve method invocation.
Alexey Frunze [Thu, 1 Dec 2016 03:19:55 +0000 (19:19 -0800)]
MIPS64: Improve method invocation.

Improvements include:
- support for all kinds of method loads and static/direct calls
- 32-bit and 64-bit literals for the above and future work
- shorter instruction sequences for recursive static/direct calls
Also:
- include the MIPS64 dinsu instruction (missed earlier) and minor
  clean-up in the disassembler
- properly prefix constant names with 'k' in relative patcher tests

Test: test-art-host-gtest
Test: booted MIPS64 (with 2nd arch MIPS32R6) in QEMU
Test: "make -j1 ART_TEST_DEFAULT_COMPILER=false ART_TEST_OPTIMIZING=true
       ART_TEST_INTERPRETER=false ART_TEST_JIT=false
       ART_TEST_PIC_TEST=true test-art-target-run-test64"

Change-Id: I19876fa5316b68531af7dfddfce90d2068433116

7 years agoMerge "ART: Clean up utils.h" am: d812f78297
Andreas Gampe [Tue, 13 Dec 2016 22:07:07 +0000 (22:07 +0000)]
Merge "ART: Clean up utils.h" am: d812f78297
am: 3539cb7018

Change-Id: Ib4ca51475998b2aa8b4392287f425f633ce5cd68

7 years agoMerge "ART: Clean up utils.h"
Andreas Gampe [Tue, 13 Dec 2016 22:00:36 +0000 (22:00 +0000)]
Merge "ART: Clean up utils.h"
am: d812f78297

Change-Id: I5bbe18362ccd1b13413efe5d346b39436e739820

7 years agoMerge "ART: Clean up utils.h"
Treehugger Robot [Tue, 13 Dec 2016 21:54:10 +0000 (21:54 +0000)]
Merge "ART: Clean up utils.h"

7 years agoRemove boolean arguments from NewLibrary()
Colin Cross [Fri, 9 Dec 2016 22:47:29 +0000 (14:47 -0800)]
Remove boolean arguments from NewLibrary()

NewLibrary is going to be used for header only libraries.  Instead
of adding more boolean arguments, replace the existing ones with
BuildOnlyStatic and BuildOnlyShared calls on the libraryDecorator
returned by NewLibrary.

Test: m -j, compare build.ninja
Change-Id: I832627938f3fbc8cc1565c695048a5b5c3553090

7 years agoDon't visit proxy methods in CHAStackVisitor::VisitFrame
Mingyao Yang [Tue, 13 Dec 2016 20:28:31 +0000 (12:28 -0800)]
Don't visit proxy methods in CHAStackVisitor::VisitFrame

Proxy methods do not have an OatQuickMethodHeader.

Test: test-art-host, launch com.azarlive.android

Bug: 33471784
Change-Id: Idb660c78a8263501d068d8467476b0477d910393

7 years agoDon't re-read referent in ReferenceProcessor::GetReferent
Mathieu Chartier [Tue, 13 Dec 2016 19:46:28 +0000 (11:46 -0800)]
Don't re-read referent in ReferenceProcessor::GetReferent

Re-reading has the issue that it may read a null value after already
having done the null check. Using a cached value prevents this from
happening and causing DCHECK failures.

Added a related stress test.

Bug: 33569625
Bug: 33389022

Test: test-art-host

Change-Id: Ic42d540e035d41ac6e5b01762f9510cd6632b28c

7 years agoMerge changes Iac3db17f,I4221ef81 am: 0955e34843 am: 4ed9f2295a
Andreas Gampe [Tue, 13 Dec 2016 20:36:51 +0000 (20:36 +0000)]
Merge changes Iac3db17f,I4221ef81 am: 0955e34843 am: 4ed9f2295a
am: fb370e54d6

Change-Id: I7a12a57ff43f815df15fa074417950a290c1fc89

7 years agoART: Fix stack trace location reporting am: 2340e3f3aa am: ed29d84356
Andreas Gampe [Tue, 13 Dec 2016 20:36:41 +0000 (20:36 +0000)]
ART: Fix stack trace location reporting am: 2340e3f3aa am: ed29d84356
am: b3f182000d

Change-Id: Ib13275eed4c0a0b78c610f4cd2d8c93ea9cfffca

7 years agoART: Rewrite test 911 stack trace reporting am: ceafe35513 am: f0d04b7c87
Andreas Gampe [Tue, 13 Dec 2016 20:36:31 +0000 (20:36 +0000)]
ART: Rewrite test 911 stack trace reporting am: ceafe35513 am: f0d04b7c87
am: 3e9a7daaa0

Change-Id: If9ab789211aedaa527bf11878e1e8ce932c6e8a9

7 years agoMerge changes Iac3db17f,I4221ef81 am: 0955e34843
Andreas Gampe [Tue, 13 Dec 2016 20:23:18 +0000 (20:23 +0000)]
Merge changes Iac3db17f,I4221ef81 am: 0955e34843
am: 4ed9f2295a

Change-Id: I15e9af44cd60275afdd8491605a21555fdefc423

7 years agoART: Fix stack trace location reporting am: 2340e3f3aa
Andreas Gampe [Tue, 13 Dec 2016 20:23:10 +0000 (20:23 +0000)]
ART: Fix stack trace location reporting am: 2340e3f3aa
am: ed29d84356

Change-Id: Ie7b39b6b53c09cd086c2216744f49005ae7fa355

7 years agoMerge "Address some review comments" am: 017c55c120 am: ed9771b350
Mathieu Chartier [Tue, 13 Dec 2016 20:23:00 +0000 (20:23 +0000)]
Merge "Address some review comments" am: 017c55c120 am: ed9771b350
am: 9e53f52b30

Change-Id: If5fd5dbb4de8e1ff75f7111da1ae04e6a2d6d2ee

7 years agoART: Rewrite test 911 stack trace reporting am: ceafe35513
Andreas Gampe [Tue, 13 Dec 2016 20:23:00 +0000 (20:23 +0000)]
ART: Rewrite test 911 stack trace reporting am: ceafe35513
am: f0d04b7c87

Change-Id: I21f88f10a79c02e897850d1d944742ecbd4c1cda

7 years agoMerge changes Iac3db17f,I4221ef81
Andreas Gampe [Tue, 13 Dec 2016 20:16:10 +0000 (20:16 +0000)]
Merge changes Iac3db17f,I4221ef81
am: 0955e34843

Change-Id: Ic30935bfd9aff2ac04fd42ac58932170d94266f5

7 years agoART: Fix stack trace location reporting
Andreas Gampe [Tue, 13 Dec 2016 20:16:08 +0000 (20:16 +0000)]
ART: Fix stack trace location reporting
am: 2340e3f3aa

Change-Id: I481b7d5b2840a0c72507f61743f325a64572945a

7 years agoART: Rewrite test 911 stack trace reporting
Andreas Gampe [Tue, 13 Dec 2016 20:16:00 +0000 (20:16 +0000)]
ART: Rewrite test 911 stack trace reporting
am: ceafe35513

Change-Id: I8b81ba40224fc36b045bddb92c82a619ac62b74a

7 years agoMerge changes Iac3db17f,I4221ef81
Treehugger Robot [Tue, 13 Dec 2016 20:11:26 +0000 (20:11 +0000)]
Merge changes Iac3db17f,I4221ef81

* changes:
  ART: Fix stack trace location reporting
  ART: Rewrite test 911 stack trace reporting

7 years agoMerge "Address some review comments" am: 017c55c120
Mathieu Chartier [Tue, 13 Dec 2016 20:09:30 +0000 (20:09 +0000)]
Merge "Address some review comments" am: 017c55c120
am: ed9771b350

Change-Id: I4cdb6b515f5d66c1f7b07c7492ca91ed758f24d2

7 years agoMerge "Address some review comments"
Mathieu Chartier [Tue, 13 Dec 2016 20:02:29 +0000 (20:02 +0000)]
Merge "Address some review comments"
am: 017c55c120

Change-Id: Iafd709eacf9a986452179b5661c70b150b17e3f1

7 years agoMerge "Address some review comments"
Mathieu Chartier [Tue, 13 Dec 2016 19:55:45 +0000 (19:55 +0000)]
Merge "Address some review comments"

7 years agoMerge "Prune uses library classes even without profile" am: 319261e13a am: b4708114b6
Mathieu Chartier [Tue, 13 Dec 2016 19:44:28 +0000 (19:44 +0000)]
Merge "Prune uses library classes even without profile" am: 319261e13a am: b4708114b6
am: affdc95518

Change-Id: I3263a8c4cea9927403e0351bf85e24bdac2fd3c4

7 years agoART: Clean up utils.h
Andreas Gampe [Mon, 12 Dec 2016 22:28:21 +0000 (14:28 -0800)]
ART: Clean up utils.h

Remove functionality provided by libbase. Move some single-use
functions to their respective users.

Test: m test-art-host
Change-Id: I75594035fa975200d638cc29bb9f31bc6e6cb29f

7 years agoMerge "Prune uses library classes even without profile" am: 319261e13a
Mathieu Chartier [Tue, 13 Dec 2016 19:38:27 +0000 (19:38 +0000)]
Merge "Prune uses library classes even without profile" am: 319261e13a
am: b4708114b6

Change-Id: Ie199cff46d2bdb88350dedb87ad1c8210af325a4

7 years agoMerge "Prune uses library classes even without profile"
Mathieu Chartier [Tue, 13 Dec 2016 19:31:28 +0000 (19:31 +0000)]
Merge "Prune uses library classes even without profile"
am: 319261e13a

Change-Id: I372d44be97b4a94296ebf52d5f597478a48669a8

7 years agoMerge "Prune uses library classes even without profile"
Mathieu Chartier [Tue, 13 Dec 2016 19:24:35 +0000 (19:24 +0000)]
Merge "Prune uses library classes even without profile"

7 years agoMerge "Fix CC DCHECK failure in 152-gc-and-run-finalization." am: aa2657d6d9 am:...
Hiroshi Yamauchi [Tue, 13 Dec 2016 18:15:24 +0000 (18:15 +0000)]
Merge "Fix CC DCHECK failure in 152-gc-and-run-finalization." am: aa2657d6d9 am: 0077c964c0
am: 8823a1d702

Change-Id: Iace5389524ea099590f731f0f8bdc9b929a1cd15

7 years agoAddress some review comments
Mathieu Chartier [Mon, 12 Dec 2016 19:06:59 +0000 (11:06 -0800)]
Address some review comments

Addressed comments in dex cache and class table. Added class table
test.

Test: mm test-art-host-gtest-class_table_test -j20

Change-Id: I3ec0282247187acb1ec7af25b309501f001a1c3e

7 years agoMerge "Fix CC DCHECK failure in 152-gc-and-run-finalization." am: aa2657d6d9
Hiroshi Yamauchi [Tue, 13 Dec 2016 18:09:22 +0000 (18:09 +0000)]
Merge "Fix CC DCHECK failure in 152-gc-and-run-finalization." am: aa2657d6d9
am: 0077c964c0

Change-Id: I0394bb7b76f2b0562004e6cb891106a6a99078db

7 years agoMerge "Fix CC DCHECK failure in 152-gc-and-run-finalization."
Hiroshi Yamauchi [Tue, 13 Dec 2016 18:02:51 +0000 (18:02 +0000)]
Merge "Fix CC DCHECK failure in 152-gc-and-run-finalization."
am: aa2657d6d9

Change-Id: I71f78805750b4c695eeb829c56c7ff2b86fd67ad

7 years agoMerge "Fix CC DCHECK failure in 152-gc-and-run-finalization."
Hiroshi Yamauchi [Tue, 13 Dec 2016 17:55:33 +0000 (17:55 +0000)]
Merge "Fix CC DCHECK failure in 152-gc-and-run-finalization."

7 years agoMerge "Remove obsolete DeduplicateDexCacheAddressLiteral()." am: ea63e4d1c3 am: 7cad3...
Vladimir Marko [Tue, 13 Dec 2016 16:00:45 +0000 (16:00 +0000)]
Merge "Remove obsolete DeduplicateDexCacheAddressLiteral()." am: ea63e4d1c3 am: 7cad34ad64
am: 95331a7f11

Change-Id: Ibe9d771b13a84c14e86e1bbe7412c565fa05a584

7 years agoMerge "Remove obsolete DeduplicateDexCacheAddressLiteral()." am: ea63e4d1c3
Vladimir Marko [Tue, 13 Dec 2016 15:53:46 +0000 (15:53 +0000)]
Merge "Remove obsolete DeduplicateDexCacheAddressLiteral()." am: ea63e4d1c3
am: 7cad34ad64

Change-Id: I73a441897eee756837c3686868a9323356af2bbe

7 years agoMerge "Remove obsolete DeduplicateDexCacheAddressLiteral()."
Vladimir Marko [Tue, 13 Dec 2016 15:46:45 +0000 (15:46 +0000)]
Merge "Remove obsolete DeduplicateDexCacheAddressLiteral()."
am: ea63e4d1c3

Change-Id: Icdfcecbcfe20e24e04c220c308407efbf163cfee

7 years agoMerge "Remove obsolete DeduplicateDexCacheAddressLiteral()."
Vladimir Marko [Tue, 13 Dec 2016 15:37:09 +0000 (15:37 +0000)]
Merge "Remove obsolete DeduplicateDexCacheAddressLiteral()."

7 years agoHandle primitive types in VerifierTypes::AddAssignability.
Nicolas Geoffray [Mon, 12 Dec 2016 13:07:07 +0000 (13:07 +0000)]
Handle primitive types in VerifierTypes::AddAssignability.

The dex2dex compiler might indirectly call it with arrays
of primitives.

Also remove dead APUT_OBJECT optimization in VerifiedMethod.
It was added for optimizing Quick:
https://googleplex-android-review.googlesource.com/#/c/371193

Commit hash:
a9a8254c920ce8e22210abfc16c9842ce0aea28f

But Quick is gone.

Test: 630-safecast-array
bug: 334987503254680732546608

Change-Id: Icfd3f8d915bfe225f05dbec42f9ba25dc1243fdc

7 years agoMerge "ARM: VIXL32: Test both current and new assemblers with optimizing_cfi_test...
Nicolas Geoffray [Tue, 13 Dec 2016 14:19:09 +0000 (14:19 +0000)]
Merge "ARM: VIXL32: Test both current and new assemblers with optimizing_cfi_test." am: 831cb268e0 am: 79f52245c0
am: 07707a0ce0

Change-Id: I1e5cd4a941fd1eece2d299f8a6cc980bdad07b9d

7 years agoMerge "ARM: VIXL32: Test both current and new assemblers with optimizing_cfi_test...
Nicolas Geoffray [Tue, 13 Dec 2016 14:13:10 +0000 (14:13 +0000)]
Merge "ARM: VIXL32: Test both current and new assemblers with optimizing_cfi_test." am: 831cb268e0
am: 79f52245c0

Change-Id: I291081799e9ba0d26c21e0bb7b84e14dd3e6946a

7 years agoMerge "ARM: VIXL32: Test both current and new assemblers with optimizing_cfi_test."
Nicolas Geoffray [Tue, 13 Dec 2016 14:07:10 +0000 (14:07 +0000)]
Merge "ARM: VIXL32: Test both current and new assemblers with optimizing_cfi_test."
am: 831cb268e0

Change-Id: I5aa68f3529c0d4cc37eb050344bc38d77c56b506

7 years agoMerge "ARM: VIXL32: Test both current and new assemblers with optimizing_cfi_test."
Nicolas Geoffray [Tue, 13 Dec 2016 13:57:39 +0000 (13:57 +0000)]
Merge "ARM: VIXL32: Test both current and new assemblers with optimizing_cfi_test."

7 years agoRemove obsolete DeduplicateDexCacheAddressLiteral().
Vladimir Marko [Tue, 13 Dec 2016 13:50:14 +0000 (13:50 +0000)]
Remove obsolete DeduplicateDexCacheAddressLiteral().

Test: Rely on TreeHugger
Bug: 30627598
Change-Id: Ia3c7a1d528f62b730d7ac1cc7b67f21d9ff06c9e

7 years agoMerge "Disable 626-const-class-linking for JIT." am: 1e35a69a44 am: 7ffb7155dc
Vladimir Marko [Tue, 13 Dec 2016 13:00:07 +0000 (13:00 +0000)]
Merge "Disable 626-const-class-linking for JIT." am: 1e35a69a44 am: 7ffb7155dc
am: d004d7f1e1

Change-Id: I377571a824d460e2eb4ce4aa55fd755e3bd96645