OSDN Git Service
Roland Levillain [Fri, 26 Aug 2016 10:30:13 +0000 (10:30 +0000)]
Merge "Address missing variable definition to fix the build." am:
c4db1d10c5
am:
3ca9647ba9
Change-Id: If38952feba84eac484083cd8e82081bcd9c74a88
Roland Levillain [Fri, 26 Aug 2016 10:27:15 +0000 (10:27 +0000)]
Merge "Address missing variable definition to fix the build."
am:
c4db1d10c5
Change-Id: If5e49f56b1d4b8ddfca44d5053cc2bc5590b0f5e
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 10:00:12 +0000 (10:00 +0000)]
Merge "Re-enable the ArraySet fast path with Baker read barriers." am:
cf073b3528
am:
1edd9b54ff
Change-Id: I59d4459b037f8e4f007ffc260fb76480e0436901
Roland Levillain [Fri, 26 Aug 2016 09:57:14 +0000 (09:57 +0000)]
Merge "Re-enable the ArraySet fast path with Baker read barriers."
am:
cf073b3528
Change-Id: Id6911521c2a280c09f4e13f1c48054d296edaf6e
Roland Levillain [Fri, 26 Aug 2016 09:51:01 +0000 (09:51 +0000)]
Merge "Re-enable the ArraySet fast path with Baker read barriers."
Colin Cross [Fri, 26 Aug 2016 02:49:45 +0000 (02:49 +0000)]
Merge "Fix mac builds" am:
6fe468835c
am:
203dc006be
Change-Id: I17e876a20aadee6ae743ed1b59a2c9270928ebd4
Colin Cross [Fri, 26 Aug 2016 02:46:48 +0000 (02:46 +0000)]
Merge "Fix mac builds"
am:
6fe468835c
Change-Id: I1bafab414868c3107790a522b82ec698071b3db5
Treehugger Robot [Fri, 26 Aug 2016 02:40:55 +0000 (02:40 +0000)]
Merge "Fix mac builds"
Wojciech Staszkiewicz [Fri, 26 Aug 2016 02:25:43 +0000 (02:25 +0000)]
Merge "Bisection bug search tool" am:
99f575da68
am:
65df7412b0
Change-Id: Icea0e91fd60f2280d7e9ce00056840ea2710145e
Wojciech Staszkiewicz [Fri, 26 Aug 2016 02:22:45 +0000 (02:22 +0000)]
Merge "Bisection bug search tool"
am:
99f575da68
Change-Id: I2e7c47fb190af4ef3b4e578bc719217147d79adc
Treehugger Robot [Fri, 26 Aug 2016 02:14:53 +0000 (02:14 +0000)]
Merge "Bisection bug search tool"
Hiroshi Yamauchi [Fri, 26 Aug 2016 02:08:42 +0000 (02:08 +0000)]
Merge "Background full compaction for CC." am:
d9cf6d5ef6
am:
4f40f12e85
Change-Id: Ib808064b7e7b7b819e7d4ed411cc9d0a2405ff55
Hiroshi Yamauchi [Fri, 26 Aug 2016 02:06:14 +0000 (02:06 +0000)]
Merge "Background full compaction for CC."
am:
d9cf6d5ef6
Change-Id: Id74b0d5ff61ba28effdea7be7f397e9d8f5a718c
Treehugger Robot [Fri, 26 Aug 2016 02:01:06 +0000 (02:01 +0000)]
Merge "Background full compaction for CC."
Aart Bik [Fri, 26 Aug 2016 01:06:38 +0000 (01:06 +0000)]
Merge "MIPS64: Improve non-trivial 64-bit constant loading." am:
912883db92
am:
f0feac33b3
Change-Id: Ie17bd86368fd4b0b040adc4926f0a8ad124d7543
Aart Bik [Fri, 26 Aug 2016 01:04:43 +0000 (01:04 +0000)]
Merge "MIPS64: Improve non-trivial 64-bit constant loading."
am:
912883db92
Change-Id: I4a1cff08925fb3644149727e5b19125c7f22c88f
Aart Bik [Fri, 26 Aug 2016 00:48:38 +0000 (00:48 +0000)]
Merge "MIPS64: Improve non-trivial 64-bit constant loading."
Colin Cross [Fri, 26 Aug 2016 00:48:08 +0000 (00:48 +0000)]
Merge "Fix arm32 build" am:
b26918002c
am:
971e9f70bf
Change-Id: I6191bba9dc5b3c44454a2a8820b7520f4eed8fa6
Colin Cross [Fri, 26 Aug 2016 00:45:08 +0000 (00:45 +0000)]
Merge "Fix arm32 build"
am:
b26918002c
Change-Id: Ia31d543f78d277c48ecf787b8357fc60dd2be122
Hiroshi Yamauchi [Wed, 24 Aug 2016 20:53:12 +0000 (13:53 -0700)]
Background full compaction for CC.
Invoke a full compaction with the CC collector when an app goes to the
background like the HSpace compaction for the CMS collector.
Bug:
31039431
Bug:
12687968
Test: test-art, Ritz EAAC, N9 libartd.so device boot with CC
Change-Id: I119aa26c1d3c167b12983fffcb16164929bf8f68
Colin Cross [Fri, 26 Aug 2016 00:33:47 +0000 (00:33 +0000)]
Merge "Fix arm32 build"
Colin Cross [Fri, 26 Aug 2016 00:20:35 +0000 (00:20 +0000)]
Merge "Remove libLLVM* from art" am:
63a1397070
am:
d319f7d265
Change-Id: Ifc27ead16c56fec04648ab7a04507721f000abfb
Colin Cross [Fri, 26 Aug 2016 00:17:36 +0000 (00:17 +0000)]
Merge "Remove libLLVM* from art"
am:
63a1397070
Change-Id: Ieef372a1a7cc1fcf7472b207f533508ea194426f
Colin Cross [Fri, 26 Aug 2016 00:11:43 +0000 (00:11 +0000)]
Merge "Remove libLLVM* from art"
Colin Cross [Thu, 25 Aug 2016 23:42:09 +0000 (16:42 -0700)]
Fix mac builds
Add libz-host back as a dependency to fix darwin builds.
Change-Id: I1abc9e2f336e029592a5fcc27a79f94ad235547e
Colin Cross [Thu, 25 Aug 2016 23:22:04 +0000 (16:22 -0700)]
Fix arm32 build
libvixl-arm is required for arm codegen targets.
Change-Id: I6e8dab7c406bebbb8dfd9bebdb8dbb7ce21c79b3
Wojciech Staszkiewicz [Thu, 11 Aug 2016 21:04:20 +0000 (14:04 -0700)]
Bisection bug search tool
Bisection Bug Search is a tool for finding compiler optimization
bugs. It accepts a program which exposes a bug by producing incorrect
output and expected correct output for the program. The tool will
then attempt to narrow down the issue to a single method and
optimization pass.
Given methods in order M0..Mn finds smallest i such that compiling
Mi and interpreting all other methods produces incorrect output.
Then, given ordered optimization passes P0..Pl, finds smallest j
such that compiling Mi with passes P0..Pj-1 produces expected output
and compiling Mi with passes P0..Pj produces incorrect output.
Prints Mi and Pj.
Test: unit tests ./art/tools/bisection-search/tests.py
Manual testing:
./bisection-search.py -cp classes.dex --expected-output output Test
Change-Id: Ic40a82184975d42c9a403f697995e5c9654b8e52
Colin Cross [Thu, 25 Aug 2016 22:39:30 +0000 (22:39 +0000)]
Merge "Convert libart and dependencies to Android.bp" am:
2ffba0b1a8
am:
56f49f258e
Change-Id: Iec9205259a82e52f8620573b6b34345be6720b6e
Colin Cross [Thu, 25 Aug 2016 22:29:25 +0000 (15:29 -0700)]
Remove libLLVM* from art
The functionality in libbacktrace that depended on libLLVM* has been
split out into libbacktrace_offline. Remove the unnecessary
dependencies from dex2oats.
Test: m -j dex2oats ART_BUILD_HOST_STATIC=true
Change-Id: I79b99c4d420caefbdf6aa81541120ddedd2149c5
Colin Cross [Thu, 25 Aug 2016 22:35:06 +0000 (22:35 +0000)]
Merge "Convert libart and dependencies to Android.bp"
am:
2ffba0b1a8
Change-Id: Ia2e46df57b5b312e89e4c57af020a727e452b1b5
Treehugger Robot [Thu, 25 Aug 2016 22:18:01 +0000 (22:18 +0000)]
Merge "Convert libart and dependencies to Android.bp"
Colin Cross [Wed, 27 Jul 2016 17:12:38 +0000 (10:12 -0700)]
Convert libart and dependencies to Android.bp
Re-landing I73839046a5a53eb34cd28eea53149911c568e411, with fixes for mac
build (only apply -Wl,--keep-unique to device x86 builds), typo in
checking for ART_HEAP_POISONING environment variable, and removing
-Wframe-larger-than for debug builds.
Test: mma -j, m -j test-art-host
Change-Id: If88492174cbcb0d9a8758176c006163a29eaaa63
Vladimir Marko [Thu, 25 Aug 2016 20:02:33 +0000 (20:02 +0000)]
Merge "ArraySet without type check does not need read barrier." am:
521691ae4d
am:
55a5deec13
Change-Id: I0a6b175cd96d85707542485012856f800348dda6
Vladimir Marko [Thu, 25 Aug 2016 19:59:36 +0000 (19:59 +0000)]
Merge "ArraySet without type check does not need read barrier."
am:
521691ae4d
Change-Id: I109a057f418ce1e87ea52b7887501626ec6b391d
Vladimir Marko [Thu, 25 Aug 2016 19:52:01 +0000 (19:52 +0000)]
Merge "ArraySet without type check does not need read barrier."
Vladimir Marko [Thu, 25 Aug 2016 18:55:29 +0000 (18:55 +0000)]
Merge "Fix VIXL assembler test for heap-poisoning configurations." am:
cb83389879
am:
c41ab3eda3
Change-Id: I3609cfe6450106043bb5aa2e3f759ccf490288f1
Vladimir Marko [Thu, 25 Aug 2016 18:52:31 +0000 (18:52 +0000)]
Merge "Fix VIXL assembler test for heap-poisoning configurations."
am:
cb83389879
Change-Id: Ie7965e87781022a8bee30b9c17b7cdeb396577df
Treehugger Robot [Thu, 25 Aug 2016 18:43:08 +0000 (18:43 +0000)]
Merge "Fix VIXL assembler test for heap-poisoning configurations."
Vladimir Marko [Thu, 25 Aug 2016 17:17:56 +0000 (18:17 +0100)]
Fix VIXL assembler test for heap-poisoning configurations.
And fix a typo in test name.
Test: ART_HEAP_POISONING=true m test-art-host-gtest-assembler_thumb_test
Change-Id: Ibc3750676aa7a7b23c93ee0babb8d9c207cb762a
Roland Levillain [Thu, 25 Aug 2016 17:05:52 +0000 (17:05 +0000)]
Merge "ARM64: Make runtime invokes use InvokeRuntime()." am:
ca11dc0084
am:
62333d4ea9
Change-Id: Ied3e3fdf64d4ef621d5b65b212cd7bf618f9d17c
Roland Levillain [Thu, 25 Aug 2016 17:02:54 +0000 (17:02 +0000)]
Merge "ARM64: Make runtime invokes use InvokeRuntime()."
am:
ca11dc0084
Change-Id: Ia25511f84c182f2629a79597b4101609d26c4f0c
Roland Levillain [Thu, 25 Aug 2016 16:54:43 +0000 (16:54 +0000)]
Merge "ARM64: Make runtime invokes use InvokeRuntime()."
Roland Levillain [Thu, 25 Aug 2016 16:27:56 +0000 (17:27 +0100)]
Re-enable the ArraySet fast path with Baker read barriers.
Benchmarks (ARM64) score variations on Nexus 5X with CPU
cores clamped at 960000 Hz (aosp_bullhead-userdebug build):
- Ritzperf - average (lower is better): -0.95% (virtually unchanged)
- CaffeineMark - average (higher is better): +2.50% (slightly better)
- DeltaBlue (lower is better): -0.55% (virtually unchanged)
- Richards - average (lower is better): +0.67% (virtually unchanged)
- SciMark2 - average (higher is better): -0.10% (virtually unchanged)
Details about Ritzperf benchmarks with meaningful variations
(lower is better):
- GenericCalcActions.MemAllocTest: -5.05% (better)
Details about CaffeineMark benchmarks with meaningful variations
(higher is better):
- Method: +16.88% (better)
Details about Richards benchmarks with meaningful variations
(lower is better):
- deutsch_acc_interface: +9.86% (worse)
Boot image code size variation on Nexus 5X
(aosp_bullhead-userdebug build):
- total ARM64 framework Oat files size change:
105933472 bytes ->
106027680 bytes (+0.09%)
- total ARM framework Oat files size change:
89157936 bytes ->
89239856 bytes (+0.09%)
Test: ART host and target (ARM, ARM64) tests.
Bug:
29516974
Bug:
29506760
Bug:
12687968
Change-Id: Ib9e9709712295e17804b8888ac10e3d518ff2e70
Vladimir Marko [Thu, 25 Aug 2016 15:52:17 +0000 (15:52 +0000)]
Merge "ARM64: Use the zero register for field and array set operations." am:
8812e8fa4b
am:
85343c6318
Change-Id: I3ebc7468156a881aaa2e2f3fd3f0864d1af63380
Vladimir Marko [Thu, 25 Aug 2016 15:49:21 +0000 (15:49 +0000)]
Merge "ARM64: Use the zero register for field and array set operations."
am:
8812e8fa4b
Change-Id: I64b3b057a9a1052be5c603495534ae332feb54e7
Vladimir Marko [Thu, 25 Aug 2016 15:42:26 +0000 (15:42 +0000)]
Merge "ARM64: Use the zero register for field and array set operations."
Serban Constantinescu [Thu, 18 Feb 2016 16:06:31 +0000 (16:06 +0000)]
ARM64: Make runtime invokes use InvokeRuntime().
This patch refactors all of the ARM64 Optimizing compiler runtime
invokes to use InvokeRuntime(). It also fixes some misuses of
RecordPcInfo().
Test: m test-art-target + Nexus 6 boot test
Change-Id: Ia3e477c42fb14c62b81e50daa5811185071bafa6
Anton Kirilov [Thu, 25 Aug 2016 15:23:49 +0000 (15:23 +0000)]
Merge "ARM: VIXL32: Update the trampoline compiler." am:
24cbdc42f8
am:
e72f7cd952
Change-Id: Ic562d9138fcc10a729def95f01ef51c74765fb18
Artem Serov [Thu, 25 Aug 2016 15:23:46 +0000 (15:23 +0000)]
Merge "ARM: VIXL32: Switch JNI compiler to use VIXL Assembler." am:
3e93a40f08
am:
443c18ba5b
Change-Id: I402267b2f71c3473a3c287194e84a5de5142662a
Artem Serov [Thu, 25 Aug 2016 15:23:45 +0000 (15:23 +0000)]
Merge "ARM: VIXL32: Implement VIXL-based assembler." am:
e7c85ad018
am:
50cf83c5db
Change-Id: I3f8ca96c8c0a1d81f29d6cccd5a39b2f68ecc1cc
Anton Kirilov [Thu, 25 Aug 2016 15:20:53 +0000 (15:20 +0000)]
Merge "ARM: VIXL32: Update the trampoline compiler."
am:
24cbdc42f8
Change-Id: Ib4e01394bcdbb21b77f302f33ddf59cbace5a1fd
Artem Serov [Thu, 25 Aug 2016 15:20:50 +0000 (15:20 +0000)]
Merge "ARM: VIXL32: Switch JNI compiler to use VIXL Assembler."
am:
3e93a40f08
Change-Id: Ic882e46ff588a31e7583bf643dd0acb2f792c1a9
Artem Serov [Thu, 25 Aug 2016 15:20:48 +0000 (15:20 +0000)]
Merge "ARM: VIXL32: Implement VIXL-based assembler."
am:
e7c85ad018
Change-Id: I15441d2f5a2e6e35e5690fa5d563887eba34c256
Treehugger Robot [Thu, 25 Aug 2016 15:12:37 +0000 (15:12 +0000)]
Merge "ARM: VIXL32: Update the trampoline compiler."
Treehugger Robot [Thu, 25 Aug 2016 15:12:19 +0000 (15:12 +0000)]
Merge "ARM: VIXL32: Switch JNI compiler to use VIXL Assembler."
Treehugger Robot [Thu, 25 Aug 2016 15:11:52 +0000 (15:11 +0000)]
Merge "ARM: VIXL32: Implement VIXL-based assembler."
Vladimir Marko [Thu, 25 Aug 2016 14:20:47 +0000 (15:20 +0100)]
ArraySet without type check does not need read barrier.
Test: Run ART test suite with ART_USE_READ_BARRIER=true on host and Nexus 9.
Bug:
12687968
Change-Id: Ie04a34b2149f4fc6fe995f3e43e76986a3f6330f
Alexandre Rames [Tue, 23 Aug 2016 17:33:36 +0000 (18:33 +0100)]
ARM64: Use the zero register for field and array set operations.
Test: Run ART test suite on host and Nexus 9.
Change-Id: I4e2a81570ecc57530249672df704eb0bb780acce
Roland Levillain [Thu, 25 Aug 2016 12:31:05 +0000 (12:31 +0000)]
Merge "ARM: Purge Arm32Assembler." am:
a518c150ad
am:
f17448437b
Change-Id: I0a9a4152223b7658763bfc40fc8180f76ee1fa2d
Roland Levillain [Thu, 25 Aug 2016 12:28:08 +0000 (12:28 +0000)]
Merge "ARM: Purge Arm32Assembler."
am:
a518c150ad
Change-Id: If28ac6adfcd28290ca8251b5a181b4ac2d6022bc
Roland Levillain [Thu, 25 Aug 2016 12:19:36 +0000 (12:19 +0000)]
Merge "ARM: Purge Arm32Assembler."
Vladimir Marko [Thu, 25 Aug 2016 11:26:30 +0000 (11:26 +0000)]
Merge "MIPS32: Refactor implicit null checks in array/field get/set." am:
c8cbbf518d
am:
447116bdf0
Change-Id: I3a9ebc3cc79fa566c46b1c628b8e442a98a4c1a2
Vladimir Marko [Thu, 25 Aug 2016 11:23:32 +0000 (11:23 +0000)]
Merge "MIPS32: Refactor implicit null checks in array/field get/set."
am:
c8cbbf518d
Change-Id: Idfa26f5aec59846ad6cedfbe625b491f09859cbe
Vladimir Marko [Thu, 25 Aug 2016 11:18:23 +0000 (11:18 +0000)]
Merge "MIPS32: Refactor implicit null checks in array/field get/set."
Nicolas Geoffray [Thu, 25 Aug 2016 09:23:28 +0000 (09:23 +0000)]
Merge "Remove duplicate entries with libcore expectation files." am:
082bfec576
am:
3a46c8ed22
Change-Id: I2b06a1bc8d69b1164feb79665cb12aa8049dc24e
Nicolas Geoffray [Thu, 25 Aug 2016 09:19:55 +0000 (09:19 +0000)]
Merge "Remove duplicate entries with libcore expectation files."
am:
082bfec576
Change-Id: Ia7e67ba9affca54b005f1dc47602c3b9f57b076a
Nicolas Geoffray [Thu, 25 Aug 2016 09:14:35 +0000 (09:14 +0000)]
Merge "Remove duplicate entries with libcore expectation files."
Nicolas Geoffray [Thu, 25 Aug 2016 09:11:40 +0000 (10:11 +0100)]
Remove duplicate entries with libcore expectation files.
Needed after N->AOSP drop.
test:art/tools/run-libcore-tests.sh
Change-Id: Icd7e20e8a6cff42aecf316e2a356d19bf9e5ee39
Jeff Hao [Thu, 25 Aug 2016 05:59:41 +0000 (05:59 +0000)]
Merge "Revert "Revert "Fix debugger calling new String().""" am:
edbfb68895
am:
cf20574ab0
Change-Id: I46ba5376de8b5bd2fc05a525d16fb58e333c65f1
Jeff Hao [Thu, 25 Aug 2016 05:56:42 +0000 (05:56 +0000)]
Merge "Revert "Revert "Fix debugger calling new String()."""
am:
edbfb68895
Change-Id: I5fda25dda83504316c8577826ddfbde853902ae3
Treehugger Robot [Thu, 25 Aug 2016 05:51:36 +0000 (05:51 +0000)]
Merge "Revert "Revert "Fix debugger calling new String()."""
Jeff Hao [Thu, 25 Aug 2016 03:52:40 +0000 (03:52 +0000)]
Revert "Revert "Fix debugger calling new String().""
Bug:
30951794
Test: mm -j24 run-jdwp-tests-host
This reverts commit
6f48d4c72e7b4011a6d9652734bd1cb0c389790b.
This also includes the reversion of commit
528954f55e3173b02df2822c1fc680873d6a91c8.
Change-Id: If0b2ae39cb2a9db80b567bb8d5761d504433632d
Colin Cross [Thu, 25 Aug 2016 01:15:23 +0000 (01:15 +0000)]
Merge "Revert "Convert libart and dependencies to Android.bp"" am:
2851ce0ca2
am:
8f505123cf
Change-Id: I995edf661ea65cfc7745c97e0c853f4cd42983af
Colin Cross [Thu, 25 Aug 2016 01:12:54 +0000 (01:12 +0000)]
Merge "Revert "Convert libart and dependencies to Android.bp""
am:
2851ce0ca2
Change-Id: I54900bb21d11e7d93be66790a6b3f13e96786c73
Colin Cross [Thu, 25 Aug 2016 01:05:27 +0000 (01:05 +0000)]
Merge "Revert "Convert libart and dependencies to Android.bp""
Colin Cross [Thu, 25 Aug 2016 01:03:42 +0000 (01:03 +0000)]
Revert "Convert libart and dependencies to Android.bp"
This reverts commit
4ea3a22f0ccfb0f746c63c274b2655545e759e1f.
Change-Id: I3ac4397b4d6be038e5b863b7a24231c0736e84f3
Colin Cross [Thu, 25 Aug 2016 00:41:51 +0000 (00:41 +0000)]
Merge "Convert libart and dependencies to Android.bp" am:
8d0e8840df
am:
392b2634a7
Change-Id: I4568ce87d8219e0b65bfbe15eccc8273dfc6280b
Colin Cross [Thu, 25 Aug 2016 00:38:51 +0000 (00:38 +0000)]
Merge "Convert libart and dependencies to Android.bp"
am:
8d0e8840df
Change-Id: I95bac807d16a68d65cfd28ddaf932cc722dbb3e1
Treehugger Robot [Thu, 25 Aug 2016 00:31:20 +0000 (00:31 +0000)]
Merge "Convert libart and dependencies to Android.bp"
Alexey Frunze [Sat, 20 Aug 2016 08:55:47 +0000 (01:55 -0700)]
MIPS32: Refactor implicit null checks in array/field get/set.
Rationale: on MIPS32 64-bit loads and stores may be performed
as pairs of 32-bit loads/stores. Implicit null checks must be
associated with the first 32-bit load/store in a pair and not
the last. This change ensures proper association of said checks
(a few were done after the last 32-bit load/store in a pair)
and lays ground for further improvements in array/field get/set.
Test: booted MIPS32 in QEMU
Test: test-art-host-gtest
Test: test-art-target-run-test-optimizing in QEMU
Change-Id: I3674947c00bb17930790a7a47c9b7aadc0c030b8
Colin Cross [Wed, 27 Jul 2016 17:12:38 +0000 (10:12 -0700)]
Convert libart and dependencies to Android.bp
Test: mma -j, m -j test-art-host
Change-Id: I73839046a5a53eb34cd28eea53149911c568e411
Mathieu Chartier [Wed, 24 Aug 2016 22:02:35 +0000 (22:02 +0000)]
Merge "Avoid CAS for marking region space bitmap for baker" am:
770e31af96
am:
1fcc34f67f
Change-Id: I591120b18febd86f5c66b040cd02322c44f7fba0
Mathieu Chartier [Wed, 24 Aug 2016 21:59:36 +0000 (21:59 +0000)]
Merge "Avoid CAS for marking region space bitmap for baker"
am:
770e31af96
Change-Id: I050dd383e6bf5062c41021de6a667423037ce009
Treehugger Robot [Wed, 24 Aug 2016 21:53:50 +0000 (21:53 +0000)]
Merge "Avoid CAS for marking region space bitmap for baker"
Chris Larsen [Fri, 13 May 2016 23:11:47 +0000 (16:11 -0700)]
MIPS64: Improve non-trivial 64-bit constant loading.
- Add special case where the upper 32 bits of the constant are equal to
the lower 32 bits of the constant. Use the "dinsu" instruction to
replicate the bottom 32 bits into the top 32 bits.
- Test output of LoadConst32()/LoadConst64() against various test
constants.
o Make the implementation of LoadConst64() into a template.
o Using the template code for LoadConst64() implement test
cases which simulate the computation of the value which the
generated code sequence is actually supposed to load.
o Add conditionally compiled code to verify that all of the
various data paths through the LoadConst64() function
actually get exercised.
Test: Booted MIPS64 in QEMU, and ran assembler tests.
Change-Id: Ie1ec050e65c666168a9ea582bae9fda97e4cf36a
Mathieu Chartier [Tue, 23 Aug 2016 20:27:53 +0000 (13:27 -0700)]
Avoid CAS for marking region space bitmap for baker
Only have the GC thread mark it. This occurs when popping from the
mark stack. The race where an object may be pushed to the mark
stack twice is handled by not scanning if it is already marked.
Also avoid checking is_active when marking from the GC.
EAAC: 1263 -> 1253 (average of 30 runs)
GC time: 7.21s -> 6.83s (average of 18 runs)
Timings on 960 mhz N6P.
Bug:
12687968
Change-Id: I47e98c3e258829d2ba0babd803a219c82a36168c
Test: test-art-host, debug N6P booting with baker CC.
Andreas Gampe [Wed, 24 Aug 2016 17:25:15 +0000 (17:25 +0000)]
Merge "ART: Remove vestiges of GCC" am:
8aea8dbca6
am:
897b8f5da9
Change-Id: I0120a0b4a5ab20e5b185171c2ca3dcb481dc6ad7
Andreas Gampe [Wed, 24 Aug 2016 17:21:18 +0000 (17:21 +0000)]
Merge "ART: Remove vestiges of GCC"
am:
8aea8dbca6
Change-Id: I6bf7a971949ccbc0aa2d008a1264c7f3c880b9fb
Treehugger Robot [Wed, 24 Aug 2016 17:09:42 +0000 (17:09 +0000)]
Merge "ART: Remove vestiges of GCC"
Vladimir Marko [Wed, 24 Aug 2016 14:01:06 +0000 (14:01 +0000)]
Merge "Revert "Revert "x86/x86-64: Avoid temporary for read barrier field load.""" am:
7c95b4e228
am:
95492ed21e
Change-Id: I75a889dfad9bd754a428c8813047aedffeab2474
Nicolas Geoffray [Wed, 24 Aug 2016 14:01:04 +0000 (14:01 +0000)]
Merge "Revert "Fix debugger calling new String()."" am:
f91b5f3372
am:
431432dade
Change-Id: Ic040b381e7a031b1f5651b12fd8b96f9f1ebc958
Nicolas Geoffray [Wed, 24 Aug 2016 14:01:02 +0000 (14:01 +0000)]
Merge "Revert "Fix debugger missing handle between adding and tagging object."" am:
85f692bc43
am:
7c075399f1
Change-Id: Ideef0df1c6ff3fdc824d896a9a6f791d75736578
Vladimir Marko [Wed, 24 Aug 2016 13:56:50 +0000 (13:56 +0000)]
Merge "Revert "Revert "x86/x86-64: Avoid temporary for read barrier field load."""
am:
7c95b4e228
Change-Id: I190029aa010e53193f2212bd539462664bddbe4d
Nicolas Geoffray [Wed, 24 Aug 2016 13:56:33 +0000 (13:56 +0000)]
Merge "Revert "Fix debugger calling new String().""
am:
f91b5f3372
Change-Id: Ie1103da43144d9bfadbd56dcb6f83b219ea0d012
Nicolas Geoffray [Wed, 24 Aug 2016 13:56:29 +0000 (13:56 +0000)]
Merge "Revert "Fix debugger missing handle between adding and tagging object.""
am:
85f692bc43
Change-Id: I25274033c55726076f6507b1a5405b847b675e88
Treehugger Robot [Wed, 24 Aug 2016 13:49:04 +0000 (13:49 +0000)]
Merge "Revert "Revert "x86/x86-64: Avoid temporary for read barrier field load."""
Nicolas Geoffray [Wed, 24 Aug 2016 13:48:47 +0000 (13:48 +0000)]
Merge "Revert "Fix debugger calling new String().""
Nicolas Geoffray [Wed, 24 Aug 2016 13:48:08 +0000 (13:48 +0000)]
Merge "Revert "Fix debugger missing handle between adding and tagging object.""