OSDN Git Service
Treehugger Robot [Thu, 22 Sep 2016 05:16:42 +0000 (05:16 +0000)]
Merge "Renaming tool: jfuzz"
Treehugger Robot [Thu, 22 Sep 2016 03:43:55 +0000 (03:43 +0000)]
Merge "Make image test multi image"
Mathieu Chartier [Wed, 21 Sep 2016 22:24:18 +0000 (15:24 -0700)]
Make image test multi image
Required for testing multi image layout in future CLs.
Bug:
28640955
Test: clean-oat-host, test-art-host, device booting
(cherry picked from commit
25adcfb7dc81131add3a0a681ae18bced6f7a0e0)
Change-Id: I14809f56e711b4a87e01056c327eddbbd087f4ee
Aart Bik [Wed, 21 Sep 2016 22:45:18 +0000 (15:45 -0700)]
Renaming tool: jfuzz
Test: run_jfuzz_test.py
Change-Id: I0efa31c3f1c30344c796a9077488e7e467d2456e
Treehugger Robot [Thu, 22 Sep 2016 01:06:27 +0000 (01:06 +0000)]
Merge "Get a basic modification of dex file working"
Treehugger Robot [Thu, 22 Sep 2016 00:37:06 +0000 (00:37 +0000)]
Merge "jni: Implement generic JNI support for @CriticalNative/@FastNative"
Treehugger Robot [Wed, 21 Sep 2016 22:55:25 +0000 (22:55 +0000)]
Merge "Reimplement ART_NDEBUG_OPT_FLAG"
Alex Light [Tue, 23 Aug 2016 22:05:12 +0000 (15:05 -0700)]
Get a basic modification of dex file working
This allows the modification of a single classes methods through
transformation. One must ensure that the provided dex file only
contains one function and does not add or remove any methods or fields
and does not change the inheritance hierarchy in any way. The provided
dex file must verify and there must be no frames of the old code
present on any thread. These constraints are not checked or verified.
Breaking them might cause undefined behavior in all parts of the
runtime. Code that has been inlined in any way might not be replaced.
This feature is extremely experimental.
Bug:
31455788
Test: ./test/run-test --host 902-hello-transformation
Change-Id: I35133d24f6cdafdd2af9dc9863e15ba8493fc50e
Treehugger Robot [Wed, 21 Sep 2016 21:55:59 +0000 (21:55 +0000)]
Merge "Implemented first version of java/dex fuzz testing script."
Igor Murashkin [Tue, 13 Sep 2016 22:57:37 +0000 (15:57 -0700)]
jni: Implement generic JNI support for @CriticalNative/@FastNative
Also:
* Extend existing test cases to check generic JNI for the above.
* Re-enable previously blacklisted @CriticalNative JNI run-tests.
Bug:
31400248
Change-Id: I436ed00c8b8880e936a0c3483bc0dc251f0c0ce2
Colin Cross [Wed, 21 Sep 2016 20:23:53 +0000 (13:23 -0700)]
Reimplement ART_NDEBUG_OPT_FLAG
Use ART_NDEBUG_OPT_FLAG or ART_DEBUG_OPT_FLAG to override the default -O
compiler arguments.
Fixes:
31653144
Test: mmma -j art
Test: m -j dex2oat dex2oatd ART_NDEBUG_OPT_FLAG=-O1 ART_DEBUG_OPT_FLAG=-O0
Change-Id: I9d48d94f5e262148ddac5c70068144a645ac9566
Colin Cross [Wed, 21 Sep 2016 19:32:01 +0000 (19:32 +0000)]
Merge "Remove unused build code"
Nicolas Geoffray [Wed, 21 Sep 2016 16:53:31 +0000 (16:53 +0000)]
Merge "Revert "ARM: VIXL32: Add an initial code generator that passes codegen_tests.""
Treehugger Robot [Wed, 21 Sep 2016 16:53:26 +0000 (16:53 +0000)]
Merge "Refactor Dex open methods"
Nicolas Geoffray [Wed, 21 Sep 2016 16:53:03 +0000 (16:53 +0000)]
Revert "ARM: VIXL32: Add an initial code generator that passes codegen_tests."
Failing with:
art/compiler/optimizing/code_generator_arm_vixl.cc:396:47: error: too few arguments to function call, expected 3, have 2
ValidateInvokeRuntime(instruction, slow_path);
This reverts commit
b138dfbd76f9d8b64fb9dbaf1a7c25e2549b2a8c.
Change-Id: Idccfe076f5905ea92ecbe3afbc7c8c64ecda94be
Treehugger Robot [Wed, 21 Sep 2016 16:51:57 +0000 (16:51 +0000)]
Merge "Write VerifierDeps into VDEX."
Roland Levillain [Wed, 21 Sep 2016 16:32:59 +0000 (16:32 +0000)]
Merge "ARM: VIXL32: Add an initial code generator that passes codegen_tests."
Aart Bik [Tue, 20 Sep 2016 21:34:13 +0000 (14:34 -0700)]
Implemented first version of java/dex fuzz testing script.
Test: run_dex_fuzz_test.py
Change-Id: I94bd6c39d8219bcf3ba0150f5537a9690f2820b5
Neil Fuller [Wed, 21 Sep 2016 16:01:56 +0000 (16:01 +0000)]
Merge "Collapse ART's AbstractMethod class into Executable"
David Brazdil [Wed, 14 Sep 2016 14:34:10 +0000 (15:34 +0100)]
Write VerifierDeps into VDEX.
This patch serializes VerifierDeps data and writes them into VDEX.
It also extends the VDEX header with sizes of the DEX and verifier
dependencies sections.
Bug:
30937355
Change-Id: I5aa5fc5eb8678533117138e445b757fa771973fb
David Sehr [Mon, 19 Sep 2016 22:02:18 +0000 (15:02 -0700)]
Refactor Dex open methods
Consolidate dex opening around a simpler single interface in DexFile.
Making this change prior to moving all but the simplest interface out of
dex_file.{cc,h}.
Bug:
22322814
Change-Id: I4c55019912a19a1c90f9022c20f5b8b954fc7a47
Test: test-art-{host,target}
Roland Levillain [Wed, 21 Sep 2016 14:47:03 +0000 (14:47 +0000)]
Merge "Re-enable jsr166.LinkedTransferQueueTest tests on the CC configuration."
Roland Levillain [Wed, 21 Sep 2016 12:48:26 +0000 (13:48 +0100)]
Re-enable jsr166.LinkedTransferQueueTest tests on the CC configuration.
Test: art/tools/run-libcore-tests.sh --mode=host --variant=X32 --debug
Bug:
25883050
Bug:
12687968
Change-Id: I2eb40d70882cb3a6a3b5534c92d37a4b31b89859
Neil Fuller [Thu, 8 Sep 2016 12:43:31 +0000 (13:43 +0100)]
Collapse ART's AbstractMethod class into Executable
After the OpenJDK 8 pull there is now a common base class
for Method and Constructor that can be used instead.
Methods that are abstract on Executable but on Android
were implemented in AbstractMethod are now consistently
renamed to "{method}Internal", declared final and
given package-protected access.
For consistency with all other private, natively
implemented methods, the method getDeclaredAnnotations()
has been renamed getDeclaredAnnotationsNative().
Bug:
28666126
Bug:
31052885
Test: make test-art-host and cts run of CtsLibcoreTestCases
Change-Id: Ibfe6af6a47fe0cfffd0859ffbe58980aeb84e053
David Sehr [Tue, 20 Sep 2016 23:15:18 +0000 (23:15 +0000)]
Merge "Fix the target art method address within a method object"
Colin Cross [Tue, 20 Sep 2016 16:54:58 +0000 (09:54 -0700)]
Remove unused build code
All of the native code in art that used the custom build logic is built
with soong now, remove the make build code, leaving the definitions that
are still used by the test runner.
Test: m -j test-art-host
Test: m -j test-art-target
Change-Id: Iaba34a5c52be007bea153401375f4d0ae3ffce06
Treehugger Robot [Tue, 20 Sep 2016 22:00:19 +0000 (22:00 +0000)]
Merge "Rework logcat handling"
Treehugger Robot [Tue, 20 Sep 2016 21:52:18 +0000 (21:52 +0000)]
Merge "Rename several tests to be easier to read."
Jeff Hao [Tue, 20 Sep 2016 20:56:09 +0000 (20:56 +0000)]
Merge "Dexlayout changes to support offset/size output of items."
Wojciech Staszkiewicz [Fri, 16 Sep 2016 20:44:09 +0000 (13:44 -0700)]
Rework logcat handling
Only extract logs from dex2oat instances that were started by the
correct runtime. This is accomplished by getting pid of runtime
and then filtering logcat output based on dex2oat 'parent PID ='
messages.
Test: bisection_search.py -cp classes.dex --class Test
--expected-output out --device
Change-Id: Ib1a5da6fac1560c57af8245e3a921d10bf464f2a
Jing Ji [Thu, 1 Sep 2016 02:21:37 +0000 (21:21 -0500)]
Fix the target art method address within a method object
The target offset of art method within a method object should
take account of the offset of the image which is declaring this
method.
Bug:
31311504
Change-Id: Id6670dd3436b4bf5fb943d8d6234851fb336a4dc
(cherry picked from commit
1717159b07abefcf59d099bc81158644f0a0bffb)
Test: test-art-{host,target}
Alex Light [Tue, 20 Sep 2016 19:50:37 +0000 (12:50 -0700)]
Rename several tests to be easier to read.
Several tests had their names changed recently for file name length
reasons. This change makes several of the tests have more consistent
and easy to read names.
Bug:
31597671
Test: mma test-art-host
Change-Id: I166f03b604c200256f997c18f7cb091548002777
Vladimir Marko [Tue, 20 Sep 2016 19:00:27 +0000 (19:00 +0000)]
Merge "Change remaining slow path throw entrypoints to save everything."
Colin Cross [Tue, 20 Sep 2016 16:43:36 +0000 (16:43 +0000)]
Merge changes Id749f453,Ie3ce9dd8
* changes:
Always run oatdumps tests
Disable oatdumps device build
Nicolas Geoffray [Tue, 20 Sep 2016 16:41:24 +0000 (16:41 +0000)]
Merge "Make javac always use Java 7 when running tests using javac and dx"
Vladimir Marko [Wed, 14 Sep 2016 15:26:36 +0000 (16:26 +0100)]
Change remaining slow path throw entrypoints to save everything.
Change DivZeroCheck, BoundsCheck and explicit NullCheck
slow path entrypoints to conform to kSaveEverything.
On Nexus 9, AOSP ToT, the boot.oat size reduction is
prebuilt multi-part boot image:
- 32-bit boot.oat: -12KiB (-0.04%)
- 64-bit boot.oat: -24KiB (-0.06%)
on-device built single boot image:
- 32-bit boot.oat: -8KiB (-0.03%)
- 64-bit boot.oat: -16KiB (-0.04%)
Test: Run ART test suite including gcstress on host and Nexus 9.
Test: Manually disable implicit null checks and test as above.
Change-Id: If82a8082ea9ae571c5d03b5e545e67fcefafb163
Treehugger Robot [Tue, 20 Sep 2016 13:48:31 +0000 (13:48 +0000)]
Merge "ARM: Use vstm/vldm for live floating point registers save/restore in SlowPathCode."
Artem Serov [Fri, 15 Jul 2016 13:00:56 +0000 (14:00 +0100)]
ARM: Use vstm/vldm for live floating point registers save/restore in SlowPathCode.
Test: m test-art-target; m test-art-host
Change-Id: Id22271c572bb698728444bef90d5c7487ab84b1a
Treehugger Robot [Tue, 20 Sep 2016 11:08:05 +0000 (11:08 +0000)]
Merge "ARM: Remove extra argument from RUNTIME_CURRENT uses."
Treehugger Robot [Tue, 20 Sep 2016 10:36:22 +0000 (10:36 +0000)]
Merge "ARM: Use stm/ldm for live registers save/restore in SlowPathCode."
Vladimir Marko [Tue, 20 Sep 2016 09:18:53 +0000 (10:18 +0100)]
ARM: Remove extra argument from RUNTIME_CURRENT uses.
Missed this in
https://android-review.googlesource.com/238842
Test: Manually invoke clang as specified in bug
31607479.
Test: Rely on TreeHugger for the rest.
Bug:
31607479
Bug:
29259539
Change-Id: I540f7dcfffec5acb33b91e2bb4e0bb64708378e0
Søren Gjesse [Mon, 19 Sep 2016 09:12:51 +0000 (11:12 +0200)]
Make javac always use Java 7 when running tests using javac and dx
This adds "-source 1.7 -target 1.7" to JAVAC when --build-with-javac-dx
is specified.
Also make sure that dx is not run when --jvm is passed.
Test: art/test/run-test --host --build-with-javac-dx 003-omnibus-opcodes
Test: art/test/run-test --host --build-with-javac-dx 005-annotations
Test: art/test/run-test --host --build-with-javac-dx 023-many-interfaces
Test: art/test/run-test --host --build-with-javac-dx 056-const-string-jumbo
Test: art/test/run-test --host --build-with-javac-dx 091-override-package-private-method
Test: art/test/run-test --host --build-with-javac-dx 111-unresolvable-exception
Test: art/test/run-test --host --build-with-javac-dx 113-multidex
Test: art/test/run-test --host --build-with-javac-dx 124-missing-classes
Test: art/test/run-test --host --build-with-javac-dx 126-miranda-multidex
Test: art/test/run-test --host --build-with-javac-dx 127-checker-secondarydex
Test: art/test/run-test --host --build-with-javac-dx 131-structural-change
Test: art/test/run-test --host --build-with-javac-dx 138-duplicate-classes-check2
Test: art/test/run-test --host --build-with-javac-dx 303-verification-stress
Test: art/test/run-test --host --build-with-javac-dx 551-checker-shifter-operand
Test: art/test/run-test --host --build-with-javac-dx 555-checker-regression-x86const
Test: art/test/run-test --host 003-omnibus-opcodes
Test: art/test/run-test --host 005-annotations
Test: art/test/run-test --host 023-many-interfaces
Test: art/test/run-test --host 056-const-string-jumbo
Test: art/test/run-test --host 091-override-package-private-method
Test: art/test/run-test --host 111-unresolvable-exception
Test: art/test/run-test --host 113-multidex
Test: art/test/run-test --host 124-missing-classes
Test: art/test/run-test --host 126-miranda-multidex
Test: art/test/run-test --host 127-checker-secondarydex
Test: art/test/run-test --host 131-structural-change
Test: art/test/run-test --host 138-duplicate-classes-check2
Test: art/test/run-test --host 303-verification-stress
Test: art/test/run-test --host 551-checker-shifter-operand
Test: art/test/run-test --host 555-checker-regression-x86const
Test: art/test/run-test --jvm 003-omnibus-opcodes
Test: art/test/run-test --jvm 005-annotations
Test: art/test/run-test --jvm 023-many-interfaces
Test: art/test/run-test --jvm 056-const-string-jumbo
Test: art/test/run-test --jvm 091-override-package-private-method
Test: art/test/run-test --jvm 111-unresolvable-exception
Test: art/test/run-test --jvm 113-multidex
Test: art/test/run-test --jvm 124-missing-classes
Test: art/test/run-test --jvm 126-miranda-multidex
Test: art/test/run-test --jvm 127-checker-secondarydex
Test: art/test/run-test --jvm 131-structural-change
Test: art/test/run-test --jvm 138-duplicate-classes-check2
Test: art/test/run-test --jvm 303-verification-stress
Test: art/test/run-test --jvm 551-checker-shifter-operand
Test: art/test/run-test --jvm 555-checker-regression-x86const
Change-Id: I60f8a973c0dd425988abe55223bdef426c772b97
Jeff Hao [Sat, 10 Sep 2016 01:35:01 +0000 (18:35 -0700)]
Dexlayout changes to support offset/size output of items.
- Created offset & size fields for items, initially populated with
values from original dex file.
- Created index field for indexed items in header.
- Created Item objects for StringData and TypeList.
- Created Collections container to hold unique_ptrs for all objects
- Reorganized EncodedArrayItems to make it easier to collect them
- Added relevant annotations-related items to Collections
- Some size calculations and section offsets left as TODO
Bug:
29921113
Test: mm test-art-host-gtest-dexlayout_test
Change-Id: Id812f104c1930a3ee381e885f353a9a49f29ac9b
Treehugger Robot [Tue, 20 Sep 2016 00:37:20 +0000 (00:37 +0000)]
Merge "Increase host frame size limit for SANITIZE_HOST"
Treehugger Robot [Tue, 20 Sep 2016 00:12:51 +0000 (00:12 +0000)]
Merge "Integrate built-in bisection search with runtest"
Aart Bik [Mon, 19 Sep 2016 23:35:23 +0000 (23:35 +0000)]
Merge "Shorten long test names"
Wojciech Staszkiewicz [Mon, 19 Sep 2016 17:06:09 +0000 (10:06 -0700)]
Shorten long test names
Long Android.run-test.mk targets cause testing framework to
misbehave. Issues occur in no-prebuild mode when --output-path
parameter generated by the make system is too long. When this
happens oat generation fails silently in oat_file_assistant.cc
during creation of empty vdex and oat files.
Creation fails because file names, which are as long as absolute path
to source dex file, are longer than 255 characters Linux file name
limit.
Because oat generation fails silently affected tests pass even though
they were effectively ran in interpreter mode, instead of intended
default mode.
This CL shortens test names to be at most 35 characters. This helps
make the tests more reliable.
Test: m test-art-run-test
Bug:
31597671
Change-Id: Ic68408ae0c98ffca0c64ca4f5535f4e683a296f0
Wojciech Staszkiewicz [Thu, 1 Sep 2016 21:43:39 +0000 (14:43 -0700)]
Integrate built-in bisection search with runtest
Adds a --bisection-search switch to run-test. When this switch
is enabled run-test performs bisection bug search for nonchecker
failing tests attempting to find faulty method and optimization.
Adds ART_TEST_BISECTION flag support to Android.run-test.mk.
When this flag is set to true, run-test will run in bisection
search mode.
Bisection search works in no-prebuild mode only.
Test: ART_TEST_BISECTION=true m test-art-run-test
Change-Id: Id2d664a0b35fed366f50a60ce96f1ca6bd123cd4
Colin Cross [Mon, 19 Sep 2016 20:02:47 +0000 (13:02 -0700)]
Always run oatdumps tests
ART_BUILD_HOST_STATIC is meaningless now, the static tools are always
available. Add oatdumpds as a dependency of the host oatdump tests, and
always enable the oatdump static tests.
Test: m -j test-art-host-gtest-oatdump_test
Change-Id: Id749f453f82489dc81a2c9042d3cc3120ea3d308
Colin Cross [Mon, 19 Sep 2016 19:25:31 +0000 (12:25 -0700)]
Increase host frame size limit for SANITIZE_HOST
When SANITIZE_HOST=address, art/test/137-cfi/cfi.cc fails with:
error: stack frame size of 1944 bytes in function 'Java_Main_unwindInProcess'
Increase the frame size when SANITIZE_HOST is set, the same way it is
increased for device builds.
Test: m -j libarttest SANITIZE_HOST=address
Test: run-test --host 137
Change-Id: I08d8492e6629159b0e0306cb9499debbe6bb865c
Colin Cross [Mon, 19 Sep 2016 19:57:18 +0000 (12:57 -0700)]
Disable oatdumps device build
oatdumps is only supposed to build for the host.
Test: mmma -j art
Change-Id: Ie3ce9dd8340bfc226e7f3125491875f9c18b388a
Treehugger Robot [Mon, 19 Sep 2016 20:04:19 +0000 (20:04 +0000)]
Merge "Improve sharpening for read barrier image HLoadClass"
Treehugger Robot [Mon, 19 Sep 2016 19:47:40 +0000 (19:47 +0000)]
Merge "Fix mac build"
Treehugger Robot [Mon, 19 Sep 2016 18:28:07 +0000 (18:28 +0000)]
Merge "Revert "Revert "test: Remove icu cleanup hack"""
Colin Cross [Mon, 19 Sep 2016 17:40:05 +0000 (10:40 -0700)]
Fix mac build
Move darwin disabling to art_test_defaults to disable mac build for
libarttest.
Test: mmma -j art on mac
Change-Id: I972245ddbacea274087d9231e4788bd9f2d6fe6b
Mathieu Chartier [Fri, 16 Sep 2016 21:16:42 +0000 (14:16 -0700)]
Improve sharpening for read barrier image HLoadClass
Handle MarkInBoot image for LoadKind::kReferrersClass. This reduces
read barriers for the boot image if the referring class is in
the boot image.
Only really helps CC case, TODO avoid doing the work for non CC?
ARM64 CC baker boot.oat:
48006064 ->
47916736
Bug:
29516974
Test: test-art-host CC baker
Change-Id: Ibfa0cf0a3b888ad0e53c2d95a38e330b79e7443c
Treehugger Robot [Mon, 19 Sep 2016 17:34:41 +0000 (17:34 +0000)]
Merge "Ensure class is initialized when reading its fields from debugger."
Colin Cross [Mon, 19 Sep 2016 17:12:37 +0000 (17:12 +0000)]
Merge "Convert art runtests to Android.bp"
Colin Cross [Fri, 16 Sep 2016 20:47:21 +0000 (13:47 -0700)]
Convert art runtests to Android.bp
Build the art runtest libraries with Android.bp. The host test
libraries move from out/host/linux-x86/lib[64] to
out/host/linux-x86/nativetest[64], and the device test libraires from
/data/artest/${TARGET_ARCH} to /data/nativetest[64]/art/${TARGET_ARCH},
which requires adding nativetest to the library search path, and fixing
some tests to support multiple entries in library search paths.
Test: m -j test-art-host
Test: m -j test-art-target
Change-Id: I2118a3292f22f275954ddd7cdd4e12287fe47808
Roland Levillain [Mon, 19 Sep 2016 16:59:14 +0000 (16:59 +0000)]
Merge "Remove the `CanTriggerGC` side-effects on a few instructions."
Igor Murashkin [Mon, 19 Sep 2016 16:12:22 +0000 (16:12 +0000)]
Revert "Revert "test: Remove icu cleanup hack""
This reverts commit
3c73829dbd9993b821171cdfe604d69a8330a20b.
Change-Id: Ib911f65456f522d0d8ac732aa3fa646217f126ca
Treehugger Robot [Mon, 19 Sep 2016 16:06:00 +0000 (16:06 +0000)]
Merge "Include `nodes.h` in `nodes_shared.h` to help editing tools."
Aart Bik [Mon, 19 Sep 2016 15:11:36 +0000 (15:11 +0000)]
Merge "Minor induction variable analysis changes."
Roland Levillain [Mon, 19 Sep 2016 14:17:04 +0000 (14:17 +0000)]
Merge "ARM: VIXL32: Implement a disassembler."
Artem Serov [Mon, 11 Jul 2016 09:41:45 +0000 (10:41 +0100)]
ARM: Use stm/ldm for live registers save/restore in SlowPathCode.
In case when there is more than 4 register to save/restore in the
SlowPathCode stm/ldm can save some code size.
Test: m test-art-target; m test-art-host
Change-Id: I2d5b44bab58b67207105302cd7d8ee3300b9040a
Alexandre Rames [Mon, 19 Sep 2016 12:56:18 +0000 (13:56 +0100)]
Include `nodes.h` in `nodes_shared.h` to help editing tools.
This include does not change anything to compilation, but it helps
editing tools (e.g. YouCompleteMe) to show proper error messages when
editing that file.
Test: mma -j40
Change-Id: I5ebd03040cfc90daa41faf85f273a86525207f19
Alexandre Rames [Mon, 19 Sep 2016 12:54:30 +0000 (13:54 +0100)]
Remove the `CanTriggerGC` side-effects on a few instructions.
The side-effect was specified for these instructions as they call
runtime. We now have a list of entrypoints that we know cannot trigger
GC. We can avoid requiring the side-effect for those.
Test: Run ART test suite on Nexus 5X and host.
Change-Id: I0e0e6a4d701ce6c75aff486cb0d1bc7fe2e8dda4
Nicolas Geoffray [Mon, 19 Sep 2016 12:38:05 +0000 (12:38 +0000)]
Merge "MIPS64: Fix overlapping use of "in" & "out" registers."
Treehugger Robot [Mon, 19 Sep 2016 11:41:32 +0000 (11:41 +0000)]
Merge "Move ART_HOST_TEST_DIR to Android.common_test.mk"
Treehugger Robot [Mon, 19 Sep 2016 09:20:18 +0000 (09:20 +0000)]
Merge "MIPS32: Improve storing of constants in fields and array elements"
Treehugger Robot [Mon, 19 Sep 2016 08:30:51 +0000 (08:30 +0000)]
Merge "Revert "test: Remove icu cleanup hack""
Colin Cross [Sun, 18 Sep 2016 00:27:24 +0000 (17:27 -0700)]
Revert "test: Remove icu cleanup hack"
This reverts commit
d4b294c14bd4e1654b276b931ee035b895b8e6cd.
Without this hack, the gCommonICUDataArray seems to
non-deterministically accumulate entries, and sometimes overflows,
causing test failures.
Bug:
31469648
Test: gdb /data/nativetest64/art/arm64/art_runtime_compiler_tests/reflection_test
Change-Id: Ie5a5b7b957de79758a227bfd2919b4cd0155cde8
Treehugger Robot [Sat, 17 Sep 2016 20:29:44 +0000 (20:29 +0000)]
Merge "Remove TypeLookupTable from DexFile."
Nicolas Geoffray [Sat, 17 Sep 2016 13:39:09 +0000 (13:39 +0000)]
Merge "Fix 2ND arch gtest testing."
Dan Willemsen [Sat, 17 Sep 2016 00:11:36 +0000 (17:11 -0700)]
Move ART_HOST_TEST_DIR to Android.common_test.mk
I'm improving Kati's re-run detection, and this $(shell echo $$PPID) now
now causes us to reparse all of the makefiles every time, since it
really does change on each execution. But if you aren't running the ART
tests, this doesn't actually get used.
So punt this over to only executing when you're including the test
runner -- it's not ideal, since you'll be reparsing the makefiles every
time you want to run the tests. Depending on the desired behavior, this
should be able to be implemented without depending on the PID of Kati,
or the test runner can be moved out of the build system, since most of
the builds here have moved to Soong now.
Bug:
30947985
Test: Compare build.ninja before and after this change, only change is
the valgrind-test-art-target* targets.
Test: m -j test-art-host
Change-Id: Ibbc0f20e407bf70bce64d3428be5808d78bdaf91
David Sehr [Fri, 16 Sep 2016 01:13:52 +0000 (18:13 -0700)]
Remove TypeLookupTable from DexFile.
One more step towards removing runtime dependencies from the DexFile
API. This severs the ties to OatFile. Work remains to move MemMap out
of DexFile.
Bug:
22322814
Change-Id: I29e7ad8fd292c7919ed2689dc754b958b88d6819
Test: test-art-host
Aart Bik [Fri, 16 Sep 2016 17:15:19 +0000 (10:15 -0700)]
Minor induction variable analysis changes.
Rationale:
Few extra comments, added replacement of loop control functionality.
All in preparation of bigger loop optimizations CL.
Change-Id: Ie2243c3c8b57b2901654b05fb200e9d80a0cb641
Test: test-art
Aart Bik [Fri, 16 Sep 2016 21:30:54 +0000 (21:30 +0000)]
Merge "Add a comment to dex2oat's parent pid logging"
Nicolas Geoffray [Fri, 16 Sep 2016 15:41:43 +0000 (16:41 +0100)]
Fix 2ND arch gtest testing.
Change-Id: I944feac324c49a95904f69d7b03b072e7150c134
Treehugger Robot [Fri, 16 Sep 2016 17:59:09 +0000 (17:59 +0000)]
Merge "Fix a deadlock in the CC collector."
Treehugger Robot [Fri, 16 Sep 2016 17:23:41 +0000 (17:23 +0000)]
Merge "Move art::Runtime::InitZygote logic from art into frameworks/base."
Treehugger Robot [Fri, 16 Sep 2016 17:07:31 +0000 (17:07 +0000)]
Merge "x86/x86-64: Simplify codegen using helper functions."
Treehugger Robot [Fri, 16 Sep 2016 17:05:16 +0000 (17:05 +0000)]
Merge "Fix build for VerifierDeps gtest on target"
Anton Kirilov [Tue, 6 Sep 2016 12:01:03 +0000 (13:01 +0100)]
ARM: VIXL32: Implement a disassembler.
Test: m test-art-host
Test: m test-art-target
Test: manual comparison with the previous oatdump output
Change-Id: I21ae26406200e455b8b036f53d585ea0b1bd11be
Vladimir Marko [Fri, 16 Sep 2016 10:32:36 +0000 (11:32 +0100)]
x86/x86-64: Simplify codegen using helper functions.
Simplify comparisons and array element address calculations.
Test: m test-art-host
Change-Id: I2a3f54a3638cf4c24d9e3cac83daba47f0723f72
David Brazdil [Fri, 16 Sep 2016 15:33:31 +0000 (16:33 +0100)]
Fix build for VerifierDeps gtest on target
Forgot to specify the target for the .jar file.
Bug:
30937355
Change-Id: Id44bdeb91474d8acfdf9e9144da9a4c9f4c6cf55
Treehugger Robot [Fri, 16 Sep 2016 13:37:32 +0000 (13:37 +0000)]
Merge "Implement VerifierDeps encoding/decoding"
Nicolas Geoffray [Fri, 16 Sep 2016 11:44:23 +0000 (11:44 +0000)]
Merge "Add a phony target for golem."
Nicolas Geoffray [Fri, 16 Sep 2016 11:28:12 +0000 (12:28 +0100)]
Add a phony target for golem.
To cut down on the size of the build.
Change-Id: Ic7dce1f8b73cf234c3e0163a0c03c7e19d9b02e1
Treehugger Robot [Fri, 16 Sep 2016 11:02:13 +0000 (11:02 +0000)]
Merge "Collect verifier dependencies"
David Brazdil [Wed, 14 Sep 2016 10:55:26 +0000 (11:55 +0100)]
Implement VerifierDeps encoding/decoding
This patch implements serialization and deserialization of the data
recorded by VerifierDeps.
Test: m test-art-host-gtest-verifier_deps_test
Bug:
30937355
Change-Id: I19320b8e70d5c5128653d09a5cdb5b6f677a2f2d
David Brazdil [Tue, 6 Sep 2016 13:04:48 +0000 (14:04 +0100)]
Collect verifier dependencies
MethodVerifier tests whether a DEX method is valid w.r.t. the classes
in class path. Since the APK does not change across OTA updates, it
is not necessary to analyze the bytecode again with MethodVerifier,
as long as its dependencies on the class path (which may have changed)
are satisfied.
This patch introduces VerifierDeps, a class path dependency collector,
and adds hooks into MethodVerifier where classes/methods/fields are
resolved and where assignability of types is tested.
Test: m test-art-host-gtest-verifier_deps_test
Bug:
30937355
Change-Id: Iee0b321d772a5c7d1cb471aaa6e13918310b7e2f
Treehugger Robot [Fri, 16 Sep 2016 08:04:15 +0000 (08:04 +0000)]
Merge "test: Remove icu cleanup hack"
Nicolas Geoffray [Fri, 16 Sep 2016 07:57:14 +0000 (07:57 +0000)]
Merge "Fix 32-bit device tests"
Nicolas Geoffray [Fri, 16 Sep 2016 07:55:57 +0000 (07:55 +0000)]
Merge "Fix HOST_PREFER_32_BITS tests"
Colin Cross [Fri, 16 Sep 2016 04:07:29 +0000 (21:07 -0700)]
Fix 32-bit device tests
32-bit tests are installed to /data/nativetest, not /data/nativetest32.
Test: m -j test-art-target-gtest32
Change-Id: I2736d6783dd34550dbfbbe54ffa724cd2b886d8b
Colin Cross [Fri, 16 Sep 2016 03:57:47 +0000 (20:57 -0700)]
Fix HOST_PREFER_32_BITS tests
When HOST_PREFER_32_BITS is set, HOST_ARCH is still x86_64 but art tests
are only built for x86. Use ART_HOST_ARCH, which will be set to x86,
to find the list of host tests.
Test: m -j HOST_PREFER_32_BITS=true test-art-host-gtest32
Change-Id: I11a9e1b5111c3c06139b44e364fdcd04bb8db4c6
Alexey Frunze [Sat, 3 Sep 2016 05:14:06 +0000 (22:14 -0700)]
MIPS32: Improve storing of constants in fields and array elements
Test: booted MIPS32 in QEMU
Test: test-art-target-run-test-optimizing on CI20
Test: test-art-host-gtest
Change-Id: Ifcf8c1e215e3768711c391e8da6f663bba71f8d9
Jeff Hao [Wed, 14 Sep 2016 22:56:35 +0000 (15:56 -0700)]
Ensure class is initialized when reading its fields from debugger.
Bug:
31016523
Test: mm run-jdwp-tests-ri & mm run-jdwp-tests-host
Change-Id: I6bccf8464de7ec1e0c1fdac862cbacf890abede6
Hiroshi Yamauchi [Thu, 15 Sep 2016 02:31:25 +0000 (19:31 -0700)]
Fix a deadlock in the CC collector.
Fix a deadlock between CC GC disabling system weaks and thread attach.
See
31500969#2 for more details.
Bug:
31500969
Bug:
12687968
Test: test-art-host with CC. N9 libartd boot. Ritz EAAC.
Change-Id: Ic9a8bfb1c636643a03f4580b811fe890273576b6