OSDN Git Service

android-x86/art.git
7 years agoMerge "Ignore -Wunreachable-code for ClassTable::UpdateClass" am: de35bb7ece
Pirama Arumuga Nainar [Fri, 26 Aug 2016 22:43:02 +0000 (22:43 +0000)]
Merge "Ignore -Wunreachable-code for ClassTable::UpdateClass" am: de35bb7ece
am: fbf7c591e6

Change-Id: Ib48f375cbceca3e4d9d491fb812f3cf61104719a

7 years agoMerge "Ignore -Wunreachable-code for ClassTable::UpdateClass"
Pirama Arumuga Nainar [Fri, 26 Aug 2016 22:40:34 +0000 (22:40 +0000)]
Merge "Ignore -Wunreachable-code for ClassTable::UpdateClass"
am: de35bb7ece

Change-Id: I6704f7d40fda0d0dee9e284d0308d4a0c687b56e

7 years agoMerge "Ignore -Wunreachable-code for ClassTable::UpdateClass"
Pirama Arumuga Nainar [Fri, 26 Aug 2016 22:38:00 +0000 (22:38 +0000)]
Merge "Ignore -Wunreachable-code for ClassTable::UpdateClass"

7 years agoIgnore -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.

7 years agoMerge "Fix a race condition on GC timing logger data." am: b857c3bfb9
Hiroshi Yamauchi [Fri, 26 Aug 2016 20:37:53 +0000 (20:37 +0000)]
Merge "Fix a race condition on GC timing logger data." am: b857c3bfb9
am: 219ab638d4

Change-Id: Id9559ed4c8e8d519e7a70e13c3782fc1837e117c

7 years agoMerge "Fix a race condition on GC timing logger data."
Hiroshi Yamauchi [Fri, 26 Aug 2016 20:31:55 +0000 (20:31 +0000)]
Merge "Fix a race condition on GC timing logger data."
am: b857c3bfb9

Change-Id: Ib38baec07bbf2f5512282a7882179d12645de724

7 years agoMerge "Fix a race condition on GC timing logger data."
Treehugger Robot [Fri, 26 Aug 2016 20:22:44 +0000 (20:22 +0000)]
Merge "Fix a race condition on GC timing logger data."

7 years agoFix 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

7 years agoMerge "Fix ODR violation" am: 3e31882574
Colin Cross [Fri, 26 Aug 2016 18:46:16 +0000 (18:46 +0000)]
Merge "Fix ODR violation" am: 3e31882574
am: ee6c328b64

Change-Id: I6952c082255a9bf24d58846adfee635ee83614cc

7 years agoMerge "Fix ODR violation"
Colin Cross [Fri, 26 Aug 2016 18:43:18 +0000 (18:43 +0000)]
Merge "Fix ODR violation"
am: 3e31882574

Change-Id: I86b284de927a0ba8df7f594681edb41a7d613e0d

7 years agoMerge "Fix ODR violation"
Treehugger Robot [Fri, 26 Aug 2016 18:32:23 +0000 (18:32 +0000)]
Merge "Fix ODR violation"

7 years agoFix 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

7 years agoMerge "ARM/MIPS: Avoid dead dex cache arrays base for intrinsics." am: cc55a7ce2a
Vladimir Marko [Fri, 26 Aug 2016 16:31:06 +0000 (16:31 +0000)]
Merge "ARM/MIPS: Avoid dead dex cache arrays base for intrinsics." am: cc55a7ce2a
am: 404450d7eb

Change-Id: I3100422e46e2804fd02b8c054bd82b93238c9809

7 years agoMerge "ARM/MIPS: Avoid dead dex cache arrays base for intrinsics."
Vladimir Marko [Fri, 26 Aug 2016 16:28:09 +0000 (16:28 +0000)]
Merge "ARM/MIPS: Avoid dead dex cache arrays base for intrinsics."
am: cc55a7ce2a

Change-Id: Iccc6c68fb830b5991374b2c258f4a92c30eb1700

7 years agoMerge "ARM/MIPS: Avoid dead dex cache arrays base for intrinsics."
Treehugger Robot [Fri, 26 Aug 2016 16:19:59 +0000 (16:19 +0000)]
Merge "ARM/MIPS: Avoid dead dex cache arrays base for intrinsics."

7 years agoMerge "Tracking java.lang.reflect.Executable changes" am: c9c055f960
Neil Fuller [Fri, 26 Aug 2016 15:16:23 +0000 (15:16 +0000)]
Merge "Tracking java.lang.reflect.Executable changes" am: c9c055f960
am: 2d96cfb9a2

Change-Id: I38c5f48031513181d1f9d837e4531b47dc8e99b2

7 years agoMerge "Tracking java.lang.reflect.Executable changes"
Neil Fuller [Fri, 26 Aug 2016 15:08:08 +0000 (15:08 +0000)]
Merge "Tracking java.lang.reflect.Executable changes"
am: c9c055f960

Change-Id: I43e19a6ed6ee65788700a30fa0640ccf1f66634d

7 years agoMerge "ARM: Make runtime invokes use InvokeRuntime()." am: c0ee1f5af1
Roland Levillain [Fri, 26 Aug 2016 15:04:31 +0000 (15:04 +0000)]
Merge "ARM: Make runtime invokes use InvokeRuntime()." am: c0ee1f5af1
am: 734c492002

Change-Id: I2831a31fa21222bbfc6c18ff3971e216977bf744

7 years agoMerge "Tracking java.lang.reflect.Executable changes"
Treehugger Robot [Fri, 26 Aug 2016 15:03:21 +0000 (15:03 +0000)]
Merge "Tracking java.lang.reflect.Executable changes"

7 years agoMerge "ARM: Make runtime invokes use InvokeRuntime()."
Roland Levillain [Fri, 26 Aug 2016 15:01:33 +0000 (15:01 +0000)]
Merge "ARM: Make runtime invokes use InvokeRuntime()."
am: c0ee1f5af1

Change-Id: I3a41c5d23f37ab1be8db8dd2cf8eceddd3a0d857

7 years agoMerge "ARM: Make runtime invokes use InvokeRuntime()."
Roland Levillain [Fri, 26 Aug 2016 14:56:39 +0000 (14:56 +0000)]
Merge "ARM: Make runtime invokes use InvokeRuntime()."

7 years agoARM/MIPS: Avoid dead dex cache arrays base for intrinsics.
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

7 years agoTracking java.lang.reflect.Executable changes
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

7 years agoARM: Make runtime invokes use InvokeRuntime().
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

7 years agoMerge "Address missing variable definition to fix the build." am: c4db1d10c5
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

7 years agoMerge "Address missing variable definition to fix the build."
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

7 years agoMerge "Address missing variable definition to fix the build."
Roland Levillain [Fri, 26 Aug 2016 10:22:29 +0000 (10:22 +0000)]
Merge "Address missing variable definition to fix the build."

7 years agoAddress 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

7 years agoMerge "Re-enable the ArraySet fast path with Baker read barriers." am: cf073b3528
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

7 years agoMerge "Re-enable the ArraySet fast path with Baker read barriers."
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

7 years agoMerge "Re-enable the ArraySet fast path with Baker read barriers."
Roland Levillain [Fri, 26 Aug 2016 09:51:01 +0000 (09:51 +0000)]
Merge "Re-enable the ArraySet fast path with Baker read barriers."

7 years agoMerge "Fix mac builds" am: 6fe468835c
Colin Cross [Fri, 26 Aug 2016 02:49:45 +0000 (02:49 +0000)]
Merge "Fix mac builds" am: 6fe468835c
am: 203dc006be

Change-Id: I17e876a20aadee6ae743ed1b59a2c9270928ebd4

7 years agoMerge "Fix mac builds"
Colin Cross [Fri, 26 Aug 2016 02:46:48 +0000 (02:46 +0000)]
Merge "Fix mac builds"
am: 6fe468835c

Change-Id: I1bafab414868c3107790a522b82ec698071b3db5

7 years agoMerge "Fix mac builds"
Treehugger Robot [Fri, 26 Aug 2016 02:40:55 +0000 (02:40 +0000)]
Merge "Fix mac builds"

7 years agoMerge "Bisection bug search tool" am: 99f575da68
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

7 years agoMerge "Bisection bug search tool"
Wojciech Staszkiewicz [Fri, 26 Aug 2016 02:22:45 +0000 (02:22 +0000)]
Merge "Bisection bug search tool"
am: 99f575da68

Change-Id: I2e7c47fb190af4ef3b4e578bc719217147d79adc

7 years agoMerge "Bisection bug search tool"
Treehugger Robot [Fri, 26 Aug 2016 02:14:53 +0000 (02:14 +0000)]
Merge "Bisection bug search tool"

7 years agoMerge "Background full compaction for CC." am: d9cf6d5ef6
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

7 years agoMerge "Background full compaction for CC."
Hiroshi Yamauchi [Fri, 26 Aug 2016 02:06:14 +0000 (02:06 +0000)]
Merge "Background full compaction for CC."
am: d9cf6d5ef6

Change-Id: Id74b0d5ff61ba28effdea7be7f397e9d8f5a718c

7 years agoMerge "Background full compaction for CC."
Treehugger Robot [Fri, 26 Aug 2016 02:01:06 +0000 (02:01 +0000)]
Merge "Background full compaction for CC."

7 years agoMerge "MIPS64: Improve non-trivial 64-bit constant loading." am: 912883db92
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

7 years agoMerge "MIPS64: Improve non-trivial 64-bit constant loading."
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

7 years agoMerge "MIPS64: Improve non-trivial 64-bit constant loading."
Aart Bik [Fri, 26 Aug 2016 00:48:38 +0000 (00:48 +0000)]
Merge "MIPS64: Improve non-trivial 64-bit constant loading."

7 years agoMerge "Fix arm32 build" am: b26918002c
Colin Cross [Fri, 26 Aug 2016 00:48:08 +0000 (00:48 +0000)]
Merge "Fix arm32 build" am: b26918002c
am: 971e9f70bf

Change-Id: I6191bba9dc5b3c44454a2a8820b7520f4eed8fa6

7 years agoMerge "Fix arm32 build"
Colin Cross [Fri, 26 Aug 2016 00:45:08 +0000 (00:45 +0000)]
Merge "Fix arm32 build"
am: b26918002c

Change-Id: Ia31d543f78d277c48ecf787b8357fc60dd2be122

7 years agoBackground full compaction for CC.
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

7 years agoMerge "Fix arm32 build"
Colin Cross [Fri, 26 Aug 2016 00:33:47 +0000 (00:33 +0000)]
Merge "Fix arm32 build"

7 years agoMerge "Remove libLLVM* from art" am: 63a1397070
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

7 years agoMerge "Remove libLLVM* from art"
Colin Cross [Fri, 26 Aug 2016 00:17:36 +0000 (00:17 +0000)]
Merge "Remove libLLVM* from art"
am: 63a1397070

Change-Id: Ieef372a1a7cc1fcf7472b207f533508ea194426f

7 years agoMerge "Remove libLLVM* from art"
Colin Cross [Fri, 26 Aug 2016 00:11:43 +0000 (00:11 +0000)]
Merge "Remove libLLVM* from art"

7 years agoFix mac builds
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

7 years agoFix arm32 build
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

7 years agoBisection bug search tool
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

7 years agoMerge "Convert libart and dependencies to Android.bp" am: 2ffba0b1a8
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

7 years agoRemove libLLVM* from art
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

7 years agoMerge "Convert libart and dependencies to Android.bp"
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

7 years agoMerge "Convert libart and dependencies to Android.bp"
Treehugger Robot [Thu, 25 Aug 2016 22:18:01 +0000 (22:18 +0000)]
Merge "Convert libart and dependencies to Android.bp"

7 years agoConvert 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

7 years agoMerge "ArraySet without type check does not need read barrier." am: 521691ae4d
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

7 years agoMerge "ArraySet without type check does not need read barrier."
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

7 years agoMerge "ArraySet without type check does not need read barrier."
Vladimir Marko [Thu, 25 Aug 2016 19:52:01 +0000 (19:52 +0000)]
Merge "ArraySet without type check does not need read barrier."

7 years agoMerge "Fix VIXL assembler test for heap-poisoning configurations." am: cb83389879
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

7 years agoMerge "Fix VIXL assembler test for heap-poisoning configurations."
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

7 years agoMerge "Fix VIXL assembler test for heap-poisoning configurations."
Treehugger Robot [Thu, 25 Aug 2016 18:43:08 +0000 (18:43 +0000)]
Merge "Fix VIXL assembler test for heap-poisoning configurations."

7 years agoFix 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

7 years agoMerge "ARM64: Make runtime invokes use InvokeRuntime()." am: ca11dc0084
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

7 years agoMerge "ARM64: Make runtime invokes use InvokeRuntime()."
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

7 years agoMerge "ARM64: Make runtime invokes use InvokeRuntime()."
Roland Levillain [Thu, 25 Aug 2016 16:54:43 +0000 (16:54 +0000)]
Merge "ARM64: Make runtime invokes use InvokeRuntime()."

7 years agoRe-enable the ArraySet fast path with Baker read barriers.
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

7 years agoMerge "ARM64: Use the zero register for field and array set operations." am: 8812e8fa4b
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

7 years agoMerge "ARM64: Use the zero register for field and array set operations."
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

7 years agoMerge "ARM64: Use the zero register for field and array set operations."
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."

7 years agoARM64: Make runtime invokes use InvokeRuntime().
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

7 years agoMerge "ARM: VIXL32: Update the trampoline compiler." am: 24cbdc42f8
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

7 years agoMerge "ARM: VIXL32: Switch JNI compiler to use VIXL Assembler." am: 3e93a40f08
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

7 years agoMerge "ARM: VIXL32: Implement VIXL-based assembler." am: e7c85ad018
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

7 years agoMerge "ARM: VIXL32: Update the trampoline compiler."
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

7 years agoMerge "ARM: VIXL32: Switch JNI compiler to use VIXL Assembler."
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

7 years agoMerge "ARM: VIXL32: Implement VIXL-based assembler."
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

7 years agoMerge "ARM: VIXL32: Update the trampoline compiler."
Treehugger Robot [Thu, 25 Aug 2016 15:12:37 +0000 (15:12 +0000)]
Merge "ARM: VIXL32: Update the trampoline compiler."

7 years agoMerge "ARM: VIXL32: Switch JNI compiler to use VIXL Assembler."
Treehugger Robot [Thu, 25 Aug 2016 15:12:19 +0000 (15:12 +0000)]
Merge "ARM: VIXL32: Switch JNI compiler to use VIXL Assembler."

7 years agoMerge "ARM: VIXL32: Implement VIXL-based assembler."
Treehugger Robot [Thu, 25 Aug 2016 15:11:52 +0000 (15:11 +0000)]
Merge "ARM: VIXL32: Implement VIXL-based assembler."

7 years agoArraySet without type check does not need read barrier.
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

7 years agoARM64: Use the zero register for field and array set operations.
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

7 years agoMerge "ARM: Purge Arm32Assembler." am: a518c150ad
Roland Levillain [Thu, 25 Aug 2016 12:31:05 +0000 (12:31 +0000)]
Merge "ARM: Purge Arm32Assembler." am: a518c150ad
am: f17448437b

Change-Id: I0a9a4152223b7658763bfc40fc8180f76ee1fa2d

7 years agoMerge "ARM: Purge Arm32Assembler."
Roland Levillain [Thu, 25 Aug 2016 12:28:08 +0000 (12:28 +0000)]
Merge "ARM: Purge Arm32Assembler."
am: a518c150ad

Change-Id: If28ac6adfcd28290ca8251b5a181b4ac2d6022bc

7 years agoMerge "ARM: Purge Arm32Assembler."
Roland Levillain [Thu, 25 Aug 2016 12:19:36 +0000 (12:19 +0000)]
Merge "ARM: Purge Arm32Assembler."

7 years agoMerge "MIPS32: Refactor implicit null checks in array/field get/set." am: c8cbbf518d
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

7 years agoMerge "MIPS32: Refactor implicit null checks in array/field get/set."
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

7 years agoMerge "MIPS32: Refactor implicit null checks in array/field get/set."
Vladimir Marko [Thu, 25 Aug 2016 11:18:23 +0000 (11:18 +0000)]
Merge "MIPS32: Refactor implicit null checks in array/field get/set."

7 years agoMerge "Remove duplicate entries with libcore expectation files." am: 082bfec576
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

7 years agoMerge "Remove duplicate entries with libcore expectation files."
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

7 years agoMerge "Remove duplicate entries with libcore expectation files."
Nicolas Geoffray [Thu, 25 Aug 2016 09:14:35 +0000 (09:14 +0000)]
Merge "Remove duplicate entries with libcore expectation files."

7 years agoRemove 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

7 years agoMerge "Revert "Revert "Fix debugger calling new String().""" am: edbfb68895
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

7 years agoMerge "Revert "Revert "Fix debugger calling new String()."""
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

7 years agoMerge "Revert "Revert "Fix debugger calling new String()."""
Treehugger Robot [Thu, 25 Aug 2016 05:51:36 +0000 (05:51 +0000)]
Merge "Revert "Revert "Fix debugger calling new String()."""

7 years agoRevert "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

7 years agoMerge "Revert "Convert libart and dependencies to Android.bp"" am: 2851ce0ca2
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

7 years agoMerge "Revert "Convert libart and dependencies to Android.bp""
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