OSDN Git Service
Mathieu Chartier [Tue, 10 Nov 2015 03:02:58 +0000 (03:02 +0000)]
Merge "Delete flaky DCHECK"
Mathieu Chartier [Tue, 10 Nov 2015 03:01:00 +0000 (19:01 -0800)]
Delete flaky DCHECK
Fixes mips build
Change-Id: I738b41f09f3c926f21640e358cf0bd5557167b0e
Mathieu Chartier [Tue, 10 Nov 2015 02:51:37 +0000 (02:51 +0000)]
Merge "Fix mac build"
Mathieu Chartier [Tue, 10 Nov 2015 02:50:49 +0000 (18:50 -0800)]
Fix mac build
Change-Id: I22bf169f15483e54b97d77ff0887cd1fde428af9
Mathieu Chartier [Tue, 10 Nov 2015 02:07:04 +0000 (02:07 +0000)]
Merge "Add low_4gb support to MapFile and MapFileAtAddress"
Alex Light [Tue, 10 Nov 2015 01:36:31 +0000 (01:36 +0000)]
Merge "Some cleanup for tests 960-965 build scripts."
Mathieu Chartier [Mon, 9 Nov 2015 23:16:56 +0000 (15:16 -0800)]
Add low_4gb support to MapFile and MapFileAtAddress
Motivation is to use this for loading app images in low 4GB at a
non fixed address.
Added test.
Bug:
22858531
Change-Id: I0f79a4a7bfbfbdfc112e41b25c8682b1fb932ab7
Alex Light [Mon, 9 Nov 2015 22:26:35 +0000 (14:26 -0800)]
Some cleanup for tests 960-965 build scripts.
Make all 96* build scripts consistent and update 965 to build and run
with jack.
Change-Id: If27ee9c92880c75307a18b054ba926670877073a
Andreas Gampe [Mon, 9 Nov 2015 21:25:47 +0000 (21:25 +0000)]
Merge "ART: Rerun the verifier for compile-time failures"
Alex Light [Mon, 9 Nov 2015 19:30:10 +0000 (19:30 +0000)]
Merge "Class Linker: Implement default interface verification ordering."
Alex Light [Wed, 7 Oct 2015 23:08:36 +0000 (16:08 -0700)]
Class Linker: Implement default interface verification ordering.
We ensure that default interface verification failure is propagated to
the implementing class so that the compiler is able to properly handle
verification failures. Furthermore we ensure that default interfaces
are verified at the same time their implementing classes are.
This does not add additional support for default methods to the verifier.
This adds a basic test of this functionality.
Previously assumptions made about the order of verification in our
code could cause a check failure during compilation. Our old code
assumed that all code that would be run during a classes
initialization had been verified before any of it was run. The default
interfaces broke this assumption. Now we will simply verify default
interfaces with any classes that implement them.
Bug:
24618811
Change-Id: Ia11a50a28889dbd7ca22ffa730ef443e39f3cb5b
Andreas Gampe [Fri, 6 Nov 2015 04:39:56 +0000 (20:39 -0800)]
ART: Rerun the verifier for compile-time failures
To aid app failure diagnosis, by default re-run the verifier at
runtime to compute a better VerifyError message.
Rewrite the verifier driver code to pass the last actual low-level
verifier message.
Bug:
25432718
Change-Id: Ib8e6dd1ce8121045c0d38f54969100094c3dde6e
Mathieu Chartier [Mon, 9 Nov 2015 18:07:01 +0000 (18:07 +0000)]
Merge "Add more image writer comments and clean up"
Mathieu Chartier [Fri, 6 Nov 2015 00:33:15 +0000 (16:33 -0800)]
Add more image writer comments and clean up
Bug:
22858531
Change-Id: Ia3663856a7d9f67d9d9af329a54707ae2dc55a48
Nicolas Geoffray [Mon, 9 Nov 2015 14:25:19 +0000 (14:25 +0000)]
Merge "Revert "Revert "Revert "Use Jack lang dev version for compiling art tests""""
Nicolas Geoffray [Mon, 9 Nov 2015 14:00:28 +0000 (14:00 +0000)]
Revert "Revert "Revert "Use Jack lang dev version for compiling art tests"""
Breaks 962 and 963 run-tests.
This reverts commit
a6017d8fa6acfa35f6fad8169162f0e5bd034bc4.
Change-Id: I185e803640309f0055e6a3d767da201527b523e2
Vladimir Marko [Mon, 9 Nov 2015 13:53:13 +0000 (13:53 +0000)]
Merge "Optimizing: Rewrite search for common dominators."
Vladimir Marko [Fri, 6 Nov 2015 11:02:08 +0000 (11:02 +0000)]
Optimizing: Rewrite search for common dominators.
Provide a utility class that can be used to quickly search
for common dominators of two or more blocks. Change the
algorithm to avoid memory allocations.
Change-Id: Id72c975fc42377cb7622902f87c4262ea7b3cc38
Vladimir Marko [Mon, 9 Nov 2015 13:32:35 +0000 (13:32 +0000)]
Merge "Fix mip64 build: hide current method input only if it exists."
Vladimir Marko [Mon, 9 Nov 2015 12:54:16 +0000 (12:54 +0000)]
Fix mip64 build: hide current method input only if it exists.
Change-Id: I7d3cb34843d421babfb1f93469e770c05ee8d5a9
David Brazdil [Mon, 9 Nov 2015 12:47:19 +0000 (12:47 +0000)]
Merge "ART: Fix critical edge splitting under try/catch"
Nicolas Geoffray [Mon, 9 Nov 2015 12:44:51 +0000 (12:44 +0000)]
Merge "Revert "Revert "Use Jack lang dev version for compiling art tests"""
David Srbecky [Mon, 9 Nov 2015 11:58:43 +0000 (11:58 +0000)]
Merge "Fix build: lint error in elf_builder.h"
David Srbecky [Mon, 9 Nov 2015 11:56:52 +0000 (11:56 +0000)]
Fix build: lint error in elf_builder.h
Change-Id: I862bfe6c9a9f6ec3c16af2a720ce2ca75492e574
David Srbecky [Mon, 9 Nov 2015 11:30:31 +0000 (11:30 +0000)]
Merge "Rewrite ElfBuilder to make streaming directly to file easier."
David Brazdil [Fri, 6 Nov 2015 01:36:20 +0000 (01:36 +0000)]
ART: Fix critical edge splitting under try/catch
A critical edge would not be split if the predecessor ends with
TryBoundary. This would eventually trip liveness analysis because
a back edge block would have smaller liveness position than a nested
loop.
Another implication of this change is that an edge between a loop's
pre-header ending with TryBoundary and the header will be split,
guaranteeing that a pre-header always has just one successor.
Bug:
25493695
Bug:
25454012
Change-Id: I5a13b8bb74509b48f5d628906f7158af007f99ae
Vladimir Marko [Mon, 9 Nov 2015 10:14:35 +0000 (10:14 +0000)]
Merge "Optimizing: Remove unused ArtMethod* input from HInvokeStaticOrDirect."
Nicolas Geoffray [Mon, 9 Nov 2015 09:19:05 +0000 (09:19 +0000)]
Merge "Remove unused variable."
Nicolas Geoffray [Mon, 9 Nov 2015 09:15:15 +0000 (09:15 +0000)]
Remove unused variable.
Change-Id: I29d80004eba897b72304ec83fe89ed1071a24024
Nicolas Geoffray [Mon, 9 Nov 2015 08:57:28 +0000 (08:57 +0000)]
Merge "Fix interaction between JIT and instrumentation."
David Srbecky [Mon, 26 Oct 2015 10:57:09 +0000 (10:57 +0000)]
Rewrite ElfBuilder to make streaming directly to file easier.
The previous design required knowing all the sections and their
sizes before even the first byte of the file was written.
The new design allows sections to be written one by one without
any knowledge of later sections. Furthermore, as soon as
section is started, its virtual memory address is known,
which removes the need for the various patching passes.
The new ElfBuilder essentially tries to be a thin wrapper
around OutputStream which keeps track where the various
sections start/end and then writes their ELF headers.
Change-Id: I817e7f3b41882e4e4b9b442cfe56e4ef2e26babd
Nicolas Geoffray [Sat, 7 Nov 2015 14:15:46 +0000 (14:15 +0000)]
Merge "MIPS64: small improvements in code generation"
Nicolas Geoffray [Sat, 7 Nov 2015 14:13:58 +0000 (14:13 +0000)]
Merge "MIPS64: Improve integer division by constants"
Andreas Gampe [Sat, 7 Nov 2015 01:07:27 +0000 (01:07 +0000)]
Merge "ART: Fix return-object verification"
Andreas Gampe [Sat, 7 Nov 2015 00:24:49 +0000 (16:24 -0800)]
ART: Fix return-object verification
If the declared return type was unresolvable, we always threw a
soft failure, only. However, if the register type is not a reference,
this should always be a hard failure.
Add a test case.
Bug:
25494456
Change-Id: I6482a45ec36b58895816647da0ff3a731b31319f
Brian Carlstrom [Fri, 6 Nov 2015 23:16:22 +0000 (23:16 +0000)]
Merge "Use _exit instead of exit after exec fails"
Andreas Gampe [Fri, 6 Nov 2015 21:28:39 +0000 (21:28 +0000)]
Merge "Revert "Mark __jit_debug_register_code as a unique symbol""
Andreas Gampe [Fri, 6 Nov 2015 21:27:49 +0000 (21:27 +0000)]
Revert "Mark __jit_debug_register_code as a unique symbol"
This reverts commit
5caf652d7bfb43bdd2f3addfe8021a5fb8e3f796.
Something's going wrong on the Mac host side, even though this should be target only.
Change-Id: I165f23ee25cb1c4b0732e1d1afcae75271abcb09
Alexey Frunze [Thu, 24 Sep 2015 21:41:59 +0000 (14:41 -0700)]
MIPS64: small improvements in code generation
Specifically:
- More efficient load/store of constant 0 (and +0.0)
- Improved swapping of floats/doubles in registers
- Use kNoOutputOverlap wherever possible
- More efficient 64-bit integer comparison with 0
- More efficient load of integer constants of the form (2**n)-1
Change-Id: Ic2914d8865aa6616b9a0b21b3cc173d4477eb8c7
Alexey Frunze [Wed, 23 Sep 2015 22:12:39 +0000 (15:12 -0700)]
MIPS64: Improve integer division by constants
This also removes some unused instructions and instructions not
available on MIPS64R6.
Change-Id: I44bfe12c60344312c88c45e97b6b07dcd5bdc630
Vladimir Marko [Fri, 6 Nov 2015 12:57:55 +0000 (12:57 +0000)]
Optimizing: Remove unused ArtMethod* input from HInvokeStaticOrDirect.
Change-Id: Iea99fa683440673ff517e246f35fade96600f229
David Brazdil [Fri, 6 Nov 2015 19:36:29 +0000 (19:36 +0000)]
Merge "ART: Fix simplification of catch blocks in the presence of dead code"
David Brazdil [Thu, 5 Nov 2015 21:25:24 +0000 (21:25 +0000)]
ART: Fix simplification of catch blocks in the presence of dead code
Simplification of catch blocks transforms the code so that catch
blocks have only exceptional predecessors. However, it is invoked
before trivially dead code is eliminated which breaks simple
assumptions such as the fact that a catch block cannot start with
move-exception if it has non-exceptional predecessors. This patch
fixes the algorithm to work under these relaxed conditions.
Bug:
25494450
Bug:
25492628
Change-Id: Idc8d010102a4b8b9a6cd918b98d6e11d1838db0c
Tamas Berghammer [Fri, 6 Nov 2015 18:53:52 +0000 (18:53 +0000)]
Merge "Mark __jit_debug_register_code as a unique symbol"
Tamas Berghammer [Wed, 2 Sep 2015 10:24:33 +0000 (11:24 +0100)]
Mark __jit_debug_register_code as a unique symbol
This symbol is used to notify the debugger about JIT library load/unload
events. Because of ICF, several functions with the same body put to the
same adress by the linker what causes the debugger to get notifictaion
about JIT load/unload events in several case where it isn't really happened.
This change disable ICF for the __jit_debug_register_code symbol to prevent
this behavior with keeping the symbol unique in the object file.
Change-Id: I392be25d8a07f47f8217bf693c8e5919d29cac7b
Andreas Gampe [Fri, 6 Nov 2015 18:42:04 +0000 (18:42 +0000)]
Merge "ART: Change behavior for rethrowing init failures (2)"
Alex Light [Fri, 6 Nov 2015 18:01:11 +0000 (18:01 +0000)]
Revert "Revert "Use Jack lang dev version for compiling art tests""
This reverts commit
a5a79b6607471371bb80ff8fee36dbf05c807ee5.
Change-Id: Ie890882c1c344099fbf58abce022b2815e809e78
Vladimir Marko [Fri, 6 Nov 2015 17:43:58 +0000 (17:43 +0000)]
Merge "ART: Fix potential integer overflow in JNI."
Vladimir Marko [Fri, 6 Nov 2015 16:57:03 +0000 (16:57 +0000)]
ART: Fix potential integer overflow in JNI.
Change-Id: I06fe2035f911cfc8537e27961c2dc2c7e4d1e20d
Andreas Gampe [Fri, 6 Nov 2015 17:33:17 +0000 (17:33 +0000)]
Merge "MIPS32: java.lang.String.equals"
Chris Larsen [Mon, 2 Nov 2015 18:58:31 +0000 (10:58 -0800)]
MIPS32: java.lang.String.equals
Add intrinsic support for String.equals on MIPS32.
Change-Id: I2d184aa4d5dae7cdd4a89c2c902535692c9e7393
Nicolas Geoffray [Fri, 6 Nov 2015 14:18:27 +0000 (14:18 +0000)]
Fix interaction between JIT and instrumentation.
- The JIT needs to go through the instrumentation to update
entry points.
- The instrumention needs to know if a method got JITted
to know if needs to deoptimize.
bug:
25438583
Change-Id: I4b186a1da9f4a3fb329efd052a774d5502a902a1
Nicolas Geoffray [Fri, 6 Nov 2015 14:24:49 +0000 (14:24 +0000)]
Merge "Improve X86 handling of constants to Field/Array Set"
Mark Mendell [Wed, 4 Nov 2015 16:30:41 +0000 (11:30 -0500)]
Improve X86 handling of constants to Field/Array Set
AnTuTu 5.6 f.v.b() function on X86 showed several places where FP
constants were created using the stack, one in an inner loop.
Change ArraySet and *FieldSet to allow constants, and then generate
integer constant moves, rather than forcing the constant to be
materialized into a register. This will also help with register
pressure.
Change-Id: Ibebe2fed748a1bbeca47c36e9536b9b2357fc3cb
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Sebastien Hertz [Fri, 6 Nov 2015 13:16:41 +0000 (13:16 +0000)]
Merge "JDWP: fix returned tag for ClassType.NewInstance"
Vladimir Marko [Fri, 6 Nov 2015 09:54:39 +0000 (09:54 +0000)]
Merge "ART: Fix ignoring duplicate fields when loading class."
Nicolas Geoffray [Fri, 6 Nov 2015 09:38:03 +0000 (09:38 +0000)]
Merge "MIPS64: Implement virtual intrinsic slow path"
Mathieu Chartier [Fri, 6 Nov 2015 04:30:59 +0000 (04:30 +0000)]
Merge "Change test .dex.art to .art"
Mathieu Chartier [Fri, 6 Nov 2015 04:24:53 +0000 (20:24 -0800)]
Change test .dex.art to .art
Fixes some file names that were too long and causing tests to fail.
Change-Id: Id4929b2ba98e7c0bc7daa33ec3e783738f5e4719
Alexey Frunze [Fri, 6 Nov 2015 00:34:23 +0000 (16:34 -0800)]
MIPS64: Implement virtual intrinsic slow path
This fixes a crash in dex2oat while compiling boot.oat.
Change-Id: I44fc92809902d7fc226c88b3e3f081b72cc19ce5
Mathieu Chartier [Fri, 6 Nov 2015 00:19:56 +0000 (00:19 +0000)]
Merge "Revert "Revert "Add basic image writer support for app images"""
Mathieu Chartier [Thu, 5 Nov 2015 16:03:47 +0000 (08:03 -0800)]
Revert "Revert "Add basic image writer support for app images""
No changes, bug fixed in:
https://android-review.googlesource.com/#/c/180886/
Bug:
22858531
This reverts commit
4b018565e57c3349a3c1b5ec8ac9dae261c5e00b.
Change-Id: I86d9c2b55d535d803c6e1b3b8b4836bf6ff077e5
Mathieu Chartier [Thu, 5 Nov 2015 23:29:42 +0000 (23:29 +0000)]
Merge "Fix elf writer to properly handle empty text sections"
Mathieu Chartier [Thu, 5 Nov 2015 19:16:34 +0000 (11:16 -0800)]
Fix elf writer to properly handle empty text sections
Previously, empty text sections caused an underflow in the oat file
size.
Added regression test.
Bug:
22858531
Change-Id: I9391a3666ab04e32472a9776d5217fe1743417a9
Richard Uhler [Thu, 5 Nov 2015 20:19:41 +0000 (20:19 +0000)]
Merge "ahat: limit default number of results shown."
Tobias Lindskog [Wed, 4 Nov 2015 18:41:21 +0000 (19:41 +0100)]
Use _exit instead of exit after exec fails
A call to exit() will run the atexit handlers before exiting, which is
usually not desirable in a forked-off child process.
Calling _exit() instead will not run the atexit handlers.
Change-Id: Ide9a69c0468faafeaf32b0babd9fcf2b4f06f546
Sebastien Hertz [Thu, 5 Nov 2015 17:33:10 +0000 (17:33 +0000)]
Merge "Minor cleanup of Monitor::VisitLocks"
Vladimir Marko [Thu, 5 Nov 2015 15:30:12 +0000 (15:30 +0000)]
ART: Fix ignoring duplicate fields when loading class.
Bug:
25493974
Change-Id: I59e7ee6ee5b991b327553d022d7d212db415c9c3
Sebastien Hertz [Thu, 5 Nov 2015 14:57:30 +0000 (15:57 +0100)]
Minor cleanup of Monitor::VisitLocks
Uses the Instruction class to not bother with the decoding logic.
Change-Id: Id1501b57129084014f05e41513319639a630361d
Aart Bik [Thu, 5 Nov 2015 17:15:05 +0000 (17:15 +0000)]
Merge "Finalized all components of range analysis needed for dynamic bce."
Nicolas Geoffray [Thu, 5 Nov 2015 16:27:58 +0000 (16:27 +0000)]
Merge "X86-64: Split long/double constant array/field set"
Mark Mendell [Thu, 22 Oct 2015 21:35:49 +0000 (17:35 -0400)]
X86-64: Split long/double constant array/field set
A long constant needs to be in a register to store to memory.
By allowing stores of constants that are outside of the range of
int32_t, we reduce register usage.
Also support sets of float/double constants by using integer stores.
Rename RegisterOrInt32LongConstant to RegisterOrInt32Constant as it
now handles any type of constant.
Change-Id: I025d9ef889a5a433e45aa03b376bae40f14197d2
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Nicolas Geoffray [Thu, 5 Nov 2015 15:53:05 +0000 (15:53 +0000)]
Merge "Fix conditional jump over jmp (X86/X86-64/ARM32)"
Mark Mendell [Fri, 22 May 2015 20:58:19 +0000 (16:58 -0400)]
Fix conditional jump over jmp (X86/X86-64/ARM32)
Optimize the code generation for 'if' statements to jump to the
'false' block if the next block to be generated is the 'true' block.
Add an X86-64 test for this case.
Note that ARM64 & MIPS64 have not been updated.
Change-Id: Iebb1352feb9d3bd0142d8b0621a2e3069a708ea7
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
David Srbecky [Thu, 5 Nov 2015 15:42:08 +0000 (15:42 +0000)]
Merge "Move .dynsym ELF section after .text"
Sebastien Hertz [Thu, 5 Nov 2015 11:09:44 +0000 (12:09 +0100)]
JDWP: fix returned tag for ClassType.NewInstance
Bug:
25490662
Change-Id: I0c369f04342a60caef4f7462005804307a410d18
Nicolas Geoffray [Thu, 5 Nov 2015 14:43:33 +0000 (14:43 +0000)]
Merge "Fix flake around instrumentation."
David Srbecky [Tue, 3 Nov 2015 13:43:09 +0000 (13:43 +0000)]
Move .dynsym ELF section after .text
The main purpose of the dynamic section is to describe where
.text is and how large it is. It makes more sense to write
this section once we actually know this information.
Also write string sections (.dynstr and .strtab) before the
corresponding symbol sections because the strings take more space.
Neither of these changes is important now since we build the
sections in memory first, but it is move towards streaming of
the ELF file directly do disk.
Due to alignment requirements, the move increases the oat file
size by one page (4K) which is insignificant.
Change-Id: I61cc9f934b031d26a3a1f6007b51315e1538e3eb
Nicolas Geoffray [Thu, 5 Nov 2015 13:26:17 +0000 (13:26 +0000)]
Fix flake around instrumentation.
bug:
25492507
Change-Id: Ia4de07ecaf33c3153f5d93473671d2c93593f52d
Nicolas Geoffray [Thu, 5 Nov 2015 12:53:57 +0000 (12:53 +0000)]
Merge "Code cleanup to avoid CompilerDriver abstractions in JIT."
Nicolas Geoffray [Thu, 5 Nov 2015 12:16:09 +0000 (12:16 +0000)]
Merge "Properly delete the jit thread pool."
Nicolas Geoffray [Wed, 4 Nov 2015 17:22:16 +0000 (17:22 +0000)]
Properly delete the jit thread pool.
bug:
25461989
bug:
25462600
Change-Id: I273cf256285d01c085e4dea1d997955d029361b9
Nicolas Geoffray [Wed, 4 Nov 2015 14:36:55 +0000 (14:36 +0000)]
Code cleanup to avoid CompilerDriver abstractions in JIT.
Avoids allocating a CompiledMethod.
Change-Id: I35b4aa0d7c74daba68e827a01e71c300fce3b3bf
Nicolas Geoffray [Thu, 5 Nov 2015 09:20:42 +0000 (09:20 +0000)]
Merge "Revert "Use Jack lang dev version for compiling art tests""
Nicolas Geoffray [Thu, 5 Nov 2015 09:18:55 +0000 (09:18 +0000)]
Revert "Use Jack lang dev version for compiling art tests"
Tests fail.
This reverts commit
55fed87ff8b60d55589ee7df75b5080b17bce541.
Change-Id: I02c064c6774d72bc1349dbaab4d05ef69c537952
Nicolas Geoffray [Thu, 5 Nov 2015 08:49:07 +0000 (08:49 +0000)]
Merge "Revert "Add basic image writer support for app images""
Nicolas Geoffray [Thu, 5 Nov 2015 08:47:52 +0000 (08:47 +0000)]
Revert "Add basic image writer support for app images"
interpreter and jit tests fail.
Bug:
22858531
This reverts commit
c033474cfbfe1e963c07fa5c38aed02e35ed6f91.
Change-Id: Ic12a3e2a1908ac0db52d21a0b44b2508c88b2585
Yohann Roussel [Thu, 5 Nov 2015 08:09:50 +0000 (08:09 +0000)]
Merge "Use Jack lang dev version for compiling art tests"
Sebastien Hertz [Thu, 5 Nov 2015 07:38:42 +0000 (07:38 +0000)]
Merge "Fix continuous build"
Sebastien Hertz [Thu, 5 Nov 2015 07:32:10 +0000 (08:32 +0100)]
Fix continuous build
Stop building vogar.jar target since it no longer exists.
Change-Id: I4b834abd519736199c5ee1e5881b3531dbbf2c6f
Mathieu Chartier [Thu, 5 Nov 2015 02:09:05 +0000 (02:09 +0000)]
Merge "Add basic image writer support for app images"
Andreas Gampe [Tue, 3 Nov 2015 00:20:00 +0000 (16:20 -0800)]
ART: Change behavior for rethrowing init failures (2)
Always store the pending exception when making a class erroneous.
Instead of filtering by ExceptionInInitializerError, add an option
to the rethrow that enforces a NoClassDefFoundError, which is required
by the specification.
Use the libcore companion change to add the stored error (if any) as
a cause to the NoClassDefFoundError, which should significantly help
tracking down issues.
Fix run-test 008 to expect spec-compliant behavior. Test that a cause
has been set.
Bug:
25445103
Change-Id: I6a0dc54e78312283faf23415887eff387531407f
Mathieu Chartier [Mon, 2 Nov 2015 18:30:20 +0000 (10:30 -0800)]
Add basic image writer support for app images
Needed to handle references from app image -> boot image.
Generate app images for tests to enable some testing.
Bug:
22858531
Change-Id: I1af98b6c4dfcb3a147fb5b0dea64aa4946c7ce57
Andreas Gampe [Wed, 4 Nov 2015 23:42:13 +0000 (23:42 +0000)]
Merge "ART: Change behavior for rethrowing init failures"
David Brazdil [Wed, 4 Nov 2015 22:49:06 +0000 (22:49 +0000)]
Merge "Revert "ART: Implement DeadPhiHandling in PrimitiveTypePropagation""
David Brazdil [Wed, 4 Nov 2015 22:48:45 +0000 (22:48 +0000)]
Revert "ART: Implement DeadPhiHandling in PrimitiveTypePropagation"
Crashes on YouTube, need to investigate
This reverts commit
1749e2cfb5c5ed4d6970a09aecf898ca9cdfcb75.
Change-Id: If5f133d55dcc26b8db79a670a48fbd4af7807556
Andreas Gampe [Tue, 3 Nov 2015 00:20:00 +0000 (16:20 -0800)]
ART: Change behavior for rethrowing init failures
Allow to store a Throwable instance or a throwable class. Handle
rethrow accordingly.
Bug:
25444180
Change-Id: I703c2c6eaf34ad0e3bc0f5a104d65f2ff1b212ca
David Brazdil [Wed, 4 Nov 2015 18:48:52 +0000 (18:48 +0000)]
Merge "ART: Implement DeadPhiHandling in PrimitiveTypePropagation"
David Brazdil [Mon, 28 Sep 2015 12:49:59 +0000 (13:49 +0100)]
ART: Implement DeadPhiHandling in PrimitiveTypePropagation
DeadPhiHandling revives non-conflicting phis with environment uses
but does not properly merge types. To not duplicate code, this patch
modifies PrimitiveTypePropagation to deal with conflicts and thus
replaces DeadPhiHandling altogether.
Bug:
24252151
Bug:
24252100
Change-Id: I198c71d1b8167fc05783a5a24aa9f1e3804acafe
Aart Bik [Wed, 28 Oct 2015 21:23:40 +0000 (14:23 -0700)]
Finalized all components of range analysis needed for dynamic bce.
Rationale: added ability to generate taken-test, prompt back need
for finite-test; cleaned up the API now that bounds
check needs are all known.
Change-Id: I3d09b249965d1a980c09381240de175ca4b2e455