OSDN Git Service
Andreas Gampe [Wed, 5 Aug 2015 01:08:53 +0000 (01:08 +0000)]
Revert "Revert "ART: Use bionic TLS slot for thread-self""
This reverts commit
50832b6804d15ea5ddfe99a2753a09111b5bfe37.
Fix clearing the TLS on detach.
Change-Id: I75ed5ccccb4f31800e5f893055e96067a9695258
Andreas Gampe [Wed, 5 Aug 2015 00:36:05 +0000 (00:36 +0000)]
Merge "Revert "ART: Use bionic TLS slot for thread-self""
Andreas Gampe [Wed, 5 Aug 2015 00:31:02 +0000 (00:31 +0000)]
Revert "ART: Use bionic TLS slot for thread-self"
This reverts commit
b81535875ff46d1630c76091fe969a9eb7fc4d16.
Breaking tests, need to investigate.
Change-Id: Iab8c4f6136e6cb9bd6cf3c3495aa33962ef890ee
Nicolas Geoffray [Wed, 5 Aug 2015 00:10:01 +0000 (00:10 +0000)]
Merge "Parallel Move Resolver: Perform Stack/Stack first"
Andreas Gampe [Tue, 4 Aug 2015 22:35:34 +0000 (22:35 +0000)]
Merge "ART: Use bionic TLS slot for thread-self"
Nicolas Geoffray [Tue, 4 Aug 2015 19:06:16 +0000 (19:06 +0000)]
Merge "Update expectation."
Nicolas Geoffray [Tue, 4 Aug 2015 17:16:43 +0000 (18:16 +0100)]
Update expectation.
Vogar wants # between class and method.
Change-Id: I3e4d54e2cc22bac6b73fe611fcbfcbe39095159c
Andreas Gampe [Tue, 4 Aug 2015 16:47:39 +0000 (16:47 +0000)]
Merge "ART: Use Clang default integrated assembler."
Chih-Hung Hsieh [Mon, 27 Jul 2015 17:10:44 +0000 (10:10 -0700)]
ART: Use Clang default integrated assembler.
Issues with x86, arm32 and arm64 have been fixed.
Allow the use of the integrated assembler.
Bug:
22874917
Change-Id: Iacfffda29d57bfc931da568a9436c2e34cb38df6
Andreas Gampe [Tue, 4 Aug 2015 15:16:33 +0000 (15:16 +0000)]
Merge "ART: Fix arm32 assembly for Clang"
Chih-Hung Hsieh [Mon, 27 Jul 2015 17:10:44 +0000 (10:10 -0700)]
ART: Fix arm32 assembly for Clang
Clang ignores .thumb_func and requires an explicit
.thumb directive, as given by the ARM Unified Assembler
Language. Conditionally add .thumb to thumb2 functions.
Bug:
22762844
Change-Id: I08abdb5f4e0ba5135d4ed850ca3e284203f95a03
Vladimir Marko [Tue, 4 Aug 2015 11:20:31 +0000 (11:20 +0000)]
Merge "Added repe_cmpsq instruction to x86_64 assembler"
Vladimir Marko [Tue, 4 Aug 2015 09:05:51 +0000 (09:05 +0000)]
Merge "ARM/ARM64: Implement numberOfLeadingZeros intrinsic."
Scott Wakeling [Fri, 10 Jul 2015 10:42:06 +0000 (11:42 +0100)]
ARM/ARM64: Implement numberOfLeadingZeros intrinsic.
Change-Id: I4042fb7a0b75140475dcfca23e8f79d310f5333b
agicsaki [Tue, 4 Aug 2015 03:14:29 +0000 (20:14 -0700)]
Added repe_cmpsq instruction to x86_64 assembler
Change-Id: I9085694fd3313581b2775a8267ccda58fec19a1a
Andreas Gampe [Mon, 3 Aug 2015 22:07:15 +0000 (22:07 +0000)]
Merge "ART: Fix stub_test"
Igor Murashkin [Mon, 3 Aug 2015 21:27:27 +0000 (21:27 +0000)]
Merge "cleanup: Replace pointers with out-parameters and fix-up formatting"
Aart Bik [Mon, 3 Aug 2015 17:48:11 +0000 (17:48 +0000)]
Merge "Optimizing: Add Non Temporal Move support for x86"
Andreas Gampe [Mon, 3 Aug 2015 17:25:06 +0000 (10:25 -0700)]
ART: Fix stub_test
Clobber another register on arm32.
Change-Id: I0d355f69dfa7e6d86cb7c211f6ac2cb56f995d9d
Roland Levillain [Mon, 3 Aug 2015 14:57:38 +0000 (14:57 +0000)]
Merge "Optimizing: Use more X86 3 operand multiplies"
Roland Levillain [Mon, 3 Aug 2015 14:55:11 +0000 (14:55 +0000)]
Merge "Revert "Optimizing String.Equals as an intrinsic (x86)""
Roland Levillain [Mon, 3 Aug 2015 14:54:45 +0000 (14:54 +0000)]
Revert "Optimizing String.Equals as an intrinsic (x86)"
Reverted as it breaks the compilation of boot.{oat,art} on x86 (although this CL may not be the culprit, as the issue seems to come from Optimizing's register allocator).
This reverts commit
8ab7bd6c8b10ad58758c33a1dc9326212bd200e9.
Change-Id: If7c8b6258d1e690f4d2a06bcc82c92563ac6cdef
Roland Levillain [Mon, 3 Aug 2015 14:34:42 +0000 (14:34 +0000)]
Merge "Fix ambiguous phrasing in tests comments regarding $opt$."
Roland Levillain [Mon, 3 Aug 2015 14:20:02 +0000 (15:20 +0100)]
Fix ambiguous phrasing in tests comments regarding $opt$.
Change-Id: I78e6bccbe35288df5de30700d3877bbcdef37d65
Roland Levillain [Mon, 3 Aug 2015 08:48:11 +0000 (08:48 +0000)]
Merge "Optimizing String.Equals as an intrinsic (x86)"
Andreas Gampe [Sat, 1 Aug 2015 04:14:14 +0000 (04:14 +0000)]
Merge "ART: Check a RETURN_VOID_NO_BARRIER like a RETURN_VOID"
Andreas Gampe [Fri, 31 Jul 2015 20:36:10 +0000 (13:36 -0700)]
ART: Check a RETURN_VOID_NO_BARRIER like a RETURN_VOID
RETURN_VOID_NO_BARRIER is used in all methods with return-void,
as long as they're not a constructor and have been quickened. As
such, do the regular checking of the return type.
Bug: https://code.google.com/p/android/issues/detail?id=181700
Bug:
22871329
Change-Id: I11bcf7bffd91fc01995b703a99e603ddb370016e
Igor Murashkin [Sat, 1 Aug 2015 00:35:52 +0000 (17:35 -0700)]
cleanup: Replace pointers with out-parameters and fix-up formatting
Cleans all of oat_file.h/.cc, parsed_options.h./cc, runtime.h/.cc
Other files are touched only incidentally to use outof(x) instead of &x.
Change-Id: I0bb15111149d53bb21aac2199ef33bd35333b0ca
Igor Murashkin [Fri, 31 Jul 2015 23:03:58 +0000 (23:03 +0000)]
Merge "runtime: cleanup class_linker out-parameters and formatting"
Igor Murashkin [Thu, 30 Jul 2015 23:39:45 +0000 (16:39 -0700)]
runtime: cleanup class_linker out-parameters and formatting
* Use out<T> instead of parameters
* Fixes up some other signatures to be more correct
* Reformat parameters to be one per line if they can't fit on one line
* Reformat locks to be one per line if they can't fit on the decl line
Change-Id: Ib71b08707d3ed0bb85299406c0b23a1de4e92a1c
Igor Murashkin [Fri, 31 Jul 2015 23:02:50 +0000 (23:02 +0000)]
Merge "Revert "runtime: cleanup class_linker out-parameters and formatting""
Igor Murashkin [Fri, 31 Jul 2015 23:02:30 +0000 (23:02 +0000)]
Revert "runtime: cleanup class_linker out-parameters and formatting"
This reverts commit
0de694ed3efe8412b83622a24074831edcc7e384.
Change-Id: I4b185584d6e47918179b16d76709cc3366872f3c
Igor Murashkin [Fri, 31 Jul 2015 23:02:04 +0000 (23:02 +0000)]
Merge "runtime: cleanup class_linker out-parameters and formatting"
agicsaki [Mon, 27 Jul 2015 17:25:10 +0000 (10:25 -0700)]
Optimizing String.Equals as an intrinsic (x86)
The third implementation of String.Equals. I added an intrinsic
in x86 which is similar to the original java implementation of
String.equals: an instanceof check, null check, length check, and
reference equality check followed by a loop comparing strings
character by character.
Interesting Benchmarking Values:
Optimizing Compiler on Nexus Player
Intrinsic 15-30 Character Strings: 177 ns
Original 15-30 Character Strings: 275 ns
Intrinsic Null Argument: 59 ns
Original Null Argument: 137 ns
Intrinsic 100-1000 Character Strings: 1812 ns
Original 100-1000 Character Strings: 6334 ns
Bug:
21481923
Change-Id: Ia386e19b9dbfe0dac688b20ec93d8f90f67af47e
Igor Murashkin [Thu, 30 Jul 2015 23:39:45 +0000 (16:39 -0700)]
runtime: cleanup class_linker out-parameters and formatting
* Use out<T> instead of parameters
* Fixes up some other signatures to be more correct
* Reformat parameters to be one per line if they can't fit on one line
* Reformat locks to be one per line if they can't fit on the decl line
Change-Id: I1031cf4edc41f95b89edb343d43ef93e15384206
Andreas Gampe [Fri, 31 Jul 2015 20:31:40 +0000 (20:31 +0000)]
Merge "Revert "ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors""
Andreas Gampe [Fri, 31 Jul 2015 20:31:24 +0000 (20:31 +0000)]
Revert "ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors"
This reverts commit
e93505f599682a2e95c4dac1c8633dec79c602bc.
This isn't the right thing to do, actually.
Bug:
22871329
Change-Id: I0a0a5a86c7c8d8afdf417444ca7d73e56e040515
Andreas Gampe [Fri, 31 Jul 2015 19:04:29 +0000 (19:04 +0000)]
Merge "ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors"
Andreas Gampe [Fri, 31 Jul 2015 18:34:24 +0000 (11:34 -0700)]
ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors
Let the verifier fail non-constructor methods using the no-barrier
variant of return. This is a quickened return purely to avoid the
constructor barrier for final fields, and cannot be used as a stand-in
for a regular return.
Bug: https://code.google.com/p/android/issues/detail?id=181700
Bug:
22871329
Change-Id: I9559c6a1599c20ce526582527ebed73b25242767
Andreas Gampe [Fri, 31 Jul 2015 17:52:19 +0000 (17:52 +0000)]
Merge "ART: Remove unique-numbered labels from arm64 assembly"
Chih-Hung Hsieh [Mon, 27 Jul 2015 17:10:44 +0000 (10:10 -0700)]
ART: Remove unique-numbered labels from arm64 assembly
Use local labels like 1, 2, 3 in macros. Clang does not support
the unique counter variable \@.
Bug:
22799850
Change-Id: I9ef1859be40b875ef4d7ae74ec1af52ad05f7352
Andreas Gampe [Fri, 31 Jul 2015 17:46:52 +0000 (17:46 +0000)]
Merge "Added repe_cmpsl instruction to x86, x86_64 assemblers"
agicsaki [Fri, 31 Jul 2015 17:31:14 +0000 (10:31 -0700)]
Added repe_cmpsl instruction to x86, x86_64 assemblers
Support for this instruction has already been added to the disassembler
in commit
124b392d.
Change-Id: I6e8401a7b814618758427f5cc6b4992e265f937c
Roland Levillain [Fri, 31 Jul 2015 17:09:10 +0000 (17:09 +0000)]
Merge "Optimizing: Replace x86 xchg use with xor sequence"
David Brazdil [Fri, 31 Jul 2015 16:28:03 +0000 (16:28 +0000)]
Merge "ART: Change stream output kNone intrinsic"
David Brazdil [Fri, 31 Jul 2015 16:10:43 +0000 (17:10 +0100)]
ART: Change stream output kNone intrinsic
Name of intrinsics is dumped with C1visualizer and checked with
Checker whose attributes should not contain whitespace. This patch
changes the output printed for non-intrinsified invokes.
Change-Id: I3e565e8c9e26eb61026e7a13823eab20409dd63a
Shinichiro Hamaji [Fri, 31 Jul 2015 06:03:10 +0000 (06:03 +0000)]
Merge "Do not use -DUSE_*MALLOC for host build"
Andreas Gampe [Thu, 30 Jul 2015 23:31:39 +0000 (23:31 +0000)]
Merge "Added disassembler support for repe_cmpsw instruction in x86, x86_64"
Igor Murashkin [Thu, 30 Jul 2015 23:31:12 +0000 (23:31 +0000)]
Merge "base: replace raw pointers for out-parameters with safer out<T>"
Mathieu Chartier [Thu, 30 Jul 2015 21:57:12 +0000 (21:57 +0000)]
Merge "Don't dump stack when deleting an invalid local ref"
Mathieu Chartier [Thu, 30 Jul 2015 18:41:04 +0000 (11:41 -0700)]
Don't dump stack when deleting an invalid local ref
Bug:
21724724
(cherry picked from commit
2ada67b3145d38b352297bdb9d0546f58882e208)
Change-Id: Ifa99df9ee9f3265038a0c0f7944e834e42c498d4
Igor Murashkin [Thu, 23 Jul 2015 23:53:53 +0000 (16:53 -0700)]
base: replace raw pointers for out-parameters with safer out<T>
Add a zero-cost type-safe abstraction for representing "out" parameters
(i.e. when the calling function has to return multiple results out
by-reference into the argument slots instead of using the return slot).
Change-Id: I33a941e4863b6bed71d2bfa43d7f48e9b111f83f
agicsaki [Thu, 30 Jul 2015 20:40:13 +0000 (13:40 -0700)]
Added disassembler support for repe_cmpsw instruction in x86, x86_64
Also included support for repe_cmpsl instruction. This is a follow up to
commit
71311f868e2 which added support for repe_cmpsw in the x86 and
x86_64 assemblers.
Change-Id: I2beac05a57341539acf96cdf77062facd031a864
David Brazdil [Thu, 30 Jul 2015 17:23:05 +0000 (17:23 +0000)]
Merge "ART: Fix gtest after GraphChecker CL"
David Brazdil [Thu, 30 Jul 2015 17:21:41 +0000 (18:21 +0100)]
ART: Fix gtest after GraphChecker CL
Change-Id: Ia85cb9622b3927c401325d87f2d7a52096b7fe5d
Andreas Gampe [Thu, 30 Jul 2015 16:46:31 +0000 (16:46 +0000)]
Merge "ART: Use __ANDROID__ instead of HAVE_ANDROID_OS"
David Brazdil [Thu, 30 Jul 2015 16:45:35 +0000 (16:45 +0000)]
Merge "ART: Store and check exceptional predecessors"
David Brazdil [Wed, 29 Jul 2015 09:31:29 +0000 (10:31 +0100)]
ART: Store and check exceptional predecessors
Future CL on register allocation for try/catch will require the
knowledge of instructions which throw into a catch block. This patch
stores that information with the basic block and verifies it in the
graph checker.
More checks on try catch also added to the graph checker and an order
of exception handlers is enforced in TryBoundary successors.
Change-Id: I3034c610791ea51d96724bcca97f49ec6ecf2af3
Andreas Gampe [Thu, 30 Jul 2015 15:57:50 +0000 (08:57 -0700)]
ART: Use __ANDROID__ instead of HAVE_ANDROID_OS
Use the proper define.
Change-Id: I71e291ac25f5d5f0187ac9b6ef2d6872f19e6085
Mark Mendell [Wed, 15 Jul 2015 18:09:35 +0000 (14:09 -0400)]
Optimizing: Add Non Temporal Move support for x86
Add moves that don't pollute the data cache. These can be used for
assigning large data structures.
Change-Id: I14d91ba6264f5ce2f128033d65d59b2536426643
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Mark Mendell [Tue, 28 Jul 2015 20:41:21 +0000 (16:41 -0400)]
Optimizing: Replace x86 xchg use with xor sequence
On some x86 processors, xchg is serializing even when exchanging two
registers. Replace the xchgl use with the 3 xor sequence to swap to
registers. This is generally faster and doesn't serialize the machine.
Change-Id: Iea2cd993d3b70a103bbdd1dbf7818e26ae29387c
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Shinichiro Hamaji [Wed, 29 Jul 2015 07:30:29 +0000 (16:30 +0900)]
Do not use -DUSE_*MALLOC for host build
When we use ninja and switch a lunch target to another, they
may cause unnecessary rebuild because ninja detects command
line changes. They are used in #ifdef HAVE_ANDROID_OS so there
should be no semantics changes.
Change-Id: I629c94c872c8fc8ba4b4c59b565338e14570c3fe
Mathieu Chartier [Thu, 30 Jul 2015 01:18:56 +0000 (01:18 +0000)]
Merge "Clear temporary class arrays before linking the new class"
Mathieu Chartier [Thu, 30 Jul 2015 00:25:41 +0000 (17:25 -0700)]
Clear temporary class arrays before linking the new class
Fixes DCHECK failure from remembered sets where two classes had the
same field array which caused the remembered set to incorrectly
remove a card with a reference to the target space.
Change-Id: If43875616fb750e20667212381bc7e359c4214a5
Andreas Gampe [Wed, 29 Jul 2015 23:54:35 +0000 (23:54 +0000)]
Merge "Register signal handler to kernel if not claimed"
Andreas Gampe [Wed, 29 Jul 2015 23:30:34 +0000 (23:30 +0000)]
Merge "ART: Relax IsInstantiable check"
Calin Juravle [Wed, 29 Jul 2015 18:33:07 +0000 (18:33 +0000)]
Merge "Take into account that we might end up with unresolved classes."
Calin Juravle [Wed, 29 Jul 2015 18:25:24 +0000 (19:25 +0100)]
Take into account that we might end up with unresolved classes.
bug:
22821472
Change-Id: I615ab0b41c8cadae9f327e07dcff71755f7146c2
Calin Juravle [Wed, 29 Jul 2015 18:00:56 +0000 (18:00 +0000)]
Merge "Fix gtests."
Calin Juravle [Wed, 29 Jul 2015 17:59:13 +0000 (18:59 +0100)]
Fix gtests.
Change-Id: I19fd46ed96b4f620209533c96faa18d1077b004b
Calin Juravle [Wed, 29 Jul 2015 17:30:10 +0000 (17:30 +0000)]
Merge "Allow for fine tuning the inliner."
Calin Juravle [Wed, 29 Jul 2015 12:52:12 +0000 (13:52 +0100)]
Allow for fine tuning the inliner.
Bug:
21868508
Change-Id: Ice7f1604ed65e3d4ed2a010ee431272b7d000cdb
Mathieu Chartier [Wed, 29 Jul 2015 17:16:36 +0000 (17:16 +0000)]
Merge "Clean up class visitors"
Mathieu Chartier [Wed, 29 Jul 2015 00:23:28 +0000 (17:23 -0700)]
Clean up class visitors
Move from function pointers to virtual function visitors.
Change-Id: I68cb83c1d2ed9b5a89f8e534fe7ca4bbc1c91f45
Calin Juravle [Wed, 29 Jul 2015 16:09:38 +0000 (16:09 +0000)]
Merge "Revert "Revert "Revert "Revert "Use the object class as top in reference type propagation"""""
Calin Juravle [Wed, 29 Jul 2015 16:09:29 +0000 (16:09 +0000)]
Merge "Revert "Revert "Revert "Revert "Fixes and improvements in ReferenceTypePropagation"""""
Calin Juravle [Tue, 28 Jul 2015 14:41:11 +0000 (14:41 +0000)]
Revert "Revert "Revert "Revert "Use the object class as top in reference type propagation""""
This reverts commit
b734808d0c93af98ec4e3539fdb0a8c0787263b0.
Change-Id: Ifd925f166761bcb9be2268ff0fc9fa3a72f00c6f
Roland Levillain [Wed, 29 Jul 2015 12:45:16 +0000 (12:45 +0000)]
Merge "Run intrinsics on inlined code."
Scott Wakeling [Wed, 22 Jul 2015 13:32:44 +0000 (14:32 +0100)]
Run intrinsics on inlined code.
Fixes any prior intrinsics recognition being lost if the containing code
block is inlined.
Change-Id: I6c89973545af97a4fe2444a9bd6efcc12d0d1b10
Andreas Gampe [Wed, 29 Jul 2015 02:51:37 +0000 (19:51 -0700)]
ART: Use bionic TLS slot for thread-self
Use a private bionic TLS slot to store self instead of using
pthreads.
Change-Id: Icc86a2b7590734637366f9d5e41a5c6d18cc5772
Mathieu Chartier [Tue, 28 Jul 2015 23:55:07 +0000 (23:55 +0000)]
Merge "Split the class table for each class loader"
Mathieu Chartier [Mon, 27 Jul 2015 18:19:43 +0000 (11:19 -0700)]
Split the class table for each class loader
Each class loader now has its own class table. This makes it easier
to mark classes when a classloader is marked.
Fixed a bug in LookupClass where we used to look ignore the return
value of InsertClass.
Bug:
22720414
Change-Id: If2cd717989a20a6e245ebec24ad52dc47dd3207d
Mathieu Chartier [Tue, 28 Jul 2015 22:58:23 +0000 (22:58 +0000)]
Merge "Add read barrier support to the entrypoints."
Mark Mendell [Tue, 28 Jul 2015 21:26:55 +0000 (17:26 -0400)]
Parallel Move Resolver: Perform Stack/Stack first
On machines like x86, by the time other parallel moves are done, there
may be no free registers available to move/swap without having to save
and restore a register.
To avoid this, perform stack/stack first, while there is a good chance
that there is a destination register that we can use. On the X86, this
avoids a lot of push eax/pop eax code.
Change-Id: I57076271b5672c931a93888ff23e30b2567f43b8
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Mark Mendell [Mon, 27 Jul 2015 20:13:10 +0000 (16:13 -0400)]
Optimizing: Use more X86 3 operand multiplies
The X86_64 code generator generated 3 operand multiplies for long
multiplication only. Add support for 3 operand multiplication for
int as well for both X86 and X86_64.
Note that the RHS operand must be a 32 bit constant, and that it is
possible for the constant to end up in a register (!) due to a previous
use by another instruction. Handle this case by checking the operand,
otherwise the first input might not be the same as the output, due to
the use of Any().
Also allow stack operands for multiplication.
Change-Id: I8f3d14cc01e9a91210f418258aa18065ee87979d
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Man Cao [Wed, 15 Jul 2015 05:31:42 +0000 (22:31 -0700)]
Add read barrier support to the entrypoints.
Also remove "THIS_LOAD_REQUIRES_READ_BARRIER" since reading
an ArtMethod* no longer needs read barrier.
stub_test should also work with read barriers now.
Change-Id: I3fba18042de2f867a18dbdc38519986212bd9769
Narayan Kamath [Tue, 28 Jul 2015 16:31:12 +0000 (16:31 +0000)]
Merge "Temporarily suppress TimeZoneTest.testAllDisplayNames."
Narayan Kamath [Tue, 28 Jul 2015 15:21:35 +0000 (16:21 +0100)]
Temporarily suppress TimeZoneTest.testAllDisplayNames.
bug:
22786792
Change-Id: Ib256928e8b8e2aac93e4001426613c5629728919
Andreas Gampe [Tue, 28 Jul 2015 15:30:36 +0000 (15:30 +0000)]
Merge "ART: Print out hex for NewStringUTF failure"
Calin Juravle [Tue, 28 Jul 2015 14:40:50 +0000 (14:40 +0000)]
Revert "Revert "Revert "Revert "Fixes and improvements in ReferenceTypePropagation""""
This reverts commit
e344a8070d4549d513413c06767abf8a2c5e9709.
Change-Id: I400fab0e02ce3c11376cc1f3ae9c7cf2c82ffcc1
Calin Juravle [Tue, 28 Jul 2015 11:54:11 +0000 (11:54 +0000)]
Merge "Revert "Revert "Revert "Fixes and improvements in ReferenceTypePropagation""""
Calin Juravle [Tue, 28 Jul 2015 11:53:36 +0000 (11:53 +0000)]
Merge "Revert "Revert "Revert "Use the object class as top in reference type propagation""""
Calin Juravle [Tue, 28 Jul 2015 11:52:23 +0000 (11:52 +0000)]
Revert "Revert "Revert "Fixes and improvements in ReferenceTypePropagation"""
This reverts commit
00e3b38be4b280d6d7a7e843cd336ffbd2ba4365.
Change-Id: I4dbadb2d7312a410f1c56283f063dd82156cf702
Calin Juravle [Tue, 28 Jul 2015 11:52:02 +0000 (11:52 +0000)]
Revert "Revert "Revert "Use the object class as top in reference type propagation"""
This reverts commit
80caa1478cf3df4eac1214d8a63a4da6f4fe622b.
Change-Id: I63b51ca418b19b2bfb5ede3f8444f8fbeb8a339d
Calin Juravle [Tue, 28 Jul 2015 10:44:36 +0000 (10:44 +0000)]
Merge "Revert "Revert "Use the object class as top in reference type propagation"""
Calin Juravle [Tue, 28 Jul 2015 10:44:27 +0000 (10:44 +0000)]
Merge "Revert "Revert "Fixes and improvements in ReferenceTypePropagation"""
Roland Levillain [Tue, 28 Jul 2015 10:11:04 +0000 (10:11 +0000)]
Merge "Added repe_cmpsw instruction to x86, x86_64 assemblers"
Andreas Gampe [Tue, 28 Jul 2015 04:41:49 +0000 (21:41 -0700)]
ART: Relax IsInstantiable check
Relax the IsInstantiable check when converting an uninitialized
reference type. This is a double protection that leads to wrong
behavior as it may trigger an incorrect hard failure.
Bug:
22777307
Change-Id: Ie555b175f78876647fef083369d40bfe3fd7b69a
Andreas Gampe [Tue, 28 Jul 2015 04:03:25 +0000 (21:03 -0700)]
ART: Print out hex for NewStringUTF failure
Print out the input data as a hex stream in case of a NewStringUTF
input format failure.
Bug:
22773761
Change-Id: I99a275bebb89564b2d71f297c7f5b9543cf4312d
Mathieu Chartier [Mon, 27 Jul 2015 23:19:31 +0000 (23:19 +0000)]
Merge "Add remembered set functionality for native roots"