OSDN Git Service
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
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
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
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.
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.
Nicolas Geoffray [Fri, 19 Jun 2015 13:02:11 +0000 (13:02 +0000)]
Merge "Use 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
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.
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.
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.
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.
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."
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."
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
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.
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.
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.
Nicolas Geoffray [Fri, 19 Jun 2015 10:07:46 +0000 (10:07 +0000)]
Merge "Make Main public to pass tests on all configurations."
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.
Nicolas Geoffray [Fri, 19 Jun 2015 09:50:49 +0000 (09:50 +0000)]
Merge "Use the right bug number. Spotted by vmarko."
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
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
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
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
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
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
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
Mathieu Chartier [Fri, 19 Jun 2015 00:00:07 +0000 (00:00 +0000)]
Merge "Fix 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
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
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
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
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
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
Igor Murashkin [Thu, 18 Jun 2015 22:41:57 +0000 (22:41 +0000)]
Merge "test: 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
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
Mingyao Yang [Thu, 18 Jun 2015 21:21:40 +0000 (21:21 +0000)]
am
ef484d44: Fix nested deoptimization.
* commit '
ef484d442a3dcae2cd1842c5be0623f5cf71e4ab':
Fix nested deoptimization.
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
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
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
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
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
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
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"
Igor Murashkin [Thu, 18 Jun 2015 19:56:57 +0000 (19:56 +0000)]
Merge "interpreter: Add experimental lambda opcodes for invoke/create-lambda"
Vladimir Marko [Thu, 18 Jun 2015 19:55:57 +0000 (20:55 +0100)]
resolved conflicts for merge of
26d53e38 to mnc-dev-plus-aosp
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.
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
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.
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.
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
Vladimir Marko [Thu, 18 Jun 2015 18:22:48 +0000 (18:22 +0000)]
Merge "Quick: 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
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
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.
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
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.
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
Nicolas Geoffray [Thu, 18 Jun 2015 17:28:16 +0000 (17:28 +0000)]
Merge "Don't check the return type in the builder."
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
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
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
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.
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.
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.
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.
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
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.
David Brazdil [Thu, 18 Jun 2015 16:13:16 +0000 (16:13 +0000)]
Merge "ART: Allow PackedSwitch instructions with zero targets" into mnc-dev
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.
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.
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.
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)
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
Nicolas Geoffray [Thu, 18 Jun 2015 15:52:30 +0000 (15:52 +0000)]
Merge "Run a simplification pass before code generation."
Nicolas Geoffray [Thu, 18 Jun 2015 15:51:54 +0000 (15:51 +0000)]
Merge "Don't special case HCurrentMethod in DCE."
Vladimir Marko [Thu, 18 Jun 2015 15:51:35 +0000 (15:51 +0000)]
Merge "Quick: Fix marking unused registers in DCE."
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.
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.
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
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.
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.
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
Vladimir Marko [Thu, 18 Jun 2015 14:19:22 +0000 (14:19 +0000)]
Merge "ART: Fix reporting initialized classes by CompilerDriver."
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
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.
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.
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
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.
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.
David Brazdil [Thu, 18 Jun 2015 11:54:57 +0000 (11:54 +0000)]
Merge "ART: Remove old DCHECK that trips Baseline"
Nicolas Geoffray [Thu, 18 Jun 2015 11:53:49 +0000 (11:53 +0000)]
Merge "Bailout from compilation if an invoke is malformed."
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
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
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."
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
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
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
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.