OSDN Git Service
Mathieu Chartier [Sat, 22 Apr 2017 01:17:09 +0000 (01:17 +0000)]
Merge "More robust GC verification and corruption dumping" am:
498305d881
am:
59f799b1de
Change-Id: Ifaa0f1bf4d2b3a084aa0b0579b0ae9405cd9735e
Mathieu Chartier [Sat, 22 Apr 2017 01:14:06 +0000 (01:14 +0000)]
Merge "More robust GC verification and corruption dumping"
am:
498305d881
Change-Id: I6b28aa4a3ece41c28cb8a6cd7b4e1e67c79bb117
Mathieu Chartier [Sat, 22 Apr 2017 01:08:52 +0000 (01:08 +0000)]
Merge "More robust GC verification and corruption dumping"
Andreas Gampe [Sat, 22 Apr 2017 01:02:38 +0000 (01:02 +0000)]
Merge "ART: Refactor run-test 911" am:
0a5fa0cf48
am:
b20b623690
Change-Id: Id9d0f48b34e50af5e8780e062f13ff9ba23bc892
Andreas Gampe [Sat, 22 Apr 2017 00:59:36 +0000 (00:59 +0000)]
Merge "ART: Refactor run-test 911"
am:
0a5fa0cf48
Change-Id: I2bc2f097d7bf246875ae9ceac1517c442720e66a
Treehugger Robot [Sat, 22 Apr 2017 00:52:42 +0000 (00:52 +0000)]
Merge "ART: Refactor run-test 911"
Josh Gao [Fri, 21 Apr 2017 23:34:30 +0000 (23:34 +0000)]
Merge "Add suppression for process_vm_readv." am:
6a90934ab3
am:
a869892f05
Change-Id: Ib6637aead2624d3fd1b6985eb31722e5796f7219
Josh Gao [Fri, 21 Apr 2017 23:32:01 +0000 (23:32 +0000)]
Merge "Add suppression for process_vm_readv."
am:
6a90934ab3
Change-Id: I38ab1f07745935bb7989de3dc6394d40744cbc69
Treehugger Robot [Fri, 21 Apr 2017 23:26:05 +0000 (23:26 +0000)]
Merge "Add suppression for process_vm_readv."
Igor Murashkin [Fri, 21 Apr 2017 23:13:30 +0000 (23:13 +0000)]
Merge "run_build_test_target: Fix run-test not running for art-test[-javac]" am:
e81b88f5ee
am:
b71ae58ca9
Change-Id: I3c843d3dd11127dde88f35b51693b2a967ed7a70
Igor Murashkin [Fri, 21 Apr 2017 23:09:59 +0000 (23:09 +0000)]
Merge "run_build_test_target: Fix run-test not running for art-test[-javac]"
am:
e81b88f5ee
Change-Id: I16a5fc176b93e6a8b197d7d8a6a610ccd4da45a3
Andreas Gampe [Fri, 21 Apr 2017 23:04:27 +0000 (16:04 -0700)]
ART: Refactor run-test 911
Refactor the run-test in preparation for usage in CTS.
Move from the main thread into a dedicated thread. Add filtering
of threads.
Bug:
32072923
Test: m test-art-host
Change-Id: I3e0db90a240dea7154b3d1c6eb93a6f6cce97e21
Treehugger Robot [Fri, 21 Apr 2017 23:01:18 +0000 (23:01 +0000)]
Merge "run_build_test_target: Fix run-test not running for art-test[-javac]"
Mathieu Chartier [Tue, 18 Apr 2017 18:26:22 +0000 (11:26 -0700)]
More robust GC verification and corruption dumping
Added a test for GC heap corruption dumping, added more info to the
dump like adjacent bytes and card table.
Added heap corruption detection in
ConcurrentCopying::MarkNonMoving().
Bug:
37187694
Bug:
12687968
Test: mm test-art-host-gtest-verification_test -j20
Change-Id: I8c90e45796d0784265aa091b2f8082f0cfb62719
Andreas Gampe [Fri, 21 Apr 2017 21:56:24 +0000 (21:56 +0000)]
Merge "ART: Fix Mac build" am:
9ae527f615
am:
f35d96a1e3
Change-Id: I6a9ca0402409fbbb42cb253c09f9b062827b895d
Andreas Gampe [Fri, 21 Apr 2017 21:53:25 +0000 (21:53 +0000)]
Merge "ART: Fix Mac build"
am:
9ae527f615
Change-Id: I9734f831864fdea26299b4798a85d27b2bb540f0
Josh Gao [Fri, 21 Apr 2017 21:13:54 +0000 (14:13 -0700)]
Add suppression for process_vm_readv.
On some hosts, valgrind complains about the intentional use of
process_vm_readv on invalid addresses.
Test: manually ran safe_copy_test on a VM with a 3.13 kernel
Test: m valgrind-test-art-target-gtest-safe_copy_test32 on angler
Test: m valgrind-test-art-host-gtest-safe_copy_test32 on 4.4 kernel
(but it wasn't failing in the first place)
Change-Id: Idd4ec19cc81176eb0b880ff1363bffe0c58ec904
Andreas Gampe [Fri, 21 Apr 2017 21:46:46 +0000 (21:46 +0000)]
Merge "ART: Fix Mac build"
Igor Murashkin [Fri, 21 Apr 2017 20:04:27 +0000 (13:04 -0700)]
run_build_test_target: Fix run-test not running for art-test[-javac]
Test: art/test/testrunner/run_build_test_target.py -j32 art-test
Change-Id: I8e9147fed3db88557376769db52602628754da46
Andreas Gampe [Fri, 21 Apr 2017 20:24:52 +0000 (13:24 -0700)]
ART: Fix Mac build
Another missing transitive include.
Test: m
Change-Id: I3e2691bcf8ddb38e48c7e32dbd9695459f4d9d16
Aart Bik [Fri, 21 Apr 2017 20:11:38 +0000 (20:11 +0000)]
Merge "Factor vector unary/binary shared code out into superclass." am:
2d4d161f26
am:
fc5558cacf
Change-Id: I66c66a79cacf7a69a5609b696bcd31eff7c0cb15
Aart Bik [Fri, 21 Apr 2017 20:11:17 +0000 (20:11 +0000)]
Merge "ARM64: Improve SIMD LDR/STR." am:
1cd51da49c
am:
f099e8b163
Change-Id: I9a7f77ddbc8734b7109c9478cd441b7c150c8af2
Aart Bik [Fri, 21 Apr 2017 20:08:45 +0000 (20:08 +0000)]
Merge "Factor vector unary/binary shared code out into superclass."
am:
2d4d161f26
Change-Id: Id8d7c292409c83bc6c6fa578da90ad44f5af6708
Aart Bik [Fri, 21 Apr 2017 20:08:16 +0000 (20:08 +0000)]
Merge "ARM64: Improve SIMD LDR/STR."
am:
1cd51da49c
Change-Id: I66328344fa4346c5a30f8f4f0a0b036bf726becb
Treehugger Robot [Fri, 21 Apr 2017 20:01:32 +0000 (20:01 +0000)]
Merge "Factor vector unary/binary shared code out into superclass."
Aart Bik [Fri, 21 Apr 2017 20:00:37 +0000 (20:00 +0000)]
Merge "ARM64: Improve SIMD LDR/STR."
Andreas Gampe [Fri, 21 Apr 2017 19:06:04 +0000 (19:06 +0000)]
Merge changes I6ff2d6f8,I8f60f116 am:
6b8b075211
am:
37c1413ab2
Change-Id: I8c69f9afc9d51aa838f0541794962240602913e5
Andreas Gampe [Fri, 21 Apr 2017 19:05:44 +0000 (19:05 +0000)]
Merge changes from topic 'art_move_inline_method_anlyzer_to_compiler' am:
e0ffd22714
am:
5337d69ccb
Change-Id: I888c2e85e950222f8c75df6648b181163fa1b2ba
Andreas Gampe [Fri, 21 Apr 2017 19:02:10 +0000 (19:02 +0000)]
Merge changes I6ff2d6f8,I8f60f116
am:
6b8b075211
Change-Id: Iec665a5733bb2da0a926317e732382f7993489f9
Andreas Gampe [Fri, 21 Apr 2017 19:01:43 +0000 (19:01 +0000)]
Merge changes from topic 'art_move_inline_method_anlyzer_to_compiler'
am:
e0ffd22714
Change-Id: I697f4a9bb76b30c76af15fa1da20dc222c9bf12c
Treehugger Robot [Fri, 21 Apr 2017 18:57:25 +0000 (18:57 +0000)]
Merge changes I6ff2d6f8,I8f60f116
* changes:
ART: Clean up art_field.h
ART: Clean up art_method.h
Treehugger Robot [Fri, 21 Apr 2017 18:56:17 +0000 (18:56 +0000)]
Merge changes from topic 'art_move_inline_method_anlyzer_to_compiler'
* changes:
ART: Clean up InlineMethodAnalyzer
ART: Move InlineMethodAnalyzer into compiler
Calin Juravle [Fri, 21 Apr 2017 18:50:42 +0000 (18:50 +0000)]
Merge "Ignore the optimized location passed to DexFile.loadDex()" am:
2a9dc4dcc5
am:
90a9c1d00a
Change-Id: I47ccd8953c4f1dd783325de612e3074322df7559
Calin Juravle [Fri, 21 Apr 2017 18:48:12 +0000 (18:48 +0000)]
Merge "Ignore the optimized location passed to DexFile.loadDex()"
am:
2a9dc4dcc5
Change-Id: I1bfa09f8fb6718f83d928eb85088e0231fccfc3e
Calin Juravle [Fri, 21 Apr 2017 18:41:23 +0000 (18:41 +0000)]
Merge "Ignore the optimized location passed to DexFile.loadDex()"
Aart Bik [Fri, 21 Apr 2017 16:42:01 +0000 (09:42 -0700)]
Factor vector unary/binary shared code out into superclass.
Test: test-art-target, test-art-host
Change-Id: I42770d9a9142f2e53d3b5bd60bd25593b2154a7c
Mathieu Chartier [Fri, 21 Apr 2017 16:46:01 +0000 (16:46 +0000)]
Merge "Store java_lang_Object_ in the flip callback" am:
9bb7ab6750
am:
20e7d03d7d
Change-Id: Ic5b74f775ea34b5ccfd5b98bbf11ca8da546787c
Mathieu Chartier [Fri, 21 Apr 2017 16:42:30 +0000 (16:42 +0000)]
Merge "Store java_lang_Object_ in the flip callback"
am:
9bb7ab6750
Change-Id: Ib86a5c6905f8bfe9a5453ee187ab14dc842a0f5f
Artem Serov [Wed, 19 Apr 2017 14:43:53 +0000 (15:43 +0100)]
ARM64: Improve SIMD LDR/STR.
Test: 640-checker-*-simd
Test: test-art-target, test-art-host
Change-Id: I2bcdef3f5cb7c0e7d1b3d02910fbf89ac694d89a
Andreas Gampe [Fri, 21 Apr 2017 03:07:21 +0000 (20:07 -0700)]
ART: Clean up InlineMethodAnalyzer
Remove dead code.
Test: m test-art-host
Change-Id: If86503fde2a77279a3169144bcae700101d81784
Andreas Gampe [Fri, 21 Apr 2017 02:43:21 +0000 (19:43 -0700)]
ART: Move InlineMethodAnalyzer into compiler
Move the infrastructure, which is now only used by the compiler.
Test: mmma art
Change-Id: I4a61e35f23736b226523d7349f49208ad852ad2f
Mathieu Chartier [Fri, 21 Apr 2017 16:34:44 +0000 (16:34 +0000)]
Merge "Store java_lang_Object_ in the flip callback"
Mathieu Chartier [Fri, 21 Apr 2017 02:28:54 +0000 (19:28 -0700)]
Store java_lang_Object_ in the flip callback
There was a race where the GC thread would not have is_marking =
true, and call
WellKnownClasses::ToClass(WellKnownClasses::java_lang_Object). This
meant that the returned class was maybe in the from-space for the
no image case. The fix was to move this decoding into the flip
callback since this callback is called before flipping any thread
roots.
Bug:
37531237
Bug:
12687968
Test: test-art-host
Change-Id: I9a09249e9c6ea2b3b124e957a9e4b61017869306
Andreas Gampe [Fri, 21 Apr 2017 05:53:58 +0000 (22:53 -0700)]
ART: Clean up art_field.h
Clean up the header. Fix up other headers including the -inl file,
in an effort to prune the include graph. Fix broken transitive
includes by making includes explicit.
Test: m
Change-Id: I6ff2d6f89b741d8188e19426eccf4743fec688fc
Andreas Gampe [Thu, 2 Feb 2017 00:46:28 +0000 (16:46 -0800)]
ART: Clean up art_method.h
Clean up the header. Fix up other headers including the -inl file,
in an effort to prune the include graph. Fix broken transitive
includes by making includes explicit. Introduce new -inl files
for method handles and reference visiting.
Test: source build/envsetup.sh && lunch aosp_angler-userdebug && mmma art
Test: source build/envsetup.sh && lunch aosp_mips64-userdebug && mmma art
Change-Id: I8f60f1160c2a702fdf3598149dae38f6fa6bc851
Vladimir Marko [Fri, 21 Apr 2017 14:33:25 +0000 (14:33 +0000)]
Merge "Fix verifier crash on abstract final class." am:
d68677c5fd
am:
4d32c69622
Change-Id: Ia92526ea0cbeee6738cf07b5c620ffa7007214af
Vladimir Marko [Fri, 21 Apr 2017 14:29:24 +0000 (14:29 +0000)]
Merge "Fix verifier crash on abstract final class."
am:
d68677c5fd
Change-Id: I8a6c1791532318a96844cc49c708a99b7283bb8c
Treehugger Robot [Fri, 21 Apr 2017 14:24:57 +0000 (14:24 +0000)]
Merge "Fix verifier crash on abstract final class."
Vladimir Marko [Fri, 21 Apr 2017 12:31:41 +0000 (13:31 +0100)]
Fix verifier crash on abstract final class.
Remove a check for erroneous class. It should not matter to
the verifier whether the class is just resolved, initialized
or resolved erroneous. The check was also inherently racy
and could yield different behavior based on the timing of
the verification.
Test: 161-final-abstract-class
Test: testrunner.py --host
Bug:
37248840
Change-Id: Ic4d964050bbe52e3de4438ada9e75676956cb6b4
Vladimir Marko [Fri, 21 Apr 2017 11:26:12 +0000 (11:26 +0000)]
Merge "Reuse DexCache and ClassLoader handles in inliner." am:
6d3c61d8c6
am:
786a563287
Change-Id: I743e63c0c00946fa354686ec13d072c30dd66370
Vladimir Marko [Fri, 21 Apr 2017 11:23:41 +0000 (11:23 +0000)]
Merge "Reuse DexCache and ClassLoader handles in inliner."
am:
6d3c61d8c6
Change-Id: I2815484428676b663bc53bc45c5818ab19e3eab2
Treehugger Robot [Fri, 21 Apr 2017 11:17:46 +0000 (11:17 +0000)]
Merge "Reuse DexCache and ClassLoader handles in inliner."
Vladimir Marko [Thu, 20 Apr 2017 18:50:32 +0000 (19:50 +0100)]
Reuse DexCache and ClassLoader handles in inliner.
Measured memory usage with heaptrack for a large app:
Before:
bytes allocated in total (ignoring deallocations): 3.14GB
calls to allocation functions:
8130596
After:
bytes allocated in total (ignoring deallocations): 3.12GB
calls to allocation functions:
7750377
Test: testrunner.py --host
Bug:
34053922
Change-Id: I1ad7aaffccc6527cd4f409ca8fca75bab8d7439a
Nicolas Geoffray [Fri, 21 Apr 2017 08:08:00 +0000 (08:08 +0000)]
Merge "Handle catch phis in code sinking." am:
d1a05c9088
am:
7a717284ab
Change-Id: I8169f02159771093821441cf774eb75ec107a77f
Nicolas Geoffray [Fri, 21 Apr 2017 08:05:31 +0000 (08:05 +0000)]
Merge "Handle catch phis in code sinking."
am:
d1a05c9088
Change-Id: Ic74f2072db754e34874cc30efa1b086db9e8d411
Nicolas Geoffray [Fri, 21 Apr 2017 07:59:53 +0000 (07:59 +0000)]
Merge "Handle catch phis in code sinking."
Alex Light [Fri, 21 Apr 2017 00:57:30 +0000 (00:57 +0000)]
Merge changes If234ff55,I2d83fc46,I5ad78a15 am:
bdbc63b892
am:
8f06eed516
Change-Id: If6bb63d301c977b42762945827daa1befca85611
Alex Light [Fri, 21 Apr 2017 00:54:32 +0000 (00:54 +0000)]
Merge changes If234ff55,I2d83fc46,I5ad78a15
am:
bdbc63b892
Change-Id: Ibeb3ccf9a0d902206b7f5e979eb48df572ec259f
Treehugger Robot [Fri, 21 Apr 2017 00:49:23 +0000 (00:49 +0000)]
Merge changes If234ff55,I2d83fc46,I5ad78a15
* changes:
Be able to run jvmti-stress on RI
Do native method bind in jvmti-stress
Agent libraries need to be searched for JNI functions
Alex Light [Thu, 20 Apr 2017 22:54:25 +0000 (15:54 -0700)]
Be able to run jvmti-stress on RI
This is useful for testing.
When running on RI no class redefinition is performed.
Test: ./test/run-test --dev --jvm --jvmti-stress 001-HelloWorld
Test: ./test/run-test --dev --jvm --jvmti-stress 902
Test: ./test/run-test --dev --jvm --jvmti-stress 986
Change-Id: If234ff553bf136312c5128d03b02b28f4ff94e3d
Mathieu Chartier [Thu, 20 Apr 2017 22:57:53 +0000 (22:57 +0000)]
Merge "Improve VerifyNoFromSpaceRefsObjectVisitor logging" am:
4e34bd1902
am:
d87b7c4797
Change-Id: I6733095249d8ab66492c081d341c143525ddaa2b
Mathieu Chartier [Thu, 20 Apr 2017 22:52:23 +0000 (22:52 +0000)]
Merge "Improve VerifyNoFromSpaceRefsObjectVisitor logging"
am:
4e34bd1902
Change-Id: I448235c47699e613748300e6f42ab36ed56d1fa4
Alex Light [Thu, 20 Apr 2017 20:35:05 +0000 (13:35 -0700)]
Do native method bind in jvmti-stress
Extend the jvmti-stress test suite to intercept the NativeMethodBind
event for every method.
Also fix small issue where we tried to add a local reference to a null
thread in ti_method.cc if we had an event trigger before VMInit.
Test: ./test/testrunner/testrunner.py --host --jvmti-stress -j40
Bug:
37432636
Change-Id: I2d83fc460b18edf035ed7296b8e2b06cff3671e5
Alex Light [Thu, 20 Apr 2017 16:15:08 +0000 (09:15 -0700)]
Agent libraries need to be searched for JNI functions
This makes agent libraries the option of last resort for native
method implementations. This will allow one to not need to manually
link all native methods in an agent library.
Bug:
37522517
Bug:
37432636
Test: ./test.py --host -j40
Change-Id: I5ad78a15e7e2799d2a877c5d603342899e2a1bd1
Treehugger Robot [Thu, 20 Apr 2017 22:43:05 +0000 (22:43 +0000)]
Merge "Improve VerifyNoFromSpaceRefsObjectVisitor logging"
Mathieu Chartier [Thu, 20 Apr 2017 20:31:39 +0000 (13:31 -0700)]
Improve VerifyNoFromSpaceRefsObjectVisitor logging
Remove read barriers in PrettyTypeOf to prevent recursive failures.
Pass down holder and offset information to
VerifyNoFromSpaceRefsFieldVisitor.
Test: test-art-host
Bug:
37531237
Change-Id: I704ec18ebecfc1ca2982b38f67a2f0788e59dfe9
Aart Bik [Thu, 20 Apr 2017 17:41:03 +0000 (17:41 +0000)]
Merge "ARM64: Support MultiplyAccumulate for SIMD." am:
f99f62f8e0
am:
1750304d47
Change-Id: Ibf3de88a36811109bafe5cd9810f5ecff2a593ce
Aart Bik [Thu, 20 Apr 2017 17:37:00 +0000 (17:37 +0000)]
Merge "ARM64: Support MultiplyAccumulate for SIMD."
am:
f99f62f8e0
Change-Id: I581cb93c050d5e0344a2613e81836d57a6665c70
Aart Bik [Thu, 20 Apr 2017 17:28:00 +0000 (17:28 +0000)]
Merge "ARM64: Support MultiplyAccumulate for SIMD."
Mathieu Chartier [Thu, 20 Apr 2017 17:01:57 +0000 (17:01 +0000)]
Merge changes from topic 'partial_tlab' am:
4c408ca726
am:
db1ee01c9b
Change-Id: I5314c4fbd25aa1f6b223c2aa56a9724730a5123d
Mathieu Chartier [Thu, 20 Apr 2017 16:56:58 +0000 (16:56 +0000)]
Merge changes from topic 'partial_tlab'
am:
4c408ca726
Change-Id: I7af86c0bedb0f3c4babd8bba3bd46acf8225d63f
Mathieu Chartier [Thu, 20 Apr 2017 16:47:51 +0000 (16:47 +0000)]
Merge changes from topic 'partial_tlab'
* changes:
Fix some gtests
Use partial TLAB regions
Nicolas Geoffray [Thu, 20 Apr 2017 14:19:46 +0000 (15:19 +0100)]
Handle catch phis in code sinking.
When the user of an instruction we want to sink is a catch
phi, we should not look at predecessors (which don't map 1-1
for catch phis), but can only look at its dominator.
bug:
37247890
Test: 647-sinking-catch
Change-Id: Ib64bd6f95d3ef45c394137e76819fa8d7d3d960a
Vladimir Marko [Thu, 20 Apr 2017 15:25:50 +0000 (15:25 +0000)]
Merge "Add descriptor validation to ClassLinker::FindClass()." am:
38870a8a27
am:
404d562547
Change-Id: I36f5c055a894abae61682ac123a186132d7a5c1a
Vladimir Marko [Thu, 20 Apr 2017 15:23:21 +0000 (15:23 +0000)]
Merge "Add descriptor validation to ClassLinker::FindClass()."
am:
38870a8a27
Change-Id: Iffc3aed0a5fc54dac5a36518faf416724a03266f
Treehugger Robot [Thu, 20 Apr 2017 15:16:44 +0000 (15:16 +0000)]
Merge "Add descriptor validation to ClassLinker::FindClass()."
Vladimir Marko [Thu, 20 Apr 2017 10:26:03 +0000 (11:26 +0100)]
Add descriptor validation to ClassLinker::FindClass().
And add tests for odd signatures passed to JNI GetFieldID().
Previously, passing the signature "java/lang/String" instead
of "Ljava/lang/String;" would call the class loader with the
dot name java.lang.String and the class loader would find
that class only to fail the DescriptorEquals() check back
in ClassLinker::FindClass().
Test: 647-jni-get-field-id
Bug:
33577836
Bug:
37156832
Change-Id: I6612a272ec24b0d54b728fd35003e9c24a7e2e95
Nicolas Geoffray [Thu, 20 Apr 2017 12:39:08 +0000 (12:39 +0000)]
Merge "Fix fault_handler with heap poisoning." am:
aa03f6fa38
am:
92f47fb522
Change-Id: I4ea97ec3c2ba52dd274e1e3e85738d0bb7b740c3
Nicolas Geoffray [Thu, 20 Apr 2017 12:36:09 +0000 (12:36 +0000)]
Merge "Fix fault_handler with heap poisoning."
am:
aa03f6fa38
Change-Id: I8acd9d6f7129c1034c34e1722ac35e5a14d3f3df
Nicolas Geoffray [Thu, 20 Apr 2017 12:32:48 +0000 (12:32 +0000)]
Merge "Fix fault_handler with heap poisoning."
Nicolas Geoffray [Thu, 20 Apr 2017 11:50:13 +0000 (12:50 +0100)]
Fix fault_handler with heap poisoning.
test: test-art-host
Change-Id: Ifeb3d5ff4cfdcb703d5874bca90c9c1438d86f08
Nicolas Geoffray [Thu, 20 Apr 2017 11:10:33 +0000 (11:10 +0000)]
Merge "Vdex: Workaround arrays with erroneous component type." am:
de9e54abcf
am:
a629563348
Change-Id: I7d1021243fe0f45cb9428976bee077cc85925ccc
Nicolas Geoffray [Thu, 20 Apr 2017 11:08:03 +0000 (11:08 +0000)]
Merge "Vdex: Workaround arrays with erroneous component type."
am:
de9e54abcf
Change-Id: Ide0f8c117fc1f7406966bea73e88009eca21bc3d
Treehugger Robot [Thu, 20 Apr 2017 11:01:32 +0000 (11:01 +0000)]
Merge "Vdex: Workaround arrays with erroneous component type."
Nicolas Geoffray [Wed, 19 Apr 2017 12:50:34 +0000 (13:50 +0100)]
Vdex: Workaround arrays with erroneous component type.
The assignability DCHECK is only reliable when classes are not
erroneous. For arrays whose component type could be erroneous,
the verifier can join types even if they're not assignable.
bug:
33770646
Test: verifier_deps_test
Change-Id: I4ec1b12b2e2c7d5b57b51a64aea381f951a38dcd
Mathieu Chartier [Thu, 20 Apr 2017 06:54:33 +0000 (23:54 -0700)]
Fix some gtests
Forgot to retest.
Test: test-art-host-gtest
Change-Id: I72b07c3872079452a3a01db4fbd2c4ee0060f294
Mathieu Chartier [Wed, 19 Apr 2017 00:46:23 +0000 (17:46 -0700)]
Use partial TLAB regions
Instead of having 256K TLAB regions, have 256K TLABs split into
16K regions. This fixes pathological cases with multithreaded
allocation that caused many GCs since each thread reserving
256K would often bump the counter past the GC start threshold. Now
threads only bump the counter every 16K.
System wide results (average of 5 samples on N6P):
Total GC time 60s after starting shell: 45s -> 24s
Average .Heap PSS 60s after starting shell: 57900k -> 58682k
BinaryTrees gets around 5% slower, numbers are noisy.
Boot time: 13.302 -> 12.899 (average of 100 runs)
Bug:
35872915
Bug:
36216292
Test: test-art-host
(cherry picked from commit
bf48003fa32d2845f2213c0ba31af6677715662d)
Change-Id: I5ab22420124eeadc0a53519c70112274101dfb39
Josh Gao [Thu, 20 Apr 2017 03:11:28 +0000 (03:11 +0000)]
Merge "base: make SafeCopy work on older Linux kernels." am:
8d0f3aaf28
am:
f97911fa01
Change-Id: I35f86968f1d44e28dcd74e6b00d4d22d11da6b3b
Josh Gao [Thu, 20 Apr 2017 03:09:00 +0000 (03:09 +0000)]
Merge "base: make SafeCopy work on older Linux kernels."
am:
8d0f3aaf28
Change-Id: I6542a492d60208b37f4880dc0d92d8ac3e61857d
Treehugger Robot [Thu, 20 Apr 2017 03:04:32 +0000 (03:04 +0000)]
Merge "base: make SafeCopy work on older Linux kernels."
Josh Gao [Wed, 19 Apr 2017 22:44:20 +0000 (15:44 -0700)]
base: make SafeCopy work on older Linux kernels.
process_vm_readv is documented to not split transfer across a single
iovec element, but this appears to not be the case for the newer
kernels we have on our workstations.
Split up transfers across page boundaries, to avoid this. This has the
side effect of limiting the maximum size of a transfer, but 64 pages
ought to be enough for anybody.
Test: safe_copy_test on 3.13.0-101-generic (failing before)
Test: safe_copy_test on 4.4.0-66-generic (still passing)
Change-Id: I6a6dbf0cd2aeaa7eab39f6d41285d46ebd760e30
Artem Serov [Mon, 10 Apr 2017 16:41:46 +0000 (17:41 +0100)]
ARM64: Support MultiplyAccumulate for SIMD.
Test: test-art-host, test-art-target.
Change-Id: I06af8415e15352d09d176cae828163cbe99ae7a7
Colin Cross [Wed, 19 Apr 2017 23:00:12 +0000 (23:00 +0000)]
Merge "Remove obsolete rules to build runtests" am:
6c99499c8a
am:
c55ed0c843
Change-Id: Iff78a4f014c0a6d8888301c3c8455dc220ceeec5
Colin Cross [Wed, 19 Apr 2017 22:58:42 +0000 (22:58 +0000)]
Merge "Remove obsolete rules to build runtests"
am:
6c99499c8a
Change-Id: I5e10478e2ffadec2c0ccad151c49c24e24e05a96
Andreas Gampe [Wed, 19 Apr 2017 22:58:42 +0000 (22:58 +0000)]
Merge changes from topic 'art_run_test_912_cts_refactor' am:
afcec28403
am:
ccaac1364d
Change-Id: I01b0db54a7556a0619b301f8dd8d0c24b823aa57
Andreas Gampe [Wed, 19 Apr 2017 22:56:47 +0000 (22:56 +0000)]
Merge changes from topic 'art_run_test_912_cts_refactor'
am:
afcec28403
Change-Id: Ibda516ad39de9a931e3b4ddc3ecfbeaba01dc719
Colin Cross [Wed, 19 Apr 2017 22:54:19 +0000 (22:54 +0000)]
Merge "Remove obsolete rules to build runtests"
Treehugger Robot [Wed, 19 Apr 2017 22:52:57 +0000 (22:52 +0000)]
Merge changes from topic 'art_run_test_912_cts_refactor'
* changes:
ART: Refactor run-test 912 (3/3)
ART: Refactor run-test 912 (2/3)
ART: Refactor run-test 912 (1/3)
Andreas Gampe [Wed, 19 Apr 2017 20:45:25 +0000 (13:45 -0700)]
ART: Refactor run-test 912 (3/3)
Add run-test Main.
Bug:
32072923
Test: m
Test: art/test/testrunner/testrunner.py -b --host -t 912
Change-Id: I4a4bbe587937d9b87eab77af1a5f05fd4df7f0d4
Andreas Gampe [Wed, 19 Apr 2017 20:43:43 +0000 (13:43 -0700)]
ART: Refactor run-test 912 (2/3)
Move the refactored run-test into place.
Bug:
32072923
Test: m
Change-Id: I170cd1465a3afce3f48a9cbad864eaa5d9fdaacc