OSDN Git Service
Greg Kaiser [Tue, 6 Sep 2016 04:39:51 +0000 (21:39 -0700)]
LogMessageData: Fix assignment in constructor
The previous code was assigning to the function argument, not
the member variable. Since our member variable is 'const'
we use a helper function to acheive this.
Test: m test-art-host
Change-Id: I11bf7b04297b7b6c0649a87416a7a6e622e2db43
Mathieu Chartier [Fri, 2 Sep 2016 21:32:59 +0000 (21:32 +0000)]
Merge "Use the fast path object size for RosAlloc asm stubs"
Nicolas Geoffray [Fri, 2 Sep 2016 18:43:10 +0000 (18:43 +0000)]
Merge "Remove duplicate entry."
Nicolas Geoffray [Fri, 2 Sep 2016 18:42:22 +0000 (19:42 +0100)]
Remove duplicate entry.
Change-Id: Ic9f172a19adb83028e9d13c8349a732931aec7db
Mathieu Chartier [Thu, 1 Sep 2016 21:06:54 +0000 (14:06 -0700)]
Use the fast path object size for RosAlloc asm stubs
Also address comments. MemAllocTest perf on N5X speedup in the noise.
Bug:
9986565
Test: test-art-host -j32, N5X booting
Change-Id: Ic22ca92aab88b37fd66928949bf11264ee3476dc
Treehugger Robot [Fri, 2 Sep 2016 14:55:29 +0000 (14:55 +0000)]
Merge "Blacklist flaky test."
Treehugger Robot [Fri, 2 Sep 2016 14:52:27 +0000 (14:52 +0000)]
Merge "verifier: Pass ClassDef as a reference"
Treehugger Robot [Fri, 2 Sep 2016 13:41:22 +0000 (13:41 +0000)]
Merge "Cache result of an expensive DCHECK"
David Brazdil [Fri, 2 Sep 2016 13:13:18 +0000 (14:13 +0100)]
verifier: Pass ClassDef as a reference
Tiny refactor. ClassDef should never be null, yet we pass it as
a pointer, check it is not null and dereference everywhere.
Change-Id: Id89a1f599f1289d3cc00846306a890e06e438f88
David Brazdil [Fri, 2 Sep 2016 10:42:48 +0000 (11:42 +0100)]
Cache result of an expensive DCHECK
LiveInterval::AddBackEdgeUses tests whether linear order is well
formed on debug builds. This is expensive and can significantly hinder
compilation times when many back edge uses are added.
This patch moves the IsLinearOrderWellFormed test at the end of
linear order generation.
Bug:
31163119
Change-Id: Ic4fe66bee2055f4b2cb065d9451ad5f21ba00676
Treehugger Robot [Fri, 2 Sep 2016 11:32:29 +0000 (11:32 +0000)]
Merge "Revert "Revert "Refactor writing type lookup tables into OAT"""
David Brazdil [Thu, 1 Sep 2016 16:38:47 +0000 (16:38 +0000)]
Revert "Revert "Refactor writing type lookup tables into OAT""
OatWriter used to write type lookup tables through an mmap of the
DEX section of the OAT file. This approach would not work once the
DEX section is moved into the VDEX file, hence it was rewritten to
write the data through OutputStream.
This reverts commit
b92ba6296d4ef5b9a6674120ffaafde7d2511812.
Test: m test-art-host
Bug:
30937355
Change-Id: Id923f2c8a4f9ce2a3834b9886b4358e1b379b83d
Nicolas Geoffray [Fri, 2 Sep 2016 09:04:52 +0000 (10:04 +0100)]
Blacklist flaky test.
bug:
31258002
Change-Id: Ida80028b0fb49208f4eb4d0ba929800b28574902
Treehugger Robot [Fri, 2 Sep 2016 03:09:44 +0000 (03:09 +0000)]
Merge "Disable the from-space memory protection under debug/gcstress."
Treehugger Robot [Fri, 2 Sep 2016 02:05:00 +0000 (02:05 +0000)]
Merge "ART: Use thread annotation macros from base"
Colin Cross [Fri, 2 Sep 2016 00:16:33 +0000 (00:16 +0000)]
Merge "Remove auto-generated executable list"
Mathieu Chartier [Thu, 1 Sep 2016 23:06:09 +0000 (23:06 +0000)]
Merge "ART: Clean up x86 asm in dex cache entrypoints"
Colin Cross [Thu, 1 Sep 2016 22:29:52 +0000 (22:29 +0000)]
Merge changes Id2bc87dc,I17c191ec
* changes:
Fix naming of libartd-simulator
Fix debug flag ordering
Treehugger Robot [Thu, 1 Sep 2016 22:12:27 +0000 (22:12 +0000)]
Merge "Make 115-native-bridge idempotent"
Colin Cross [Tue, 30 Aug 2016 23:18:42 +0000 (16:18 -0700)]
Remove auto-generated executable list
Keep a list of the useful executables, and use the -host and -target
phony targets to depend on them for build-art-host and build-art-target.
Relanding I8ff4da32a03c219924be7990963e0c3ba90ef316 with fixes to build
the debug versions of executables, which are needed by the tests.
Change-Id: Id941cf5d1a638763cf4cf2bc0412b0782ae21694
Treehugger Robot [Thu, 1 Sep 2016 21:57:41 +0000 (21:57 +0000)]
Merge "MIPS32: Additional bitCount optimizations."
Hiroshi Yamauchi [Thu, 1 Sep 2016 21:27:25 +0000 (14:27 -0700)]
Disable the from-space memory protection under debug/gcstress.
Temporarily for diagnosing the odd memory protection issue on the build
server.
Bug:
31172841
Test: test-art-host with SS and with SS/gcstress.
Change-Id: I915fcdc451ee92b5487c1fcbf8186767830ef1ad
Mathieu Chartier [Thu, 1 Sep 2016 16:42:39 +0000 (16:42 +0000)]
Merge "Clean up art_quick_resolve_string for arm64"
Mathieu Chartier [Thu, 1 Sep 2016 16:34:48 +0000 (16:34 +0000)]
Merge "Faster allocation fast path"
David Brazdil [Thu, 1 Sep 2016 16:01:13 +0000 (16:01 +0000)]
Merge "Revert "Refactor writing type lookup tables into OAT""
David Brazdil [Thu, 1 Sep 2016 16:00:30 +0000 (16:00 +0000)]
Revert "Refactor writing type lookup tables into OAT"
Gtest not happy.
This reverts commit
1a069a5baa78e55dfa95ad989dc137517000b7fd.
Change-Id: Iada7a93c1928f7f61462615f3128c6b50bb21859
David Brazdil [Thu, 1 Sep 2016 15:38:40 +0000 (15:38 +0000)]
Merge "Refactor writing type lookup tables into OAT"
Vladimir Marko [Thu, 1 Sep 2016 15:35:43 +0000 (15:35 +0000)]
Merge "Revert "Re-enable boot image string sharpening.""
Vladimir Marko [Thu, 1 Sep 2016 15:33:04 +0000 (15:33 +0000)]
Revert "Re-enable boot image string sharpening."
The boot image may not contain the target String.
Bug:
20323084
Bug:
31239436
This reverts commit
9ed010e43c729a801089307c55f20f6d4df8271c.
Change-Id: Id299619ff9866bacd5098f76836355878a478042
David Brazdil [Wed, 31 Aug 2016 16:15:12 +0000 (17:15 +0100)]
Refactor writing type lookup tables into OAT
OatWriter used to write type lookup tables through an mmap of the
DEX section of the OAT file. This approach would not work once the
DEX section is moved into the VDEX file, hence it was rewritten to
write the data through OutputStream.
Test: m test-art-host
Bug:
30937355
Change-Id: Id89a680e6e7cbdba47fa7e211a48b92d30a82b29
Vladimir Marko [Thu, 1 Sep 2016 12:40:03 +0000 (12:40 +0000)]
Merge "[MIPS] Fix a mips64 mterp bug."
Vladimir Marko [Thu, 1 Sep 2016 10:17:20 +0000 (10:17 +0000)]
Merge "Constant fold Equal/NotEqual between null and non-null."
Vladimir Marko [Thu, 1 Sep 2016 09:50:44 +0000 (09:50 +0000)]
Merge "Avoid decrementing iterator to std::set<>::begin() in RosAlloc."
Vladimir Marko [Wed, 31 Aug 2016 17:56:04 +0000 (18:56 +0100)]
Avoid decrementing iterator to std::set<>::begin() in RosAlloc.
Avoid undefined behavior in the expression
free_page_runs_.erase(it--);
when it == free_page_runs_.begin().
Also avoid the similar expression
free_page_runs_.erase(it++)
even though it's always well-defined.
In practice, the undefined behavior has no observable
side effects with the std::set<> implementation we use.
Therefore a regression test is not feasible.
Test: m test-art-host
Change-Id: I4bdeb6cdd068fe5da416b0e66953d5620ad5e999
Treehugger Robot [Thu, 1 Sep 2016 03:21:22 +0000 (03:21 +0000)]
Merge "Disable dexlayout_test on target."
Treehugger Robot [Thu, 1 Sep 2016 02:43:38 +0000 (02:43 +0000)]
Merge "Revert "Remove auto-generated executable list""
Mathieu Chartier [Wed, 31 Aug 2016 16:38:40 +0000 (09:38 -0700)]
Faster allocation fast path
Added a new object size field to class, this field contains the
aligned object size if the object is not finalizable and is
initialized. If the object is finalizable or uninitialized the field
is set to some large value that forces the ASM allocators to go slow
path.
Only implemented for region/normal TLAB for now, will add the to
RosAlloc stubs soon.
CC N6P MemAllocTest: 1067 -> 1039 (25 samples)
CC N6P EAAC: 1281 -> 1260 (25 samples)
RAM overhead technically 0 since mirror::Class was not 8 byte aligned
previously. Since the allocators require 8 byte allignment, there
would have been 1 word of padding at the end of the class. If there
was actually 4 extra bytes per class, the system overhead would be
36000 * 4 = 120KB based on old N6P numbers for the number of loaded
classes after boot.
Bug:
9986565
Test: test-art-host CC baker, N6P phone boot and EAAC runs.
Change-Id: I119a87b8cc6c980bff980a0c62f42610dab5e531
Jeff Hao [Thu, 1 Sep 2016 00:56:13 +0000 (17:56 -0700)]
Disable dexlayout_test on target.
Target doesn't have diff to compare output files.
Bug:
29921113
Test: mm test-art-target-gtest-dexlayout_test
Change-Id: I244c0c74214b780676283de1b309978667ff58e3
Colin Cross [Thu, 1 Sep 2016 01:09:57 +0000 (01:09 +0000)]
Revert "Remove auto-generated executable list"
This reverts commit
6cb44d986fc4a5b12c50f8ae8bafe4d58ae81a36.
Change-Id: Ic9b5413069585d8cda6746307c604ecba8515716
Mathieu Chartier [Tue, 30 Aug 2016 16:42:28 +0000 (09:42 -0700)]
Clean up art_quick_resolve_string for arm64
Use ubfx instead of and, add missing cfi directives.
Test: test-art-target-run-test CC baker, N6P phone booting.
Change-Id: I6e0e958fa7d77a37f727a7170f6fe03eecbc7bcc
Andreas Gampe [Wed, 31 Aug 2016 20:53:13 +0000 (13:53 -0700)]
ART: Use thread annotation macros from base
Use thread annotations from libbase. Only leave the two local
definitions.
Test: m
Test: m test-art-host
Change-Id: I55a731e60b995fa6d0fd54a4da50654d6574019d
Colin Cross [Wed, 31 Aug 2016 21:16:22 +0000 (21:16 +0000)]
Merge "Remove auto-generated executable list"
Jeff Hao [Wed, 31 Aug 2016 20:09:58 +0000 (20:09 +0000)]
Merge changes Idfd8ac9f,I3dacb78f
* changes:
Finish dexlayout dumping of dex files and added test.
Add dex file intermediate representation
Treehugger Robot [Wed, 31 Aug 2016 19:59:39 +0000 (19:59 +0000)]
Merge "Fix a check failure in the CC background transition."
Mathieu Chartier [Wed, 31 Aug 2016 19:41:03 +0000 (19:41 +0000)]
Merge "Fix unnecessary read barrier for resolved/initialized allocations"
Treehugger Robot [Wed, 31 Aug 2016 19:37:50 +0000 (19:37 +0000)]
Merge "ART: Use libbase"
Vladimir Marko [Wed, 31 Aug 2016 18:30:22 +0000 (18:30 +0000)]
Merge "Remove workarounds for [D]CHECK()s in constexpr functions."
Jeff Hao [Mon, 29 Aug 2016 21:18:26 +0000 (14:18 -0700)]
Finish dexlayout dumping of dex files and added test.
The test runs dexdump and dexlayout over the first core library jar file
and diffs the output, checking that they're the same. More dex files
will be added later for better coverage.
Bug:
29921113
Test: mm test-art-host-gtest-dexlayout_test
(cherry-picked from commit
a378e88db648cf19e771714dd1059cf3d41d4753)
Change-Id: Idfd8ac9f069885b675a4a2f0c70aef2cbef5a9b8
Andreas Gampe [Wed, 31 Aug 2016 17:49:55 +0000 (17:49 +0000)]
Merge "ART: SHARED_REQUIRES to REQUIRES_SHARED"
Wojciech Staszkiewicz [Wed, 31 Aug 2016 17:12:53 +0000 (10:12 -0700)]
Make 115-native-bridge idempotent
Adds -f flag to ln calls in 115-native-bridge to stop it from failing
when ran multiple times in the same environment.
Test: m test-art-host-run-test-115-native-bridge
Change-Id: I625c9fd3cef5900eece3b311be6592c615e80ab0
David Sehr [Sun, 7 Aug 2016 23:01:51 +0000 (16:01 -0700)]
Add dex file intermediate representation
Add an intermediate representation, constructed from the DexFile
utilities, that can be used to optimize the layout and re-emit dex
files.
BUG:
29921113
TEST: TODO: Add dex files to compare output with dexdump
(cherry-picked from commit
af14d9f551e6169c201dc7981d9cfbcb53c7d2c7)
Change-Id: I3dacb78fad5228e43d77f20b110bd40e0e116cdb
Vladimir Marko [Wed, 31 Aug 2016 14:25:25 +0000 (15:25 +0100)]
Remove workarounds for [D]CHECK()s in constexpr functions.
We're now using C++14, so we can use [D]CHECK()s directly
in constexpr functions. Remove the C++11 workaround macros
([D]CHECK_CONSTEXPR) and C++ version checks. Also remove the
'static' qualifier from inline functions in affected files.
Test: m test-art-host
Change-Id: I0f962ad75e4efe9b65325d022cd272b229574222
Vladimir Marko [Wed, 31 Aug 2016 11:18:20 +0000 (12:18 +0100)]
Constant fold Equal/NotEqual between null and non-null.
Test: Add new test cases to 442-checker-constant-folding.
Test: m test-art-host
Change-Id: I14509d5e13d30a66b3c2ac3d76d514f58501c9ab
Vladimir Marko [Wed, 31 Aug 2016 13:17:44 +0000 (13:17 +0000)]
Merge "MIPS32: Fill branch delay slots"
Vladimir Marko [Wed, 31 Aug 2016 13:16:57 +0000 (13:16 +0000)]
Merge "Re-enable boot image string sharpening."
Roland Levillain [Wed, 31 Aug 2016 09:41:23 +0000 (09:41 +0000)]
Merge "Add entrypoint type information."
Hiroshi Yamauchi [Wed, 31 Aug 2016 00:44:41 +0000 (17:44 -0700)]
Fix a check failure in the CC background transition.
If there's a process state update from jank perceptible to jank
in-perceptible and a reverse update right after it, there's a chance
that the heap task daemon sees desired_collector_type ==
kCollectorTypeCC rather than kCollectorTypeCCBackground in
DoPendingCollectorTransition() which leads to a !kUseReadBarrier check
failure in TransitionCollector(). The fix is to move this check after
the early return case where collector_type == collector_type_ in
TransitionCollector() like the CMS/Hspace case.
Bug:
31039431
Bug:
12687968
Test: test-art-host, aosp boot with CC, master boot with CC.
Change-Id: I5fe34cb41eaa01c6d8bf80a185253fde6778e852
Colin Cross [Tue, 30 Aug 2016 23:18:42 +0000 (16:18 -0700)]
Remove auto-generated executable list
Keep a list of the useful executables, and use the -host and -target
phony targets to depend on them for build-art-host and build-art-target.
Change-Id: I8ff4da32a03c219924be7990963e0c3ba90ef316
Andreas Gampe [Tue, 30 Aug 2016 23:38:47 +0000 (16:38 -0700)]
ART: SHARED_REQUIRES to REQUIRES_SHARED
This coincides with the actual attribute name and upstream usage.
Preparation for deferring to libbase.
Test: m
Test: m test-art-host
Change-Id: Ia8986b5dfd926ba772bf00b0a35eaf83596d8518
Alexey Frunze [Sat, 30 Jul 2016 05:04:46 +0000 (22:04 -0700)]
MIPS32: Fill branch delay slots
Test: booted MIPS32 in QEMU
Test: test-art-host-gtest
Test: test-art-target-gtest
Test: test-art-target-run-test-optimizing on CI20
Change-Id: I727e80753395ab99fff004cb5d2e0a06409150d7
Mathieu Chartier [Tue, 30 Aug 2016 22:06:54 +0000 (15:06 -0700)]
Fix unnecessary read barrier for resolved/initialized allocations
The caller is responsible for the read barrier for these entrypoints.
No measured change in benchmarks, tested MemAllocTest.
Bug:
12687968
Test: test-art-host CC baker, N6P booting with CC
Change-Id: If6b00fa2c31ff51b943dbbe6caea2ef0a3fa1ae0
Colin Cross [Tue, 30 Aug 2016 22:45:06 +0000 (15:45 -0700)]
Fix naming of libartd-simulator
Change-Id: Id2bc87dc31a4db0435b50997b54342b0d0cc4599
Colin Cross [Tue, 30 Aug 2016 22:41:08 +0000 (15:41 -0700)]
Fix debug flag ordering
art_debug_defaults needs to come first in the defaults list so that its
prepended flags come after the art_defaults flags.
-Wno-frame-larger-than= also needs to be inside a target block to match the
way the -Wframe-larger-than= flags are inserted by art.go so that they
come after.
Change-Id: I17c191ec9dcc393db1e0805cd058c768e4d09400
Christina Wadsworth [Thu, 25 Aug 2016 20:23:01 +0000 (13:23 -0700)]
ART: Clean up x86 asm in dex cache entrypoints
Change-Id: Icc315d1d5da16cc67eee3c0557cae5781623f3b6
Test: test-art-host
Vladimir Marko [Tue, 30 Aug 2016 16:36:24 +0000 (17:36 +0100)]
Re-enable boot image string sharpening.
Test: Run ART test suite with ART_TEST_PIC_IMAGE=true on host and Nexus 9.
Bug:
20323084
Change-Id: Ifc10e4b6f5078f599711bd84be0cec53494af3af
Chris Larsen [Thu, 14 Apr 2016 23:16:29 +0000 (16:16 -0700)]
MIPS32: Additional bitCount optimizations.
The original algorithm computed the 64-bit bitCount by counting the
bits in two 32-bit words (sort of) in parallel. It was recognized that
at some point the subtotals for the words could be added reducing the
total number of operations to count the set bits for the original
64-bit input value. Doing so not only reduced the number of
instructions needed for the computation but also eliminated one
multiply instruction, and, typically, multiply instructions are multi-
cycles instructions.
Test: Boot MIPS32 QEMU and run 564-checker-bitcount tests.
Change-Id: Ifcbb56812a02a91ac1777543448b207ec0e1e5a6
Treehugger Robot [Tue, 30 Aug 2016 17:15:26 +0000 (17:15 +0000)]
Merge "Save environment snapshot and use at fork/exec"
David Sehr [Wed, 17 Aug 2016 02:22:57 +0000 (19:22 -0700)]
Save environment snapshot and use at fork/exec
Some applications may inadvertently or maliciously set of environment
variables such as LD_LIBRARY_PATH before spawning subprocesses.
To make this more difficult, save the environment at the time the
runtime starts and use the saved copy anytime Exec is called.
BUG:
30160149
TEST: make test-art-{host,target}
Change-Id: I887b78bdb21ab20855636a96da14a74c767bbfef
Chih-hung Hsieh [Tue, 30 Aug 2016 16:20:55 +0000 (16:20 +0000)]
Merge "Fix clang-tidy warnings in art."
Neil Fuller [Tue, 30 Aug 2016 14:26:34 +0000 (14:26 +0000)]
Merge "Track addition of Class.toGenericString() method"
Neil Fuller [Tue, 23 Aug 2016 13:32:21 +0000 (14:32 +0100)]
Track addition of Class.toGenericString() method
Increasing the vtable size for class by one.
Bug:
28666126
Change-Id: I89019d5f1b65725180b409decbd5b2570e24f5fe
Test: cts ran for libcore (libcore, harmony_java_lang, org) and host art tests.
Mathieu Chartier [Tue, 30 Aug 2016 00:14:53 +0000 (00:14 +0000)]
Merge "Re-enable evacuation of recently allocated regions"
Douglas Leung [Fri, 26 Aug 2016 22:25:31 +0000 (15:25 -0700)]
[MIPS] Fix a mips64 mterp bug.
The bug was causing adb install to get a java exception for Mips64.
Change-Id: Ia1b9f11a5896e4018db80fc68381adfedf9e7c00
Andreas Gampe [Mon, 29 Aug 2016 16:53:48 +0000 (09:53 -0700)]
ART: Use libbase
Move to using standard macros from libbase. Required so that we
can use libbase in libart-disassembler to disconnect from libart.
Bug:
15436106
Test: m
Test: m ART_BUILD_HOST_STATIC=true
Test: m test-art-host
Change-Id: I1f1723d875d20689d73835f6ab78c27a8efcf27a
Treehugger Robot [Mon, 29 Aug 2016 19:51:04 +0000 (19:51 +0000)]
Merge "ART: Fix libnativebridgetest dependencies"
Treehugger Robot [Mon, 29 Aug 2016 18:27:39 +0000 (18:27 +0000)]
Merge "ART: Fix symbols"
Andreas Gampe [Mon, 29 Aug 2016 18:18:37 +0000 (11:18 -0700)]
ART: Fix libnativebridgetest dependencies
Fix typo.
Test: m test-art-host
Change-Id: I1a272a8aa2a114c108cc306164df78f568be20d7
Mathieu Chartier [Sat, 27 Aug 2016 20:27:06 +0000 (13:27 -0700)]
Re-enable evacuation of recently allocated regions
Reduces RAM since these regions usually have a low live % per
the generational hypothesis. Since these get collected earlier it
means the average heap size goes down.
60s after booting N6P CC before (average of 8 samples):
Dalvik .Heap PSS system wide: 28711K
After:
Dalvik .Heap PSS system wide: 18757.5K
EAAC: 1305 -> 1274 (30 samples)
Test: test-art-host CC baker and debug phone bootin
Bug:
12687968
Bug:
30124683
Change-Id: I30465be4525855ee3b78e6fafa5577a78d365bf4
Andreas Gampe [Mon, 29 Aug 2016 15:51:15 +0000 (08:51 -0700)]
ART: Fix symbols
Follow-up to
1f7f3bd26ecad4366c904b7e7d05587fc7a83ea2
Test: m test-art-host
Test: readelf -s $OUT/system/lib/libart.so
Change-Id: I70b25bf65e09eb984d0f533fa19638ffbec12b3c
Treehugger Robot [Mon, 29 Aug 2016 09:46:02 +0000 (09:46 +0000)]
Merge "Revert "Blacklist failing libcore tests.""
Narayan Kamath [Wed, 24 Aug 2016 08:16:23 +0000 (08:16 +0000)]
Revert "Blacklist failing libcore tests."
This reverts commit
fb7658b728690592938dfedc57231ade4e7bd870.
Fixed by commit
856bdfb2bd47e91950182d0c1427944e8e2ab771
Change-Id: I5977cc63f867c51c62de61dbed64cdb444d0dfbf
bug:
30917411
test: run cts -c org.apache.harmony.tests.java.math.BigIntegerTest
Mathieu Chartier [Sat, 27 Aug 2016 20:19:40 +0000 (20:19 +0000)]
Merge "WIP: ART: Clean p x86_64 string dex cache asm."
Mathieu Chartier [Sat, 27 Aug 2016 20:19:10 +0000 (20:19 +0000)]
Merge "ART: Add STRING_DEX_CACHE_ELEMENT_SIZE"
Chih-Hung Hsieh [Fri, 26 Aug 2016 22:06:11 +0000 (15:06 -0700)]
Fix clang-tidy warnings in art.
* Add parentheses around macro parameters, or
use NOLINT to suppress warning.
Bug:
28705665
Test: build with WITH_TIDY=1
Change-Id: Ifc922c2e66215772042bac372754ea70074f0053
Pirama Arumuga Nainar [Fri, 26 Aug 2016 22:38:00 +0000 (22:38 +0000)]
Merge "Ignore -Wunreachable-code for ClassTable::UpdateClass"
Pirama Arumuga Nainar [Fri, 26 Aug 2016 06:42:50 +0000 (23:42 -0700)]
Ignore -Wunreachable-code for ClassTable::UpdateClass
Bug: http://b/
30421084
Bug: http://b/
31104323
Clang triggers -Wunreachable-code in runtime/class_table.cc. Disable
the one instance of this warning until we can investigate (and fix) the
Clang regression.
Change-Id: Ib292009c6d639f540d6b31e793d8aa89dd861b9e
Test: Tested build, boot and common usage for several devices images in
AOSP and internal branch.
Treehugger Robot [Fri, 26 Aug 2016 20:22:44 +0000 (20:22 +0000)]
Merge "Fix a race condition on GC timing logger data."
Hiroshi Yamauchi [Fri, 26 Aug 2016 17:39:29 +0000 (10:39 -0700)]
Fix a race condition on GC timing logger data.
The GC timing logger data is thread local to the GC thread and
shouldn't be used by a mutator. The original intention was to have a
systrace scope.
This should fix the 004-JniTest failures.
Bug:
30980189
Bug:
29517059
Bug:
12687968
Test: test-art-host
Change-Id: Ibc8cfbfdd64d85ff65bf220d3022fc8fdf1064f2
Treehugger Robot [Fri, 26 Aug 2016 18:32:23 +0000 (18:32 +0000)]
Merge "Fix ODR violation"
Colin Cross [Fri, 26 Aug 2016 16:59:03 +0000 (09:59 -0700)]
Fix ODR violation
Switch everything to libziparchive instead of libziparchive-host to
prevent ODR violations.
Change-Id: Iadbe6bd22d5560621a5119d0bcc5bb829f476f6f
Treehugger Robot [Fri, 26 Aug 2016 16:19:59 +0000 (16:19 +0000)]
Merge "ARM/MIPS: Avoid dead dex cache arrays base for intrinsics."
Serban Constantinescu [Wed, 9 Mar 2016 12:02:11 +0000 (12:02 +0000)]
Add entrypoint type information.
For some of the runtime calls we do not need to generate stack maps. For
example, the Optimizing compiler implements HRem Floating Point by
calling libm's fmod().
Since this is a leaf method that does not suspend the execution, we do
not need to treat the fmod() invoke as a possible suspend point and thus
we do not need to create a stack map for the particular PC.
For now conservatively only tag the maths runtime entrypoints with this
information.
Test: m test-art-target
Change-Id: Iab73dcf8047d2edaa7a570113ee792e46ccbc464
Treehugger Robot [Fri, 26 Aug 2016 15:03:21 +0000 (15:03 +0000)]
Merge "Tracking java.lang.reflect.Executable changes"
Roland Levillain [Fri, 26 Aug 2016 14:56:39 +0000 (14:56 +0000)]
Merge "ARM: Make runtime invokes use InvokeRuntime()."
Vladimir Marko [Fri, 26 Aug 2016 12:13:33 +0000 (13:13 +0100)]
ARM/MIPS: Avoid dead dex cache arrays base for intrinsics.
Test: Run ART test suite on host and Nexus 6.
Change-Id: Ie2ad70f1e3f125eae5dad53a6384d405e0311505
Neil Fuller [Fri, 12 Aug 2016 08:37:02 +0000 (09:37 +0100)]
Tracking java.lang.reflect.Executable changes
Added a method to Class: total vtable entries increases
by one.
Handling knock-ons of introducing Executable into the
class hierarchy above AbstractMethod.
Rearranging java_lang_reflect_*.cc code to track libcore
changes that reduce duplication between Constructor / Method
/ Executable and AbstractMethod and track the OpenJDK 8
more closely.
Bug:
28666126
Change-Id: I6b5c476a14b8ea25556c35448431de744519b6c2
Serban Constantinescu [Wed, 22 Jun 2016 16:04:45 +0000 (17:04 +0100)]
ARM: Make runtime invokes use InvokeRuntime().
This patch refactors all of the ARM Optimizing compiler runtime
invokes to use InvokeRuntime(). It also fixes some misuses of
RecordPcInfo().
Change-Id: I722bc2ba95e42ff69ca12c3edc09326e0de2881f
Roland Levillain [Fri, 26 Aug 2016 10:22:29 +0000 (10:22 +0000)]
Merge "Address missing variable definition to fix the build."
Roland Levillain [Fri, 26 Aug 2016 10:17:44 +0000 (11:17 +0100)]
Address missing variable definition to fix the build.
It was removed by another CL merged just before the
offending CL.
Test: m build-art-host
Bug:
29516974
Bug:
29506760
Bug:
12687968
Change-Id: I4457b6dafd48731eef5c8cc370d9107764d6f55c
Roland Levillain [Fri, 26 Aug 2016 09:51:01 +0000 (09:51 +0000)]
Merge "Re-enable the ArraySet fast path with Baker read barriers."