OSDN Git Service
Mathieu Chartier [Sat, 14 Mar 2015 01:50:01 +0000 (01:50 +0000)]
Merge "Fix 32 bit loads of 64 bit direct code pointers"
Mathieu Chartier [Fri, 13 Mar 2015 23:32:44 +0000 (16:32 -0700)]
Fix 32 bit loads of 64 bit direct code pointers
Fixes 64 bit problems for JIT since the JIT code cache isn't always
in the low 2GB.
(cherry picked from commit
0d2ac187be10838c008e6aaa03e5e55014e9087e)
Change-Id: Ifd37d6a86166a91be1b258da7329c888fd82e4b9
Mathieu Chartier [Sat, 14 Mar 2015 01:25:46 +0000 (01:25 +0000)]
Merge "Add more info to who called SuspendAll"
Mathieu Chartier [Sat, 14 Mar 2015 00:21:25 +0000 (17:21 -0700)]
Add more info to who called SuspendAll
Helps diagnose related jank.
Change-Id: I38191cdda723c6f0355d0197c494a3dff2b6653c
Hiroshi Yamauchi [Fri, 13 Mar 2015 23:59:00 +0000 (23:59 +0000)]
Merge "Fix valgrind heap_test."
Hiroshi Yamauchi [Fri, 13 Mar 2015 23:48:55 +0000 (16:48 -0700)]
Fix valgrind heap_test.
Copy the exact object size rather than the aligned size to avoid
valgrind errors in the zygote compact collector.
Change-Id: I260b8901f96fb4c0937a1a5237120b56f6858b7a
Mathieu Chartier [Fri, 13 Mar 2015 23:53:16 +0000 (23:53 +0000)]
Merge "Change method verifiers to be thread local roots"
Mathieu Chartier [Fri, 13 Mar 2015 18:33:37 +0000 (11:33 -0700)]
Change method verifiers to be thread local roots
Bug:
10921004
Change-Id: I3a1425d76cd380587ba67ef6d5ec1227564e55bf
Nicolas Geoffray [Fri, 13 Mar 2015 18:46:44 +0000 (18:46 +0000)]
Merge "[optimizing] Don't record None locations in the stack maps."
Mathieu Chartier [Fri, 13 Mar 2015 18:46:06 +0000 (18:46 +0000)]
Merge "Disable jit for ARM 64 bit"
Mathieu Chartier [Fri, 13 Mar 2015 18:34:02 +0000 (11:34 -0700)]
Disable jit for ARM 64 bit
Until issues are fixed.
Bug:
17950037
Change-Id: I4517a1e188adf0a087576423066c348eb6ae81be
Nicolas Geoffray [Fri, 13 Mar 2015 14:39:40 +0000 (14:39 +0000)]
[optimizing] Don't record None locations in the stack maps.
- moved environment recording from code generator to stack map stream
- added creation/loading factory methods for the DexRegisterMap (hides
internal details)
- added new tests
Change-Id: Ic8b6d044f0d8255c6759c19a41df332ef37876fe
Nicolas Geoffray [Fri, 13 Mar 2015 18:27:43 +0000 (18:27 +0000)]
Merge "Update expectations for libcore bug."
Nicolas Geoffray [Fri, 13 Mar 2015 18:26:43 +0000 (18:26 +0000)]
Update expectations for libcore bug.
Change-Id: I88b949956440b8f0bc8f2bfe731fb7a3d18652e6
Hiroshi Yamauchi [Fri, 13 Mar 2015 18:02:08 +0000 (18:02 +0000)]
Merge "Exercise Heap::PreZygoteFork() in a test."
Hiroshi Yamauchi [Thu, 12 Mar 2015 22:40:53 +0000 (15:40 -0700)]
Exercise Heap::PreZygoteFork() in a test.
Change-Id: If41c931ffdbb0310536799b4515557770f2cd4b9
Mathieu Chartier [Fri, 13 Mar 2015 17:56:45 +0000 (17:56 +0000)]
Merge "ART: Add entries_ lock for race condition"
bowen_lai [Fri, 13 Mar 2015 06:34:40 +0000 (14:34 +0800)]
ART: Add entries_ lock for race condition
GCDaemon thread would visit incorrect RegType content when there is
another thread initializing classes.
Add a lock to protect entries_.
https://code.google.com/p/android/issues/detail?id=159849
Change-Id: Iabaa1c7f5cc5106b60a6e3856152e0797e8a5d6d
Nicolas Geoffray [Fri, 13 Mar 2015 17:04:29 +0000 (17:04 +0000)]
Merge "Refactor code in preparation of correct stack maps in slow path."
Nicolas Geoffray [Fri, 13 Mar 2015 16:36:36 +0000 (16:36 +0000)]
Refactor code in preparation of correct stack maps in slow path.
Move the logic of saving/restoring live registers in slow path
in the SlowPathCode method. Also add a RecordPcInfo helper to
SlowPathCode, that will act as the placeholder of saving correct
stack maps.
Change-Id: I25c2bc7a642ef854bbc8a3eb570e5c8c8d2d030c
Andreas Gampe [Fri, 13 Mar 2015 16:20:19 +0000 (16:20 +0000)]
Merge "ART: Fix arraycopy in Unstarted Runtime"
Andreas Gampe [Thu, 12 Mar 2015 01:34:44 +0000 (18:34 -0700)]
ART: Fix arraycopy in Unstarted Runtime
Add null and bounds checks. Add type checks. Implement correct
copy in case of overlap.
The emulation is not complete. Object arrays with different types
are not supported to simplify the implementation.
Change-Id: I107bed1ce884ca632de3fa648fa7a1c5f592e2a4
Roland Levillain [Fri, 13 Mar 2015 13:54:27 +0000 (13:54 +0000)]
Merge "Align CodeInfo regions instead of their inner subregions."
Roland Levillain [Fri, 13 Mar 2015 12:23:04 +0000 (12:23 +0000)]
Align CodeInfo regions instead of their inner subregions.
Instead of word-aligning every stack map region, as well as
the Dex register maps region of a CodeInfo object, just
align the whole CodeInfo region itself.
Change-Id: Ia35d213d2bd184729aa0d048874c76f7bc6da0f6
Roland Levillain [Fri, 13 Mar 2015 12:40:16 +0000 (12:40 +0000)]
Merge "Fix the computation of the size of the stack maps region."
Roland Levillain [Fri, 13 Mar 2015 11:45:07 +0000 (11:45 +0000)]
Fix the computation of the size of the stack maps region.
In art::StackMapStream::ComputeStackMapSize, compute the
size of a CodeInfo's stack maps region using the stack
mask size, not the maximum element of the stack mask.
Also, rename this method as
art::StackMapStream::ComputeStackMapsSize to make it clear
it that it covers all the stack maps of the CodeInfo item,
not just one stack map.
Change-Id: Icad21946dbca6e1ade2b82c9c2c535fdfed110a9
Nicolas Geoffray [Fri, 13 Mar 2015 10:37:33 +0000 (10:37 +0000)]
Merge "Disable inlining in Optimizing when --debuggable is set."
Nicolas Geoffray [Fri, 13 Mar 2015 10:32:31 +0000 (10:32 +0000)]
Merge "API change in StackVisitor::GetVReg*."
Nicolas Geoffray [Thu, 12 Mar 2015 15:05:13 +0000 (15:05 +0000)]
API change in StackVisitor::GetVReg*.
- Remove GetVReg() and SetVReg() that were expecting to always succeed.
- Change Quick-only methods to take a FromQuickCode suffix.
- Change deopt to use dead values when GetVReg does not succeed:
the optimizing compiler will not have a location for uninitialized
Dex registers and potentially dead registers.
Change-Id: Ida05773a97aff8aa69e0caf42ea961f80f854b77
Nicolas Geoffray [Fri, 13 Mar 2015 08:57:42 +0000 (08:57 +0000)]
Disable inlining in Optimizing when --debuggable is set.
Change-Id: I6365269e606e0c176e518c06719ebdaf6a4c4b88
Sergio Giro [Fri, 13 Mar 2015 09:53:39 +0000 (09:53 +0000)]
Merge "art/test/100-reflect2: change incorrect expectations."
Nicolas Geoffray [Fri, 13 Mar 2015 08:55:51 +0000 (08:55 +0000)]
Merge "Fix build breakage."
Nicolas Geoffray [Fri, 13 Mar 2015 08:55:09 +0000 (08:55 +0000)]
Fix build breakage.
Change-Id: I86959eca5d8f5458ff75c78776b0af9db9c26800
Nicolas Geoffray [Fri, 13 Mar 2015 08:45:10 +0000 (08:45 +0000)]
Merge "Tweak liveness when instructions are used in environments."
Dan Albert [Fri, 13 Mar 2015 00:49:22 +0000 (00:49 +0000)]
Merge "Fix copy/paste documentation error."
Dan Albert [Fri, 13 Mar 2015 00:26:05 +0000 (17:26 -0700)]
Fix copy/paste documentation error.
Change-Id: I153a8fdb3644c7178895ce0cc6c1c3f6ce3c6876
Andreas Gampe [Thu, 12 Mar 2015 23:17:12 +0000 (23:17 +0000)]
Merge "ART: More cutouts for unstarted runtime"
Andreas Gampe [Mon, 9 Mar 2015 19:57:41 +0000 (12:57 -0700)]
ART: More cutouts for unstarted runtime
Dex objects keep byte buffers to mapped dex files. For annotation
access we create them when compiling, but they must be cleared before
writing an image.
Add some Memory functions.
Bug:
19542228
Change-Id: I995791b43f2b09192d88645821d9e55b45f1b606
Hiroshi Yamauchi [Thu, 12 Mar 2015 22:56:46 +0000 (22:56 +0000)]
Merge "Improve 080-oom-throw-with-finalizer."
Andreas Gampe [Thu, 12 Mar 2015 22:37:14 +0000 (22:37 +0000)]
Merge "ART: Save work-line for pending runtime failure"
Hiroshi Yamauchi [Thu, 12 Mar 2015 20:12:53 +0000 (13:12 -0700)]
Improve 080-oom-throw-with-finalizer.
Avoid potential OOME that may be thrown during System.out.println or
System.runFinalization.
Bug:
19677738
Change-Id: I60c678000e965899cc876e746e72dc9cc0c6ebf9
Richard Uhler [Thu, 12 Mar 2015 20:07:59 +0000 (20:07 +0000)]
Merge "Add missing patchoatd dependency for oat_file_assistant_test."
Andreas Gampe [Thu, 12 Mar 2015 20:00:20 +0000 (20:00 +0000)]
Merge "ART: Allow multiple invoke-with for art script"
Richard Uhler [Thu, 12 Mar 2015 19:35:43 +0000 (12:35 -0700)]
Add missing patchoatd dependency for oat_file_assistant_test.
Change-Id: I11c64401d0b0c75ef4cc7fbdabf3fcc7d6fd048b
Roland Levillain [Thu, 12 Mar 2015 18:35:45 +0000 (18:35 +0000)]
Merge "Force word alignment of Dex register maps."
Roland Levillain [Thu, 12 Mar 2015 18:33:05 +0000 (18:33 +0000)]
Force word alignment of Dex register maps.
Plus some cosmetic changes.
Change-Id: I45e805aa87c2ef8fe8907eaae726cd2188b54897
Mathieu Chartier [Thu, 12 Mar 2015 18:09:49 +0000 (18:09 +0000)]
Merge "Add way to select arena type at runtime"
Andreas Gampe [Thu, 12 Mar 2015 18:05:47 +0000 (11:05 -0700)]
ART: Save work-line for pending runtime failure
When we detect a pending runtime failure, we'll handle it as a
generic throw, no matter the instruction type. But we won't have
saved the work-line, which means we'll try to merge garbage into
the handler's line.
Copy the work-line when we set the failure.
Bug:
19634276
Change-Id: I54df9e9492cd48802f93e2f1938adaadc55c9bd5
Mathieu Chartier [Thu, 12 Mar 2015 17:06:33 +0000 (10:06 -0700)]
Add way to select arena type at runtime
We now use MemMap for JIT, and malloc for everything else. This
should help fix the allegedly regressed compile times.
Change-Id: I6a6552738933f9d7ee3bd23f45e310818b19b70d
Nicolas Geoffray [Wed, 11 Mar 2015 15:11:19 +0000 (15:11 +0000)]
Tweak liveness when instructions are used in environments.
Instructions remain live when debuggable, but only instructions
with object types remain live when non-debuggable.
Enable StackVisitor::GetThisObject for optimizing.
Change-Id: Id87b2cbf33a02450059acc9993995782e5f28987
Mathieu Chartier [Thu, 12 Mar 2015 17:25:21 +0000 (17:25 +0000)]
Merge "ART: correct native bytes allocated in RegisterNativeAllocation"
Roland Levillain [Thu, 12 Mar 2015 17:00:14 +0000 (17:00 +0000)]
Merge "Opt compiler: Basic simplification for arithmetic operations."
Andreas Gampe [Thu, 12 Mar 2015 16:58:53 +0000 (09:58 -0700)]
ART: Allow multiple invoke-with for art script
Just like run-test, allow multiple invoke-with arguments that are
chained together.
Change-Id: I9f0d2d23fbff1cef32f0bb69e1bb803e157cfb73
Hiroshi Yamauchi [Thu, 12 Mar 2015 16:56:20 +0000 (16:56 +0000)]
Merge "Fix CC collector boot."
Roland Levillain [Thu, 12 Mar 2015 16:16:26 +0000 (16:16 +0000)]
Merge "Fix style error in runtime/memory_region_test.cc."
Roland Levillain [Thu, 12 Mar 2015 16:15:32 +0000 (16:15 +0000)]
Fix style error in runtime/memory_region_test.cc.
Change-Id: I0a34675c71e3ecb65566aa425ac30f5a52837cbb
Roland Levillain [Thu, 12 Mar 2015 15:44:09 +0000 (15:44 +0000)]
Merge "Compress the Dex register maps built by the optimizing compiler."
Roland Levillain [Thu, 12 Mar 2015 15:25:29 +0000 (15:25 +0000)]
Compress the Dex register maps built by the optimizing compiler.
- Replace the current list-based (fixed-size) Dex register
encoding in stack maps emitted by the optimizing compiler
with another list-based variable-size Dex register
encoding compressing short locations on 1 byte (3 bits for
the location kind, 5 bits for the value); other (large)
values remain encoded on 5 bytes.
- In addition, use slot offsets instead of byte offsets to
encode the location of Dex registers placed in stack
slots at small offsets, as it enables more values to use
the short (1-byte wide) encoding instead of the large
(5-byte wide) one.
- Rename art::DexRegisterMap::LocationKind as
art::DexRegisterLocation::Kind, turn it into a
strongly-typed enum based on a uint8_t, and extend it to
support new kinds (kInStackLargeOffset and
kConstantLargeValue).
- Move art::DexRegisterEntry from
compiler/optimizing/stack_map_stream.h to
runtime/stack_map.h and rename it as
art::DexRegisterLocation.
- Adjust art::StackMapStream,
art::CodeGenerator::RecordPcInfo,
art::CheckReferenceMapVisitor::CheckOptimizedMethod,
art::StackVisitor::GetVRegFromOptimizedCode, and
art::StackVisitor::SetVRegFromOptimizedCode.
- Implement unaligned memory accesses in art::MemoryRegion.
- Use them to manipulate data in Dex register maps.
- Adjust oatdump to support the new Dex register encoding.
- Update compiler/optimizing/stack_map_test.cc.
Change-Id: Icefaa2e2b36b3c80bb1b882fe7ea2f77ba85c505
Sebastien Hertz [Thu, 12 Mar 2015 14:30:08 +0000 (14:30 +0000)]
Merge "Fix art_quick_instrumentation_exit stub for x86_64"
Sebastien Hertz [Thu, 12 Mar 2015 14:10:50 +0000 (15:10 +0100)]
Fix art_quick_instrumentation_exit stub for x86_64
Restores callee-saved registers.
Bug:
19708384
Change-Id: I1cb47b1cc616af613816c4ee041bdfc975bf9f20
Nicolas Geoffray [Thu, 12 Mar 2015 11:35:29 +0000 (11:35 +0000)]
Merge "Run the natural loop recognizer before building SSA."
Nicolas Geoffray [Thu, 12 Mar 2015 11:16:23 +0000 (11:16 +0000)]
Run the natural loop recognizer before building SSA.
SSA building checks the consistency of the graph when dealing
with dead phis.
Fixes continuous AOSP builds with optimizing.
Change-Id: Ia9a0f0adc24a8e144e54444e090ad828b9b40040
Nicolas Geoffray [Thu, 12 Mar 2015 11:06:25 +0000 (11:06 +0000)]
Merge "Revert "Opt Compiler: Materialise constants that cannot be encoded""
Nicolas Geoffray [Thu, 12 Mar 2015 11:06:03 +0000 (11:06 +0000)]
Revert "Opt Compiler: Materialise constants that cannot be encoded"
Fails building the core image.
This reverts commit
758c2f65805564e0c51cccaacf8307e52a9e312b.
Change-Id: Ic3ebd8a08a3d17a513d820035b430f6de4125866
Nicolas Geoffray [Thu, 12 Mar 2015 11:01:55 +0000 (11:01 +0000)]
Merge "Give an expected type to phis created for multiple returns."
Nicolas Geoffray [Thu, 12 Mar 2015 10:34:11 +0000 (10:34 +0000)]
Give an expected type to phis created for multiple returns.
When inlining, we used to take the type of the inlined method
for the phi in case of multiple returns. I recently changed the
logic of phi types to only be of int/float/double/ref, so we
need to call ToPhiType when creating the phi.
Change-Id: I960067ca8a8814509c2a7c52c08387d892ebf4a3
Nicolas Geoffray [Thu, 12 Mar 2015 10:52:05 +0000 (10:52 +0000)]
Merge "Opt Compiler: Materialise constants that cannot be encoded"
Lin Zang [Tue, 10 Mar 2015 10:53:21 +0000 (18:53 +0800)]
ART: correct native bytes allocated in RegisterNativeAllocation
Fix the issue that in RegisterNativeAllocation the new_native_bytes_allocated
was not updated after Runfinalization, which may cause unnecessary GC.
Change-Id: Icbbc0d1cbcd7b1b8e42576104de69c8ff3afa745
Signed-off-by: Lin Zang <lin.zang@intel.com>
Hiroshi Yamauchi [Thu, 12 Mar 2015 02:09:07 +0000 (19:09 -0700)]
Fix CC collector boot.
Avoid a DCHECK failure that the semi space collector isn't initialized
at the pre-zygote fork time when the CC collector is used.
Change-Id: If35707b241be05a341abb11ba51fbd0bc222d219
Andreas Gampe [Thu, 12 Mar 2015 01:41:32 +0000 (01:41 +0000)]
Merge "ART: Check that boot image classes are verified"
Hiroshi Yamauchi [Wed, 11 Mar 2015 23:32:57 +0000 (23:32 +0000)]
Merge "Rosalloc thread local allocation path without a cas."
Hiroshi Yamauchi [Mon, 9 Mar 2015 18:57:48 +0000 (11:57 -0700)]
Rosalloc thread local allocation path without a cas.
Speedup on N4:
MemAllocTest 3044 -> 2396 (~21% reduction)
BinaryTrees 4101 -> 2929 (~26% reduction)
Bug:
9986565
Change-Id: Ia1d1a37b9e001f903c3c056e8ec68fc8c623a78b
Richard Uhler [Wed, 11 Mar 2015 21:12:42 +0000 (21:12 +0000)]
Merge "Properly compile multidex for tests when using Jack."
Andreas Gampe [Wed, 11 Mar 2015 21:10:12 +0000 (21:10 +0000)]
Merge "ART: Fix finalizable class in Unstarted Runtime"
Andreas Gampe [Wed, 11 Mar 2015 20:24:35 +0000 (13:24 -0700)]
ART: Fix finalizable class in Unstarted Runtime
Add a finalizable check for emulation of Class.newInstance, as this
is not allowed in transactional mode.
Change-Id: I9633929bf484ac8807b97209ab4b422c320b04da
Andreas Gampe [Wed, 11 Mar 2015 20:07:37 +0000 (20:07 +0000)]
Merge "ART: Fix AbortTransaction in Unstarted Runtime"
Andreas Gampe [Wed, 11 Mar 2015 19:44:47 +0000 (12:44 -0700)]
ART: Fix AbortTransaction in Unstarted Runtime
Can only call AbortTransaction if in a transaction. Should log
something else otherwise and fail.
Change-Id: I31ea3558c38fb6284ee6cacd1eafe01910e0965e
Mathieu Chartier [Wed, 11 Mar 2015 19:52:04 +0000 (19:52 +0000)]
Merge "Fix incompatible class change error for JIT stress mode"
Mathieu Chartier [Fri, 6 Mar 2015 18:59:06 +0000 (10:59 -0800)]
Fix incompatible class change error for JIT stress mode
There was a problem with miranda methods, when we would dequicken to
one of these, it wouldn't resolve as virtual during the method
lowering resolve. The solution is to try resolving as interface if we
fail to resolve as virtual.
Fixed a bug in dequickening where unreachable register lines with
quick invokes would cause CHECK failuers. In this case we punt to the
interpreter (test 435-try-*).
Added test regression test. Example failure:
java.lang.IncompatibleClassChangeError: The method
'void Main$TheInterface.m()' was expected to be of type virtual but
instead was found to be of type interface (declaration of
'java.lang.reflect.ArtMethod' appears in
out/host/linux-x86/framework/core-libart-hostdex.jar)
at Main.DoStuff(Main.java:37)
at Main.main(Main.java:44)
Bug:
17950037
Change-Id: I39c32cc8849bf02032a4f61a7ce57462b7fcac75
Richard Uhler [Wed, 11 Mar 2015 19:36:24 +0000 (12:36 -0700)]
Properly compile multidex for tests when using Jack.
Bug:
19687200
Change-Id: I8c5771ccd474aa06001c3a48cc82550589ac7055
Nicolas Geoffray [Wed, 11 Mar 2015 18:29:19 +0000 (18:29 +0000)]
Merge "Fix a bug in the SSA builder."
Nicolas Geoffray [Wed, 11 Mar 2015 18:13:21 +0000 (18:13 +0000)]
Fix a bug in the SSA builder.
The build would leave behind phis with incompatible input types
(for example float and int). We need another dead phi run after
the type propagation to ensure all such phis are dead.
Change-Id: I6ef1da725c7d4a1ebaf6b52dd7eb0c7bacd261b2
Serban Constantinescu [Sun, 22 Feb 2015 22:08:01 +0000 (22:08 +0000)]
Opt Compiler: Materialise constants that cannot be encoded
The VIXL MacroAssembler deals gracefully with any immediate. However
when the constant has multiple uses and cannot be encoded in the
instruction's immediate field we are better off using a register for
the constant and thus sharing the constant generation between multiple
uses.
Eg:
var += #Const; // #Const cannot be encoded.
var += #Const;
Before: After:
mov wip0, #Const mov w4, #Const
add w0, w0, wip0 add w0, w0, w4
mov wip0, #Const add w0, w0, w4
add w0, w0, wip0
Change-Id: I8d1f620872d1241cf582fb4f3b45b5091b790146
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
Mathieu Chartier [Wed, 11 Mar 2015 17:42:05 +0000 (17:42 +0000)]
Merge "Fix sampling profiler race condition"
Mathieu Chartier [Wed, 11 Mar 2015 16:54:22 +0000 (09:54 -0700)]
Fix sampling profiler race condition
Thread 1 is running RunSamplingThread and has just read trace into
the_trace.
Thread 2 is calling Trace::Stop and has just suspended all the
threads. At this point thread 1 is blocked on the SuspendAll.
Thread 2 goes and deletes the trace which Thread 1 still has a
pointer to, calls ResumeAll(). At this point thread 1 suspends the
threads and adds samples to the just deleted trace.
The fix is to join the thread before we delete the trace.
Bug:
18950006
Change-Id: I3090c4dac392a4e5d880c4dc8d9385aef53c7425
Andreas Gampe [Wed, 11 Mar 2015 17:02:05 +0000 (17:02 +0000)]
Merge "ART: Missing include"
Andreas Gampe [Wed, 11 Mar 2015 16:53:50 +0000 (09:53 -0700)]
ART: Missing include
Fix missing include.
Change-Id: I439bdf3a5c7dc2a710f3dfa0dca494ac3698de60
Alexandre Rames [Wed, 11 Mar 2015 16:48:16 +0000 (16:48 +0000)]
Opt compiler: Basic simplification for arithmetic operations.
The optimisations in this patch do not look further than the
inputs of each operation.
Change-Id: Iddd0ab6b360b9e7bb042db22086d51a31be85530
Andreas Gampe [Wed, 11 Mar 2015 16:27:43 +0000 (16:27 +0000)]
Merge "ART: Refactor unstarted runtime"
Andreas Gampe [Mon, 9 Mar 2015 19:57:41 +0000 (12:57 -0700)]
ART: Refactor unstarted runtime
Refactor and clean up unstarted runtime.
Bug:
19542228
Change-Id: Ib3e4b3517e06e8242d4fed32ca59419fef553a47
Nicolas Geoffray [Wed, 11 Mar 2015 15:02:31 +0000 (15:02 +0000)]
Merge "Revert "Revert "[optimizing] Enable x86 long support."""
Nicolas Geoffray [Mon, 9 Mar 2015 10:28:50 +0000 (10:28 +0000)]
Revert "Revert "[optimizing] Enable x86 long support.""
This reverts commit
154552e666347d41d95d7619c6ee56249ff4feca.
Change-Id: Idc726551c249a888b7ff5fde8508ae50e81b2e13
Sergio Giro [Wed, 11 Mar 2015 12:43:31 +0000 (12:43 +0000)]
art/test/100-reflect2: change incorrect expectations.
Methods can't be volatile nor transient.
bug:
18488857
Change-Id: Ie82ed513b58083a795549a708197f1db52ffb796
Andreas Gampe [Wed, 11 Mar 2015 05:18:43 +0000 (05:18 +0000)]
Merge "patchoat: DisableAutoClose when patching in place"
Julien Delayen [Thu, 5 Mar 2015 15:37:52 +0000 (16:37 +0100)]
patchoat: DisableAutoClose when patching in place
Installd can give the same input and output when
patching directly in the dalvik-cache.
For this particular case, we need to DisableAutoClose
to avoid closing twice the same fd.
Change-Id: Ic1c0f1006f776e6aeb3772c83c52309c78a4bdfd
Signed-off-by: Julien Delayen <julien.delayen@intel.com>
Signed-off-by: Guilhem IMBERTON <guilhem.imberton@intel.com>
Bill Yi [Tue, 10 Mar 2015 21:56:17 +0000 (14:56 -0700)]
Merge remote-tracking branch 'goog/stage-aosp-master' into HEAD
Mathieu Chartier [Tue, 10 Mar 2015 21:12:50 +0000 (21:12 +0000)]
Merge "Fix dex2dex logic"
Mathieu Chartier [Tue, 10 Mar 2015 20:45:40 +0000 (13:45 -0700)]
Fix dex2dex logic
There was a bug in the dex2dex logic where would only dex2dex if
IsCandidateForCompilation was true or method verifier had check casts.
The bug was caused by not adding verification results, which caused
verification_results_->GetVerifiedMethod to not have verified methods
in most cases for interpreter-only and verify-none compilation.
Caffeinemark interpret-only before:
Sieve score = 1184
Loop score = 630
Logic score = 3519
String score = 1532
Float score = 882
Method score = 686
Overall score = 1159
After:
Sieve score = 2820
Loop score = 1942
Logic score = 4694
String score = 1679
Float score = 2288
Method score = 1294
Overall score = 2244
Bug:
17950037
Change-Id: I535ab8784b434b0a8e3f66e3ab4936d10a1b04bf
Nicolas Geoffray [Tue, 10 Mar 2015 19:32:31 +0000 (19:32 +0000)]
am
d82d5755: Merge "Test uses libart.so, so can\'t be run NDEBUG."
* commit '
d82d5755bbfa272d4bfe0144df1ba713e02f8335':
Test uses libart.so, so can't be run NDEBUG.
Nicolas Geoffray [Tue, 10 Mar 2015 19:27:10 +0000 (19:27 +0000)]
Merge "Test uses libart.so, so can't be run NDEBUG."