OSDN Git Service

android-x86/art.git
9 years agoam 2812995b: am 6e82168b: Fix moving GC bug in DoFilledNewArray
Mathieu Chartier [Fri, 19 Jun 2015 13:57:57 +0000 (13:57 +0000)]
am 2812995b: am 6e82168b: Fix moving GC bug in DoFilledNewArray

* commit '2812995bd1ded58979e5cf982b4c5db66ffd4910':
  Fix moving GC bug in DoFilledNewArray

9 years agoam e2e271fd: am dfc5db6a: Fix moving GC bugs in proxy stub for X86/X86_64
Mathieu Chartier [Fri, 19 Jun 2015 13:56:54 +0000 (13:56 +0000)]
am e2e271fd: am dfc5db6a: Fix moving GC bugs in proxy stub for X86/X86_64

* commit 'e2e271fd334dc93c79dd7c4bb44921c0dabb21c9':
  Fix moving GC bugs in proxy stub for X86/X86_64

9 years agoam c82e3578: am bf1fa2cc: Follow up on CL 151605
Sebastien Hertz [Fri, 19 Jun 2015 13:55:52 +0000 (13:55 +0000)]
am c82e3578: am bf1fa2cc: Follow up on CL 151605

* commit 'c82e3578544faffcd0de344b4f279b199386ea2d':
  Follow up on CL 151605

9 years agoam d4e48922: am 97d207c3: Merge "Use compiling class instead of referrer for access...
Nicolas Geoffray [Fri, 19 Jun 2015 13:24:03 +0000 (13:24 +0000)]
am d4e48922: am 97d207c3: Merge "Use compiling class instead of referrer for access checks."

* commit 'd4e4892263fad698e56a96d9d9aa5514ed9fce65':
  Use compiling class instead of referrer for access checks.

9 years agoam 97d207c3: Merge "Use compiling class instead of referrer for access checks."
Nicolas Geoffray [Fri, 19 Jun 2015 13:11:23 +0000 (13:11 +0000)]
am 97d207c3: Merge "Use compiling class instead of referrer for access checks."

* commit '97d207c3beba0a4ed6402e882c5909c5ac5bde6d':
  Use compiling class instead of referrer for access checks.

9 years agoMerge "Use compiling class instead of referrer for access checks."
Nicolas Geoffray [Fri, 19 Jun 2015 13:02:11 +0000 (13:02 +0000)]
Merge "Use compiling class instead of referrer for access checks."

9 years agoUse compiling class instead of referrer for access checks.
Nicolas Geoffray [Fri, 19 Jun 2015 12:32:41 +0000 (13:32 +0100)]
Use compiling class instead of referrer for access checks.

bug:21869670
Change-Id: Ief329247e90202835e27fa38803e02dd2e2ae8ca

9 years agoam be91f759: am d8d7b90c: Merge "Do not expect 0 or 1 only when comparing a boolean."
Nicolas Geoffray [Fri, 19 Jun 2015 11:22:52 +0000 (11:22 +0000)]
am be91f759: am d8d7b90c: Merge "Do not expect 0 or 1 only when comparing a boolean."

* commit 'be91f75906ce48d0edffa0be8d60d4e3e43f579b':
  Do not expect 0 or 1 only when comparing a boolean.

9 years agoam dbd627a3: am e4387574: Merge "Verifier: check an aput, even if we know it will...
Nicolas Geoffray [Fri, 19 Jun 2015 11:22:51 +0000 (11:22 +0000)]
am dbd627a3: am e4387574: Merge "Verifier: check an aput, even if we know it will fail."

* commit 'dbd627a3eac0674b0a03b92b19adead32a861a39':
  Verifier: check an aput, even if we know it will fail.

9 years agoam d8d7b90c: Merge "Do not expect 0 or 1 only when comparing a boolean."
Nicolas Geoffray [Fri, 19 Jun 2015 11:11:01 +0000 (11:11 +0000)]
am d8d7b90c: Merge "Do not expect 0 or 1 only when comparing a boolean."

* commit 'd8d7b90ca57e8e3762951bb419b6f2645bb414c5':
  Do not expect 0 or 1 only when comparing a boolean.

9 years agoam e4387574: Merge "Verifier: check an aput, even if we know it will fail."
Nicolas Geoffray [Fri, 19 Jun 2015 11:10:59 +0000 (11:10 +0000)]
am e4387574: Merge "Verifier: check an aput, even if we know it will fail."

* commit 'e43875749fbc674fbad23ba11af64f25ab2add0d':
  Verifier: check an aput, even if we know it will fail.

9 years agoMerge "Do not expect 0 or 1 only when comparing a boolean."
Nicolas Geoffray [Fri, 19 Jun 2015 11:03:44 +0000 (11:03 +0000)]
Merge "Do not expect 0 or 1 only when comparing a boolean."

9 years agoMerge "Verifier: check an aput, even if we know it will fail."
Nicolas Geoffray [Fri, 19 Jun 2015 11:02:16 +0000 (11:02 +0000)]
Merge "Verifier: check an aput, even if we know it will fail."

9 years agoDo not expect 0 or 1 only when comparing a boolean.
Nicolas Geoffray [Fri, 19 Jun 2015 10:42:07 +0000 (11:42 +0100)]
Do not expect 0 or 1 only when comparing a boolean.

bug:21866529
Change-Id: I81ffba609a357010bd86073eb979024fc668ed20

9 years agoam 62f5b393: am be59b852: Merge "Make Main public to pass tests on all configurations."
Nicolas Geoffray [Fri, 19 Jun 2015 10:30:29 +0000 (10:30 +0000)]
am 62f5b393: am be59b852: Merge "Make Main public to pass tests on all configurations."

* commit '62f5b3935b0f95bbb914114b59aebcf9e2937ace':
  Make Main public to pass tests on all configurations.

9 years agoam be59b852: Merge "Make Main public to pass tests on all configurations."
Nicolas Geoffray [Fri, 19 Jun 2015 10:16:54 +0000 (10:16 +0000)]
am be59b852: Merge "Make Main public to pass tests on all configurations."

* commit 'be59b85251f085359d40bb89b1aa7e037c8ac0ef':
  Make Main public to pass tests on all configurations.

9 years agoam 20ede5b8: am 511b7cb2: Merge "Use the right bug number. Spotted by vmarko."
Nicolas Geoffray [Fri, 19 Jun 2015 10:11:46 +0000 (10:11 +0000)]
am 20ede5b8: am 511b7cb2: Merge "Use the right bug number. Spotted by vmarko."

* commit '20ede5b878df4466a4b3ad5ee00911a41b3ab3e6':
  Use the right bug number. Spotted by vmarko.

9 years agoMerge "Make Main public to pass tests on all configurations."
Nicolas Geoffray [Fri, 19 Jun 2015 10:07:46 +0000 (10:07 +0000)]
Merge "Make Main public to pass tests on all configurations."

9 years agoam 511b7cb2: Merge "Use the right bug number. Spotted by vmarko."
Nicolas Geoffray [Fri, 19 Jun 2015 10:00:08 +0000 (10:00 +0000)]
am 511b7cb2: Merge "Use the right bug number. Spotted by vmarko."

* commit '511b7cb2c2c1f276875ff2762bbc97337d824a63':
  Use the right bug number. Spotted by vmarko.

9 years agoMerge "Use the right bug number. Spotted by vmarko."
Nicolas Geoffray [Fri, 19 Jun 2015 09:50:49 +0000 (09:50 +0000)]
Merge "Use the right bug number. Spotted by vmarko."

9 years agoMake Main public to pass tests on all configurations.
Nicolas Geoffray [Fri, 19 Jun 2015 09:45:44 +0000 (10:45 +0100)]
Make Main public to pass tests on all configurations.

There's a mismatch between compile-time and runtime access checks.
This doens't fix it but keep us green.

bug:21923303

Change-Id: I1d4a80557f9d8ca9d8bef18a8c23230ed46d4a4c

9 years agoVerifier: check an aput, even if we know it will fail.
Nicolas Geoffray [Fri, 19 Jun 2015 09:35:42 +0000 (10:35 +0100)]
Verifier: check an aput, even if we know it will fail.

bug:21867457
Change-Id: I01e333d858995d0e1e083a50cf8d460a86381f2c

9 years agoUse the right bug number. Spotted by vmarko.
Nicolas Geoffray [Fri, 19 Jun 2015 09:05:50 +0000 (10:05 +0100)]
Use the right bug number. Spotted by vmarko.

bug:21863767

Change-Id: I203072188c0c97b2d6709e1a59555b45fc5a0ab2

9 years agoam 6e82168b: Fix moving GC bug in DoFilledNewArray
Mathieu Chartier [Fri, 19 Jun 2015 00:41:44 +0000 (00:41 +0000)]
am 6e82168b: Fix moving GC bug in DoFilledNewArray

* commit '6e82168bcb339b162f8fac1034a1153eec421eae':
  Fix moving GC bug in DoFilledNewArray

9 years agoam 4acbbe7c: am f12ffdb5: Merge "Fix moving GC bug in DoFilledNewArray"
Mathieu Chartier [Fri, 19 Jun 2015 00:22:34 +0000 (00:22 +0000)]
am 4acbbe7c: am f12ffdb5: Merge "Fix moving GC bug in DoFilledNewArray"

* commit '4acbbe7c347af68c2216304cb02a8947a7f49c2b':
  Fix moving GC bug in DoFilledNewArray

9 years agoam f12ffdb5: Merge "Fix moving GC bug in DoFilledNewArray"
Mathieu Chartier [Fri, 19 Jun 2015 00:12:48 +0000 (00:12 +0000)]
am f12ffdb5: Merge "Fix moving GC bug in DoFilledNewArray"

* commit 'f12ffdb549f1947125e3f56694cb479a619f02bf':
  Fix moving GC bug in DoFilledNewArray

9 years agoFix moving GC bug in DoFilledNewArray
Mathieu Chartier [Thu, 18 Jun 2015 23:48:52 +0000 (16:48 -0700)]
Fix moving GC bug in DoFilledNewArray

Previously we read from componentClass after allocating the array.

Bug: 21783443

(cherry picked from commit 52ea33b10370d60d4ce877aec529626537b7813b)

Change-Id: I5283982edab479434e27416509e1436b4176fe01

9 years agoMerge "Fix moving GC bug in DoFilledNewArray"
Mathieu Chartier [Fri, 19 Jun 2015 00:00:07 +0000 (00:00 +0000)]
Merge "Fix moving GC bug in DoFilledNewArray"

9 years agoFix moving GC bug in DoFilledNewArray
Mathieu Chartier [Thu, 18 Jun 2015 23:48:52 +0000 (16:48 -0700)]
Fix moving GC bug in DoFilledNewArray

Previously we read from componentClass after allocating the array.

Bug: 21783443

Change-Id: I5283982edab479434e27416509e1436b4176fe01

9 years agoresolved conflicts for merge of 23b4feeb to mnc-dev-plus-aosp
Mingyao Yang [Thu, 18 Jun 2015 23:43:34 +0000 (16:43 -0700)]
resolved conflicts for merge of 23b4feeb to mnc-dev-plus-aosp

Change-Id: I2fc26211d276d7af21f254802c215aaf3deecd53

9 years agoam e0157752: am 542ca97d: Merge "test: Fix lambda test incorrectly globbing together...
Igor Murashkin [Thu, 18 Jun 2015 23:04:07 +0000 (23:04 +0000)]
am e0157752: am 542ca97d: Merge "test: Fix lambda test incorrectly globbing together compiler arguments"

* commit 'e015775272b6196e185ae7c43d7b83a3d85689ec':
  test: Fix lambda test incorrectly globbing together compiler arguments

9 years agoam dfc5db6a: Fix moving GC bugs in proxy stub for X86/X86_64
Mathieu Chartier [Thu, 18 Jun 2015 22:56:01 +0000 (22:56 +0000)]
am dfc5db6a: Fix moving GC bugs in proxy stub for X86/X86_64

* commit 'dfc5db6a6deea37c217e29e810e757945dae8586':
  Fix moving GC bugs in proxy stub for X86/X86_64

9 years agoam 542ca97d: Merge "test: Fix lambda test incorrectly globbing together compiler...
Igor Murashkin [Thu, 18 Jun 2015 22:50:57 +0000 (22:50 +0000)]
am 542ca97d: Merge "test: Fix lambda test incorrectly globbing together compiler arguments"

* commit '542ca97d3e4266896407b9abd29b36b1c59d798c':
  test: Fix lambda test incorrectly globbing together compiler arguments

9 years agoFix moving GC bugs in proxy stub for X86/X86_64
Mathieu Chartier [Thu, 18 Jun 2015 17:17:26 +0000 (10:17 -0700)]
Fix moving GC bugs in proxy stub for X86/X86_64

Needed to restore the refs.

(cherry picked from commit 9346ff0cfad6344d0bf4eaa69362dbe1987ac054)

Bug: 21907554
Change-Id: I562906dff07dcaa78dfb39646ba9ab35a5f56c6c

9 years agoMerge "test: Fix lambda test incorrectly globbing together compiler arguments"
Igor Murashkin [Thu, 18 Jun 2015 22:41:57 +0000 (22:41 +0000)]
Merge "test: Fix lambda test incorrectly globbing together compiler arguments"

9 years agotest: Fix lambda test incorrectly globbing together compiler arguments
Igor Murashkin [Thu, 18 Jun 2015 22:38:59 +0000 (15:38 -0700)]
test: Fix lambda test incorrectly globbing together compiler arguments

This also fixes test failures when running imageless tests.

Change-Id: I9b0deb836907060160e31c434cf0710507f9665a

9 years agoam bf1fa2cc: Follow up on CL 151605
Sebastien Hertz [Thu, 18 Jun 2015 21:36:05 +0000 (21:36 +0000)]
am bf1fa2cc: Follow up on CL 151605

* commit 'bf1fa2ccb5e7409910b99dc46b616e44c66ade68':
  Follow up on CL 151605

9 years agoam ef484d44: Fix nested deoptimization.
Mingyao Yang [Thu, 18 Jun 2015 21:21:40 +0000 (21:21 +0000)]
am ef484d44: Fix nested deoptimization.

* commit 'ef484d442a3dcae2cd1842c5be0623f5cf71e4ab':
  Fix nested deoptimization.

9 years agoFollow up on CL 151605
Sebastien Hertz [Tue, 9 Jun 2015 12:09:14 +0000 (14:09 +0200)]
Follow up on CL 151605

- Fixes return type of StackedShadowFrameRecord::GetType
- Makes StackedShadowFrameType an enum class (scoped enum)
- Moves DeoptimizationReturnValueRecord and StackedShadowFrameRecord
  to thread.cc file and use forward declaration in thread.h header
- Fixes tools/generate-operator-out.py for scoped enum classes.

Bug: 20845490

(cherry picked from commit f795869da0a1fa006fdcdacd8afb6149a63fc1a7)

Change-Id: I6b67e288b1db563699161e58ec2e2330d42dd8f5

9 years agoFix nested deoptimization.
Mingyao Yang [Mon, 18 May 2015 19:12:50 +0000 (12:12 -0700)]
Fix nested deoptimization.

Handle nested deoptimization cases. Create a stacked shadow frame
records to keep track of deoptimization shadow frames. Shadow frames
under construction can be tracked in the same stack.

Bug: 20845490

(cherry picked from commit 1f2d3ba6af52cf6f566deb38b7e07735c9a08fb6)

Change-Id: I768285792c29e7c3cfcd21e7a2600802506024d8

9 years agoam f063d9e9: am 46d87021: Merge "Fix moving GC bugs in proxy stub for X86/X86_64"
Mathieu Chartier [Thu, 18 Jun 2015 20:23:53 +0000 (20:23 +0000)]
am f063d9e9: am 46d87021: Merge "Fix moving GC bugs in proxy stub for X86/X86_64"

* commit 'f063d9e968d892e740cbb20b88fa4e05b1b03eda':
  Fix moving GC bugs in proxy stub for X86/X86_64

9 years agoam cec8c058: am 247e9774: Merge "interpreter: Add experimental lambda opcodes for...
Igor Murashkin [Thu, 18 Jun 2015 20:23:51 +0000 (20:23 +0000)]
am cec8c058: am 247e9774: Merge "interpreter: Add experimental lambda opcodes for invoke/create-lambda"

* commit 'cec8c05803c56a93ed83480cac94019e8bb40b24':
  interpreter: Add experimental lambda opcodes for invoke/create-lambda

9 years agoam 46d87021: Merge "Fix moving GC bugs in proxy stub for X86/X86_64"
Mathieu Chartier [Thu, 18 Jun 2015 20:11:02 +0000 (20:11 +0000)]
am 46d87021: Merge "Fix moving GC bugs in proxy stub for X86/X86_64"

* commit '46d8702167d679dbf87ba9fa8fd0f1b6bbb3ed62':
  Fix moving GC bugs in proxy stub for X86/X86_64

9 years agoam 247e9774: Merge "interpreter: Add experimental lambda opcodes for invoke/create...
Igor Murashkin [Thu, 18 Jun 2015 20:11:01 +0000 (20:11 +0000)]
am 247e9774: Merge "interpreter: Add experimental lambda opcodes for invoke/create-lambda"

* commit '247e97746016b49183b52f4c386bedf7cd53e590':
  interpreter: Add experimental lambda opcodes for invoke/create-lambda

9 years agoMerge "Fix moving GC bugs in proxy stub for X86/X86_64"
Mathieu Chartier [Thu, 18 Jun 2015 20:01:24 +0000 (20:01 +0000)]
Merge "Fix moving GC bugs in proxy stub for X86/X86_64"

9 years agoMerge "interpreter: Add experimental lambda opcodes for invoke/create-lambda"
Igor Murashkin [Thu, 18 Jun 2015 19:56:57 +0000 (19:56 +0000)]
Merge "interpreter: Add experimental lambda opcodes for invoke/create-lambda"

9 years agoresolved conflicts for merge of 26d53e38 to mnc-dev-plus-aosp
Vladimir Marko [Thu, 18 Jun 2015 19:55:57 +0000 (20:55 +0100)]
resolved conflicts for merge of 26d53e38 to mnc-dev-plus-aosp

9 years agoam 07c6f5a3: Quick: Don\'t expect move-exception in every catch block.
Vladimir Marko [Thu, 18 Jun 2015 19:25:51 +0000 (19:25 +0000)]
am 07c6f5a3: Quick: Don\'t expect move-exception in every catch block.

* commit '07c6f5a3eb17e08f3f2d850e130896f63c80911f':
  Quick: Don't expect move-exception in every catch block.

9 years agoFix moving GC bugs in proxy stub for X86/X86_64
Mathieu Chartier [Thu, 18 Jun 2015 17:17:26 +0000 (10:17 -0700)]
Fix moving GC bugs in proxy stub for X86/X86_64

Needed to restore the refs.

Bug: 21907554
Change-Id: I562906dff07dcaa78dfb39646ba9ab35a5f56c6c

9 years agoam e69794f5: am 2b696ab5: Merge "Quick: Don\'t expect move-exception in every catch...
Vladimir Marko [Thu, 18 Jun 2015 18:44:38 +0000 (18:44 +0000)]
am e69794f5: am 2b696ab5: Merge "Quick: Don\'t expect move-exception in every catch block."

* commit 'e69794f56851b204c196c9d7e616f0dc886aaf82':
  Quick: Don't expect move-exception in every catch block.

9 years agoam 2b696ab5: Merge "Quick: Don\'t expect move-exception in every catch block."
Vladimir Marko [Thu, 18 Jun 2015 18:31:41 +0000 (18:31 +0000)]
am 2b696ab5: Merge "Quick: Don\'t expect move-exception in every catch block."

* commit '2b696ab55e817b583d7b3b3ffd39e48c38db6989':
  Quick: Don't expect move-exception in every catch block.

9 years agoQuick: Don't expect move-exception in every catch block.
Vladimir Marko [Thu, 18 Jun 2015 16:40:00 +0000 (17:40 +0100)]
Quick: Don't expect move-exception in every catch block.

The dalvik bytecode doesn't require a move-exception in
a catch handler that ignores the exception.

Bug: 21873167

(cherry picked from commit 2d1a0a408fd148f7b2a2d670e6942ec3d920f875)

Change-Id: Ia00e5791fabdd1b88e9a63b741600ed63d918703

9 years agoMerge "Quick: Don't expect move-exception in every catch block."
Vladimir Marko [Thu, 18 Jun 2015 18:22:48 +0000 (18:22 +0000)]
Merge "Quick: Don't expect move-exception in every catch block."

9 years agoQuick: Don't expect move-exception in every catch block.
Vladimir Marko [Thu, 18 Jun 2015 16:40:00 +0000 (17:40 +0100)]
Quick: Don't expect move-exception in every catch block.

The dalvik bytecode doesn't require a move-exception in
a catch handler that ignores the exception.

Bug: 21873167
Change-Id: I3b49218a8c7ff021141387bd929bb2ae798f8509

9 years agoam 00efb232: am e71eb1d7: Fix some java_lang_Class related moving GC bugs
Mathieu Chartier [Thu, 18 Jun 2015 18:00:15 +0000 (18:00 +0000)]
am 00efb232: am e71eb1d7: Fix some java_lang_Class related moving GC bugs

* commit '00efb23292a689a4d869cc5cb7f001293f801392':
  Fix some java_lang_Class related moving GC bugs

9 years agoam ea946dab: am 3d266a96: Merge "Don\'t check the return type in the builder."
Nicolas Geoffray [Thu, 18 Jun 2015 17:55:55 +0000 (17:55 +0000)]
am ea946dab: am 3d266a96: Merge "Don\'t check the return type in the builder."

* commit 'ea946dabfdf21e9f8b3d0e75cad747cd31c33bea':
  Don't check the return type in the builder.

9 years agoam e71eb1d7: Fix some java_lang_Class related moving GC bugs
Mathieu Chartier [Thu, 18 Jun 2015 17:47:41 +0000 (17:47 +0000)]
am e71eb1d7: Fix some java_lang_Class related moving GC bugs

* commit 'e71eb1d7cdc59127b6fcf101230376ce7c892a89':
  Fix some java_lang_Class related moving GC bugs

9 years agoam 3d266a96: Merge "Don\'t check the return type in the builder."
Nicolas Geoffray [Thu, 18 Jun 2015 17:42:48 +0000 (17:42 +0000)]
am 3d266a96: Merge "Don\'t check the return type in the builder."

* commit '3d266a96750db6969f24bcdb8025c06745e5a449':
  Don't check the return type in the builder.

9 years agoFix some java_lang_Class related moving GC bugs
Mathieu Chartier [Wed, 17 Jun 2015 23:11:12 +0000 (16:11 -0700)]
Fix some java_lang_Class related moving GC bugs

There was some missing handles around mirror::Class*.

(cherry picked from commit 05b7226787f1470ad93f6f632fed60f70bc8631e

Bug: 21898408
Change-Id: Icb754074dfb469473101d20d6873a5bc3274abc5

9 years agoMerge "Don't check the return type in the builder."
Nicolas Geoffray [Thu, 18 Jun 2015 17:28:16 +0000 (17:28 +0000)]
Merge "Don't check the return type in the builder."

9 years agointerpreter: Add experimental lambda opcodes for invoke/create-lambda
Igor Murashkin [Wed, 10 Jun 2015 22:55:30 +0000 (15:55 -0700)]
interpreter: Add experimental lambda opcodes for invoke/create-lambda

These opcodes are not yet fully specified, and *will* change before they become shippable.
Do not write production code against experimental opcodes.

--

Implement partial interpreter support for new dex instructions invoke/create-lambda, and a
new opcode format 25x.

* Does not verify, in fact verification will soft fail when we see those opcodes.
* Compilers will punt to interpreter since they don't support new opcodes.
* As there is no way to capture/liberate variables yet, the "closure" is just
  an ArtMethod for the time being.

All new opcodes are disabled by default, use runtime option -Xexperimental-lambdas to enable them.

For example:
  dalvikvm ... -Xexperimental-lambdas ...
  dex2oat --runtime-arg -Xexperimental-lambdas ...

Change-Id: I6c996ca32a9b54ec45ec21d7a959b84dfb8a24eb

9 years agoDon't check the return type in the builder.
Nicolas Geoffray [Thu, 18 Jun 2015 17:04:12 +0000 (18:04 +0100)]
Don't check the return type in the builder.

The verifier will not complain about dead code. For the compiler,
it is benign.

bug:21863767

Change-Id: I6ef7be233d1cd69dddcc4499e4e4fad54753099f

9 years agoam 4288cc07: am ee9bc65d: Merge "ART: Allow PackedSwitch instructions with zero targe...
David Brazdil [Thu, 18 Jun 2015 16:27:32 +0000 (16:27 +0000)]
am 4288cc07: am ee9bc65d: Merge "ART: Allow PackedSwitch instructions with zero targets" into mnc-dev

* commit '4288cc074fe693798cab5810953b027583c11fdc':
  ART: Allow PackedSwitch instructions with zero targets

9 years agoam d5fdbc21: am 6ecc2967: Quick: Fix marking unused registers in DCE.
Vladimir Marko [Thu, 18 Jun 2015 16:27:30 +0000 (16:27 +0000)]
am d5fdbc21: am 6ecc2967: Quick: Fix marking unused registers in DCE.

* commit 'd5fdbc21d66a35eb2d6d102ffde03cd5a5ff1900':
  Quick: Fix marking unused registers in DCE.

9 years agoam c7a3379c: am 822c00d0: Merge "Run a simplification pass before code generation."
Nicolas Geoffray [Thu, 18 Jun 2015 16:20:58 +0000 (16:20 +0000)]
am c7a3379c: am 822c00d0: Merge "Run a simplification pass before code generation."

* commit 'c7a3379ce62f47e3f3bfedb1434cc7bbd10edd5a':
  Run a simplification pass before code generation.

9 years agoam 79f9a072: am 01b6ec8c: Merge "Don\'t special case HCurrentMethod in DCE."
Nicolas Geoffray [Thu, 18 Jun 2015 16:20:57 +0000 (16:20 +0000)]
am 79f9a072: am 01b6ec8c: Merge "Don\'t special case HCurrentMethod in DCE."

* commit '79f9a0722b80493cc4c7b659be14bc2442f9c078':
  Don't special case HCurrentMethod in DCE.

9 years agoam 742923b6: am 92fe57fe: Merge "Quick: Fix marking unused registers in DCE."
Vladimir Marko [Thu, 18 Jun 2015 16:20:56 +0000 (16:20 +0000)]
am 742923b6: am 92fe57fe: Merge "Quick: Fix marking unused registers in DCE."

* commit '742923b60fbc7897e97b97dea36f179a9a1b2fa8':
  Quick: Fix marking unused registers in DCE.

9 years agoam ee9bc65d: Merge "ART: Allow PackedSwitch instructions with zero targets" into...
David Brazdil [Thu, 18 Jun 2015 16:19:29 +0000 (16:19 +0000)]
am ee9bc65d: Merge "ART: Allow PackedSwitch instructions with zero targets" into mnc-dev

* commit 'ee9bc65d3069c7c5c3f66dd9459915df54c3482f':
  ART: Allow PackedSwitch instructions with zero targets

9 years agoam 6ecc2967: Quick: Fix marking unused registers in DCE.
Vladimir Marko [Thu, 18 Jun 2015 16:19:28 +0000 (16:19 +0000)]
am 6ecc2967: Quick: Fix marking unused registers in DCE.

* commit '6ecc2967918e7d7bed299d4dbf48ac63effc1088':
  Quick: Fix marking unused registers in DCE.

9 years agoMerge "ART: Allow PackedSwitch instructions with zero targets" into mnc-dev
David Brazdil [Thu, 18 Jun 2015 16:13:16 +0000 (16:13 +0000)]
Merge "ART: Allow PackedSwitch instructions with zero targets" into mnc-dev

9 years agoam 822c00d0: Merge "Run a simplification pass before code generation."
Nicolas Geoffray [Thu, 18 Jun 2015 16:12:43 +0000 (16:12 +0000)]
am 822c00d0: Merge "Run a simplification pass before code generation."

* commit '822c00d0fe3b70d1f1fe5bac03713674d45f8173':
  Run a simplification pass before code generation.

9 years agoam 01b6ec8c: Merge "Don\'t special case HCurrentMethod in DCE."
Nicolas Geoffray [Thu, 18 Jun 2015 16:12:42 +0000 (16:12 +0000)]
am 01b6ec8c: Merge "Don\'t special case HCurrentMethod in DCE."

* commit '01b6ec8c982400fe415533296ab0b563971c239d':
  Don't special case HCurrentMethod in DCE.

9 years agoam 92fe57fe: Merge "Quick: Fix marking unused registers in DCE."
Vladimir Marko [Thu, 18 Jun 2015 16:12:40 +0000 (16:12 +0000)]
am 92fe57fe: Merge "Quick: Fix marking unused registers in DCE."

* commit '92fe57fe6e3512616f71b2b2183344c56d6753e6':
  Quick: Fix marking unused registers in DCE.

9 years agoART: Allow PackedSwitch instructions with zero targets
David Brazdil [Wed, 17 Jun 2015 17:20:52 +0000 (18:20 +0100)]
ART: Allow PackedSwitch instructions with zero targets

Optimizing and the interpreter wrongly assumed that a PackedSwitch
always has at least one target. This patch removes the corresponding
DCHECKs and adds a regression test case.

This is a resubmission of CL I32b7033ed38de6f1d1a6ee5d5bf12f3a47c9b37e

Bug: 21863783
Change-Id: I04e6e124bdd16591ba27c79490e6ce183c36b691
(cherry picked from commit 2ef645ba50544b879a82ea30e606f18c9af98917)

9 years agoQuick: Fix marking unused registers in DCE.
Vladimir Marko [Wed, 17 Jun 2015 21:00:09 +0000 (22:00 +0100)]
Quick: Fix marking unused registers in DCE.

Bug: 21702651

(cherry picked from commit 511d408909b7fe9be3c95e032cc7f426f4a01e6e)

Change-Id: I059e0b841543334cd08a27431e0ea853b42e4f35

9 years agoMerge "Run a simplification pass before code generation."
Nicolas Geoffray [Thu, 18 Jun 2015 15:52:30 +0000 (15:52 +0000)]
Merge "Run a simplification pass before code generation."

9 years agoMerge "Don't special case HCurrentMethod in DCE."
Nicolas Geoffray [Thu, 18 Jun 2015 15:51:54 +0000 (15:51 +0000)]
Merge "Don't special case HCurrentMethod in DCE."

9 years agoMerge "Quick: Fix marking unused registers in DCE."
Vladimir Marko [Thu, 18 Jun 2015 15:51:35 +0000 (15:51 +0000)]
Merge "Quick: Fix marking unused registers in DCE."

9 years agoam 9e632baa: am a8b41003: ART: Fix reporting initialized classes by CompilerDriver.
Vladimir Marko [Thu, 18 Jun 2015 15:24:40 +0000 (15:24 +0000)]
am 9e632baa: am a8b41003: ART: Fix reporting initialized classes by CompilerDriver.

* commit '9e632baa4307e8825eae832040a72facf469a2be':
  ART: Fix reporting initialized classes by CompilerDriver.

9 years agoam a8b41003: ART: Fix reporting initialized classes by CompilerDriver.
Vladimir Marko [Thu, 18 Jun 2015 15:14:01 +0000 (15:14 +0000)]
am a8b41003: ART: Fix reporting initialized classes by CompilerDriver.

* commit 'a8b41003a717ecf399b890c18e9b0df49f55472f':
  ART: Fix reporting initialized classes by CompilerDriver.

9 years agoRun a simplification pass before code generation.
Nicolas Geoffray [Thu, 18 Jun 2015 14:46:47 +0000 (15:46 +0100)]
Run a simplification pass before code generation.

The code generators assume things that only the instruction
simplier ensures. So it has to be run last in case previous
optimiziations broke those assumptions.

bug:21865464

Change-Id: I1f84016017bf691c2a34982e202a505b269f609a

9 years agoam 788d6d8b: am 46ff9b61: Merge "ART: Fix reporting initialized classes by CompilerDr...
Vladimir Marko [Thu, 18 Jun 2015 14:34:42 +0000 (14:34 +0000)]
am 788d6d8b: am 46ff9b61: Merge "ART: Fix reporting initialized classes by CompilerDriver."

* commit '788d6d8b9b83c3bba05f71cc4ce1682647f5822d':
  ART: Fix reporting initialized classes by CompilerDriver.

9 years agoam 46ff9b61: Merge "ART: Fix reporting initialized classes by CompilerDriver."
Vladimir Marko [Thu, 18 Jun 2015 14:27:34 +0000 (14:27 +0000)]
am 46ff9b61: Merge "ART: Fix reporting initialized classes by CompilerDriver."

* commit '46ff9b6100e66306233534e26c16d3c6738070a9':
  ART: Fix reporting initialized classes by CompilerDriver.

9 years agoART: Fix reporting initialized classes by CompilerDriver.
Vladimir Marko [Mon, 15 Jun 2015 17:52:54 +0000 (18:52 +0100)]
ART: Fix reporting initialized classes by CompilerDriver.

Fix a bug where the CompilerDriver was erroneously reporting
classes as initialized during AOT compilation when they were
not guaranteed to be initialized at runtime.

This fix prevents the Quick compiler from inlining calls to
static methods in classes that are not guaranteed to be
initialized, so that the runtime performs the initialization
required for correctness.

Bug: 21847756

(cherry picked from commit 07785bb98dc8bbe192970e0f4c2cafd338a8dc68)

Change-Id: I60c7361cb6e8f51be20a3cbfcae19f3240bdfbed

9 years agoMerge "ART: Fix reporting initialized classes by CompilerDriver."
Vladimir Marko [Thu, 18 Jun 2015 14:19:22 +0000 (14:19 +0000)]
Merge "ART: Fix reporting initialized classes by CompilerDriver."

9 years agoam 8525b9a2: am d4de42f6: Merge "ART: Remove old DCHECK that trips Baseline"
David Brazdil [Thu, 18 Jun 2015 12:10:03 +0000 (12:10 +0000)]
am 8525b9a2: am d4de42f6: Merge "ART: Remove old DCHECK that trips Baseline"

* commit '8525b9a2fc89447185f9245dacc8f638f92427bf':
  ART: Remove old DCHECK that trips Baseline

9 years agoam 4bbe339e: am 3b574aad: Merge "Bailout from compilation if an invoke is malformed."
Nicolas Geoffray [Thu, 18 Jun 2015 12:10:02 +0000 (12:10 +0000)]
am 4bbe339e: am 3b574aad: Merge "Bailout from compilation if an invoke is malformed."

* commit '4bbe339e801046cbd22f71f9e1c7c446e3c25f18':
  Bailout from compilation if an invoke is malformed.

9 years agoam afcf1055: am 7b295db7: Merge "Fix a bug in optimizing when the null constant has...
Nicolas Geoffray [Thu, 18 Jun 2015 12:10:01 +0000 (12:10 +0000)]
am afcf1055: am 7b295db7: Merge "Fix a bug in optimizing when the null constant has been DCE."

* commit 'afcf105575812cfb672637437ea78fd1b05a70bc':
  Fix a bug in optimizing when the null constant has been DCE.

9 years agoam d4de42f6: Merge "ART: Remove old DCHECK that trips Baseline"
David Brazdil [Thu, 18 Jun 2015 11:58:39 +0000 (11:58 +0000)]
am d4de42f6: Merge "ART: Remove old DCHECK that trips Baseline"

* commit 'd4de42f6fd0f00c5b3ca01fed6a26d11e617c3b9':
  ART: Remove old DCHECK that trips Baseline

9 years agoam 3b574aad: Merge "Bailout from compilation if an invoke is malformed."
Nicolas Geoffray [Thu, 18 Jun 2015 11:58:38 +0000 (11:58 +0000)]
am 3b574aad: Merge "Bailout from compilation if an invoke is malformed."

* commit '3b574aadd67c5ce261a7383c38044af4cf993393':
  Bailout from compilation if an invoke is malformed.

9 years agoam 7b295db7: Merge "Fix a bug in optimizing when the null constant has been DCE."
Nicolas Geoffray [Thu, 18 Jun 2015 11:58:36 +0000 (11:58 +0000)]
am 7b295db7: Merge "Fix a bug in optimizing when the null constant has been DCE."

* commit '7b295db7583a721db1e1d430be78a6ff34f4805d':
  Fix a bug in optimizing when the null constant has been DCE.

9 years agoMerge "ART: Remove old DCHECK that trips Baseline"
David Brazdil [Thu, 18 Jun 2015 11:54:57 +0000 (11:54 +0000)]
Merge "ART: Remove old DCHECK that trips Baseline"

9 years agoMerge "Bailout from compilation if an invoke is malformed."
Nicolas Geoffray [Thu, 18 Jun 2015 11:53:49 +0000 (11:53 +0000)]
Merge "Bailout from compilation if an invoke is malformed."

9 years agoART: Remove old DCHECK that trips Baseline
David Brazdil [Thu, 18 Jun 2015 11:40:01 +0000 (12:40 +0100)]
ART: Remove old DCHECK that trips Baseline

Codegen verified that the entry block always falls through to the next
block. While this is the case with Optimizing, it doesn't hold for
Baseline but it doesn't need to since codegen handles it fine.

Bug:21913514
Change-Id: I751ef227e6cf103af3e7fc35fca4b01c663385a1

9 years agoBailout from compilation if an invoke is malformed.
Nicolas Geoffray [Thu, 18 Jun 2015 10:11:27 +0000 (11:11 +0100)]
Bailout from compilation if an invoke is malformed.

Because the verifier does not check trivially dead instructions,
the compilers must prepare for bogus instructions. This change
fixes the case the arguments for an invoke do not match the
formal parameters.

bug:21865459

Change-Id: Ie9fa9dbaedaad0350a52391252e18c045056454d

9 years agoMerge "Fix a bug in optimizing when the null constant has been DCE."
Nicolas Geoffray [Thu, 18 Jun 2015 11:46:30 +0000 (11:46 +0000)]
Merge "Fix a bug in optimizing when the null constant has been DCE."

9 years agoART: Fix reporting initialized classes by CompilerDriver.
Vladimir Marko [Mon, 15 Jun 2015 17:52:54 +0000 (18:52 +0100)]
ART: Fix reporting initialized classes by CompilerDriver.

Fix a bug where the CompilerDriver was erroneously reporting
classes as initialized during AOT compilation when they were
not guaranteed to be initialized at runtime.

This fix prevents the Quick compiler from inlining calls to
static methods in classes that are not guaranteed to be
initialized, so that the runtime performs the initialization
required for correctness.

Bug: 21847756
Change-Id: I6fee5ef9c05c2e5190ab8a9fe61365d5119011c5

9 years agoQuick: Fix marking unused registers in DCE.
Vladimir Marko [Wed, 17 Jun 2015 21:00:09 +0000 (22:00 +0100)]
Quick: Fix marking unused registers in DCE.

Bug: 21702651
Change-Id: Idca17b465152e0c61704fc49761c7ba89caf5b20

9 years agoam ad0895d3: (-s ours) am f61ab978: (-s ours) Merge "Add support for inlining already...
Nicolas Geoffray [Thu, 18 Jun 2015 09:54:28 +0000 (09:54 +0000)]
am ad0895d3: (-s ours) am f61ab978: (-s ours) Merge "Add support for inlining already sharpened interface calls. DO NOT MERGE ANYWHERE" into mnc-dev

* commit 'ad0895d3681e5696bb592e466fa8ed51224cff44':
  Add support for inlining already sharpened interface calls. DO NOT MERGE ANYWHERE

9 years agoam 23fad477: Fix reference comparison after redundant phi elimination.
Nicolas Geoffray [Thu, 18 Jun 2015 09:54:27 +0000 (09:54 +0000)]
am 23fad477: Fix reference comparison after redundant phi elimination.

* commit '23fad477d90b826956158aac41d70461c2c7a3ed':
  Fix reference comparison after redundant phi elimination.