OSDN Git Service

android-x86/art.git
9 years agoMerge "Revert "DO NOT MERGE ART: Turn off duplicate-classes checking""
Andreas Gampe [Sun, 7 Jun 2015 22:36:00 +0000 (22:36 +0000)]
Merge "Revert "DO NOT MERGE ART: Turn off duplicate-classes checking""

9 years agoMerge "DO NOT MERGE ART: Turn off duplicate-classes checking"
Andreas Gampe [Sun, 7 Jun 2015 22:35:42 +0000 (22:35 +0000)]
Merge "DO NOT MERGE ART: Turn off duplicate-classes checking"

9 years agoRevert "DO NOT MERGE ART: Turn off duplicate-classes checking"
Andreas Gampe [Thu, 21 May 2015 20:33:40 +0000 (20:33 +0000)]
Revert "DO NOT MERGE ART: Turn off duplicate-classes checking"

This reverts commit aafcfca5fe545365ef377fff2897b8a908f03e71.

Bug: 21333911

(cherry picked from commit 18a1827a159f1b235f3fcc934f428059185f550e)

Change-Id: Ibbc6b1be8bebc1d0ab9c5955b34eb89f40577baa

9 years agoDO NOT MERGE ART: Turn off duplicate-classes checking
Andreas Gampe [Wed, 20 May 2015 21:48:10 +0000 (14:48 -0700)]
DO NOT MERGE ART: Turn off duplicate-classes checking

Bug: 21333911

(cherry picked from commit aafcfca5fe545365ef377fff2897b8a908f03e71)

Change-Id: I9832526a6d2996aadb459e3ec0930cbaf151478a

9 years agoMerge "ART: Add SetSpecialSignalHandlerFn to version-script.txt"
Andreas Gampe [Sat, 6 Jun 2015 03:52:31 +0000 (03:52 +0000)]
Merge "ART: Add SetSpecialSignalHandlerFn to version-script.txt"

9 years agoART: Add SetSpecialSignalHandlerFn to version-script.txt
Andreas Gampe [Sat, 6 Jun 2015 03:45:31 +0000 (20:45 -0700)]
ART: Add SetSpecialSignalHandlerFn to version-script.txt

Expose the new function from the sigchainlib implementation.

Bug: 20217701
Change-Id: I7d21025595775e057ea703236ca88ceb07173136

9 years agoMerge "Use runFinalizationWithTimeout for native allocations"
Mathieu Chartier [Fri, 5 Jun 2015 23:44:27 +0000 (23:44 +0000)]
Merge "Use runFinalizationWithTimeout for native allocations"

9 years agoUse runFinalizationWithTimeout for native allocations
Mathieu Chartier [Fri, 5 Jun 2015 20:21:05 +0000 (13:21 -0700)]
Use runFinalizationWithTimeout for native allocations

Prevents deadlocks by not waiting longer than 250ms for finalizers
to complete.

(cherry picked from commit 3b532d744034b43ed329a3198f15846d80fec3f0)

Bug: 21544853
Change-Id: I57b2f7ae8b74185922eb3c15ba0ab71a4d2348aa

9 years agoMerge "Add atrace calls to runtime start and heap create"
Mathieu Chartier [Thu, 4 Jun 2015 23:19:26 +0000 (23:19 +0000)]
Merge "Add atrace calls to runtime start and heap create"

9 years agoAdd atrace calls to runtime start and heap create
Richard Uhler [Tue, 7 Apr 2015 17:56:50 +0000 (10:56 -0700)]
Add atrace calls to runtime start and heap create

(cherry picked from commit 7fabaa6ba1927d21a317c03499b705cbde4f6a47)

Bug: 20727525

Change-Id: I91a74b793fb9eda8ed580244a6a5fd313ef2eb27

9 years agoMerge "If heap poisoning is on, pass the relevant flag to LOCAL_ASFLAGS."
Hiroshi Yamauchi [Thu, 4 Jun 2015 22:38:10 +0000 (22:38 +0000)]
Merge "If heap poisoning is on, pass the relevant flag to LOCAL_ASFLAGS."

9 years agoMerge "Add optimization for LOW_4G allocator"
Mathieu Chartier [Thu, 4 Jun 2015 22:21:35 +0000 (22:21 +0000)]
Merge "Add optimization for LOW_4G allocator"

9 years agoAdd optimization for LOW_4G allocator
Mathieu Chartier [Thu, 4 Jun 2015 20:42:14 +0000 (13:42 -0700)]
Add optimization for LOW_4G allocator

The optimization uses the maps_ field to skip over regions which we
know wont be large enough for the request.

Reduces time to create heap from 500-700ms to 100ms on N9.

(cherry picked from commit 1c8bef4a71612f10b89b102434f70de5a127cc74)

Bug: 20727525

Change-Id: I4fa92d58c2e135ba31a03ababff46669089bb542

9 years agoIf heap poisoning is on, pass the relevant flag to LOCAL_ASFLAGS.
Roland Levillain [Thu, 4 Jun 2015 16:50:27 +0000 (17:50 +0100)]
If heap poisoning is on, pass the relevant flag to LOCAL_ASFLAGS.

This change ensures assembly files honoring heap poisoning
(notably used by stub_test) are compiled with
-DART_HEAP_POISONING=1 when this feature is turned on.

Bug: 21621105
Change-Id: I13fe456cd2733a09bdfd3a9808cfd70513b14698

9 years agoMerge "Revert "Use HCurrentMethod in HInvokeStaticOrDirect.""
Nicolas Geoffray [Thu, 4 Jun 2015 17:17:45 +0000 (17:17 +0000)]
Merge "Revert "Use HCurrentMethod in HInvokeStaticOrDirect.""

9 years agoRevert "Use HCurrentMethod in HInvokeStaticOrDirect."
Nicolas Geoffray [Thu, 4 Jun 2015 17:17:32 +0000 (17:17 +0000)]
Revert "Use HCurrentMethod in HInvokeStaticOrDirect."

Fails on baseline/x86.

This reverts commit 38207af82afb6f99c687f64b15601ed20d82220a.

Change-Id: Ib71018367eb7c6046965494a7e996c22af3de403

9 years agoMerge "Do a type check for knowing if we can inline."
Nicolas Geoffray [Thu, 4 Jun 2015 17:12:17 +0000 (17:12 +0000)]
Merge "Do a type check for knowing if we can inline."

9 years agoDo a type check for knowing if we can inline.
Nicolas Geoffray [Thu, 4 Jun 2015 17:02:34 +0000 (18:02 +0100)]
Do a type check for knowing if we can inline.

Otherwise, we might successfully inline:
((String)nonStringObject).charAt()

Because the lookup of the method is based on the index of charAt,
and not its name.

Change-Id: I72ce802fd50cfb71343197f0a32bb1ef56549097

9 years agoMerge "Fix JNI GetSuperClasss"
Brian Carlstrom [Thu, 4 Jun 2015 16:54:46 +0000 (16:54 +0000)]
Merge "Fix JNI GetSuperClasss"

9 years agoMerge "Cache stack map encoding"
David Brazdil [Thu, 4 Jun 2015 16:26:10 +0000 (16:26 +0000)]
Merge "Cache stack map encoding"

9 years agoCache stack map encoding
David Brazdil [Fri, 29 May 2015 15:29:43 +0000 (16:29 +0100)]
Cache stack map encoding

Operations on CodeInfo and StackMap objects repeatedly read encoding
information from the MemoryRegion. Since these are 3-bit-loads of
values that never change, caching them can measurably reduce compile
times.

According to benchmarks, this patch saves 1-3% on armv7, 2-4% on x86,
and 0-1% on x64.

Change-Id: I46b197513601325d8bab562cc80100c00ec28a3b

9 years agoFix JNI GetSuperClasss
Brian Carlstrom [Fri, 22 May 2015 20:43:00 +0000 (13:43 -0700)]
Fix JNI GetSuperClasss

Change-Id: I005e9f84220dabfcea7cbc7b7b0ad422dd435a40

9 years agoMerge "Support for inlining virtual and interface calls."
Nicolas Geoffray [Thu, 4 Jun 2015 15:50:31 +0000 (15:50 +0000)]
Merge "Support for inlining virtual and interface calls."

9 years agoMerge "Use HCurrentMethod in HInvokeStaticOrDirect."
Nicolas Geoffray [Thu, 4 Jun 2015 15:49:21 +0000 (15:49 +0000)]
Merge "Use HCurrentMethod in HInvokeStaticOrDirect."

9 years agoMerge "Revert "Revert "Modification to the way boot classpath resources are loaded"""
Neil Fuller [Thu, 4 Jun 2015 15:38:05 +0000 (15:38 +0000)]
Merge "Revert "Revert "Modification to the way boot classpath resources are loaded"""

9 years agoSupport for inlining virtual and interface calls.
Nicolas Geoffray [Wed, 3 Jun 2015 14:04:32 +0000 (15:04 +0100)]
Support for inlining virtual and interface calls.

Also had to change the pass order to get reference type propagation
before the inliner.

Change-Id: I4bf3bbb2d17c7d9cab632cfdd96adad8368bdfea

9 years agoUse HCurrentMethod in HInvokeStaticOrDirect.
Nicolas Geoffray [Mon, 1 Jun 2015 14:46:22 +0000 (15:46 +0100)]
Use HCurrentMethod in HInvokeStaticOrDirect.

Change-Id: I0d15244b6b44c8b10079398c55da5071a3e3af66

9 years agoMerge "Add $noinline$ tag to make sure a method has not been inlined."
Calin Juravle [Thu, 4 Jun 2015 13:01:51 +0000 (13:01 +0000)]
Merge "Add $noinline$ tag to make sure a method has not been inlined."

9 years agoRevert "Revert "Modification to the way boot classpath resources are loaded""
Neil Fuller [Thu, 4 Jun 2015 12:24:08 +0000 (12:24 +0000)]
Revert "Revert "Modification to the way boot classpath resources are loaded""

This reverts commit 1e27c5bd372fbe55c46127c8f233a13d9994334c.

Change-Id: I8f45a890ae1d3c0b0497e4fea4fb5a4c7a07b59f

9 years agoAdd $noinline$ tag to make sure a method has not been inlined.
Guillaume "Vermeille" Sanchez [Wed, 3 Jun 2015 14:32:41 +0000 (15:32 +0100)]
Add $noinline$ tag to make sure a method has not been inlined.

Change-Id: Ic166cf43be566a0fa44c3c9e1939f647806fc500

9 years agoMerge "Fix valgrind large_object_space_test"
Mathieu Chartier [Thu, 4 Jun 2015 01:35:44 +0000 (01:35 +0000)]
Merge "Fix valgrind large_object_space_test"

9 years agoFix valgrind large_object_space_test
Mathieu Chartier [Thu, 4 Jun 2015 00:32:42 +0000 (17:32 -0700)]
Fix valgrind large_object_space_test

Also some cleanup.

(cherry picked from commit c991403cd8b869e4a38c11c6a58223b82b89a1b2)

Change-Id: I9c1a8093e6356f1b52e332009429b77fa5c1d448

9 years agoMerge "Add a way to determine if a large object is a zygote object"
Mathieu Chartier [Wed, 3 Jun 2015 23:12:44 +0000 (23:12 +0000)]
Merge "Add a way to determine if a large object is a zygote object"

9 years agoMerge "ART: Refactor Thread::Init"
Andreas Gampe [Wed, 3 Jun 2015 23:11:48 +0000 (23:11 +0000)]
Merge "ART: Refactor Thread::Init"

9 years agoART: Refactor Thread::Init
Andreas Gampe [Tue, 2 Jun 2015 05:29:51 +0000 (22:29 -0700)]
ART: Refactor Thread::Init

This refactor allows the parent thread to allocate the JNIEnvExt
for the child (with a fallback in place in Init). This allows to
throw an OOME in CreateNativeThread instead of aborting in the
child.

Bug: 21291279

(cherry picked from commit 520abbd0edcf333f07164539620ce65258c72383)

Change-Id: Iccc1a5c202999f5bfacec706d9833e53135ba2fa

9 years agoAdd a way to determine if a large object is a zygote object
Mathieu Chartier [Wed, 3 Jun 2015 20:32:15 +0000 (13:32 -0700)]
Add a way to determine if a large object is a zygote object

Also fix a slight memory leak in LargeObjectMapSpace.

Bug: 20674158

(cherry picked from commit 8f23620d45399286564986d2541cda761b3fe0ac)

Change-Id: I2416df484e5b84a8c5cc0b5664c8cb102dc235f6

9 years agoMerge "ART: Prune FindArrayClass cache in image writer"
Andreas Gampe [Wed, 3 Jun 2015 19:54:30 +0000 (19:54 +0000)]
Merge "ART: Prune FindArrayClass cache in image writer"

9 years agoMerge "Tidy up spelling"
Kenny Root [Wed, 3 Jun 2015 19:15:05 +0000 (19:15 +0000)]
Merge "Tidy up spelling"

9 years agoMerge "Emit instance fields for java.lang.Object in hprof"
Mathieu Chartier [Wed, 3 Jun 2015 18:28:23 +0000 (18:28 +0000)]
Merge "Emit instance fields for java.lang.Object in hprof"

9 years agoEmit instance fields for java.lang.Object in hprof
Mathieu Chartier [Wed, 3 Jun 2015 17:51:13 +0000 (10:51 -0700)]
Emit instance fields for java.lang.Object in hprof

Previously we omitted these fields.

(cherry picked from commit 0adc90eb0592e220f787f87dbef3a9b5c1db2080)

Bug: 20726205
Change-Id: I81c55919a4bd015bc0a4e7259a41a05dab534e11

9 years agoART: Prune FindArrayClass cache in image writer
Andreas Gampe [Wed, 3 Jun 2015 04:01:45 +0000 (21:01 -0700)]
ART: Prune FindArrayClass cache in image writer

The ClassLinker cache speeds up FindArrayClass requests, but all
entries are roots. It is possible that an entry is a non-image
class when creating the boot image, artificially keeping the
class around.

Bug: 21596650

(cherry picked from commit 44905ce1c97613a5cb44046049843fe1029a64cf)

Change-Id: Ief9b439945d0e293a3cb5dcddfeb189b5e174f06

9 years agoMerge "Fix typos in test/133-static-invoke-super/src/Main.java."
Roland Levillain [Wed, 3 Jun 2015 17:18:43 +0000 (17:18 +0000)]
Merge "Fix typos in test/133-static-invoke-super/src/Main.java."

9 years agoFix typos in test/133-static-invoke-super/src/Main.java.
Roland Levillain [Fri, 24 Apr 2015 18:25:17 +0000 (19:25 +0100)]
Fix typos in test/133-static-invoke-super/src/Main.java.

Change-Id: If8dc4380beae881e869165da2326706001668c1a

9 years agoMerge "Improve the performance of long-to-double conversions on ARM."
Roland Levillain [Wed, 3 Jun 2015 16:34:23 +0000 (16:34 +0000)]
Merge "Improve the performance of long-to-double conversions on ARM."

9 years agoMerge "Revert "Modification to the way boot classpath resources are loaded""
Neil Fuller [Wed, 3 Jun 2015 15:47:15 +0000 (15:47 +0000)]
Merge "Revert "Modification to the way boot classpath resources are loaded""

9 years agoRevert "Modification to the way boot classpath resources are loaded"
Neil Fuller [Wed, 3 Jun 2015 15:46:29 +0000 (15:46 +0000)]
Revert "Modification to the way boot classpath resources are loaded"

This reverts commit 0e08b767f1bd0b892e3ac5724d517caae70f5c04.

Change-Id: Ie3d3caec98f5a65759bb6d44c1f8c76dc6aa2afa

9 years agoMerge "Fix "run-test --jvm 067-preemptive-unpark""
Brian Carlstrom [Wed, 3 Jun 2015 15:21:21 +0000 (15:21 +0000)]
Merge "Fix "run-test --jvm 067-preemptive-unpark""

9 years agoMerge "Modification to the way boot classpath resources are loaded"
Neil Fuller [Wed, 3 Jun 2015 14:59:58 +0000 (14:59 +0000)]
Merge "Modification to the way boot classpath resources are loaded"

9 years agoImprove the performance of long-to-double conversions on ARM.
Roland Levillain [Tue, 14 Apr 2015 14:57:52 +0000 (15:57 +0100)]
Improve the performance of long-to-double conversions on ARM.

Use a VMLA instruction instead of VADD & VMUL instructions
in long-to-double conversions on ARM.  This change reduces
code size and improves execution times (but does not alter
precision).  It trades one temporary FPU register for two
temporary core registers.

Change-Id: I1dc35bef6c12be8f305e5b46da98c2421686b60d

9 years agoMerge "Allow void to get in ARM64ReturnLocation."
Nicolas Geoffray [Wed, 3 Jun 2015 11:25:20 +0000 (11:25 +0000)]
Merge "Allow void to get in ARM64ReturnLocation."

9 years agoAllow void to get in ARM64ReturnLocation.
Nicolas Geoffray [Wed, 3 Jun 2015 11:23:32 +0000 (12:23 +0100)]
Allow void to get in ARM64ReturnLocation.

It can now be called with it.

Change-Id: Idd10dbf5c9cb5f418504cb4c9252930e6eb4942d

9 years agoMerge "Fix compilation errors with gcc."
Nicolas Geoffray [Wed, 3 Jun 2015 11:19:05 +0000 (11:19 +0000)]
Merge "Fix compilation errors with gcc."

9 years agoFix compilation errors with gcc.
Nicolas Geoffray [Wed, 3 Jun 2015 11:12:19 +0000 (12:12 +0100)]
Fix compilation errors with gcc.

Change-Id: If88d4f639658db2d6d71f5abcad563211138fc4a

9 years agoMerge "Fix lint error."
Nicolas Geoffray [Wed, 3 Jun 2015 11:03:21 +0000 (11:03 +0000)]
Merge "Fix lint error."

9 years agoFix lint error.
Nicolas Geoffray [Wed, 3 Jun 2015 11:02:38 +0000 (12:02 +0100)]
Fix lint error.

Change-Id: Ie485d52dc8c6670ab717f14081200572dab0357f

9 years agoMerge "Show stack maps and Dex register maps in oatdump's assembly code."
Roland Levillain [Wed, 3 Jun 2015 11:00:37 +0000 (11:00 +0000)]
Merge "Show stack maps and Dex register maps in oatdump's assembly code."

9 years agoMerge "Factorize code for common LocationSummary of HInvoke."
Nicolas Geoffray [Wed, 3 Jun 2015 10:56:35 +0000 (10:56 +0000)]
Merge "Factorize code for common LocationSummary of HInvoke."

9 years agoMerge "Fix linter-related error."
Roland Levillain [Wed, 3 Jun 2015 10:30:22 +0000 (10:30 +0000)]
Merge "Fix linter-related error."

9 years agoFix linter-related error.
Roland Levillain [Wed, 3 Jun 2015 10:26:05 +0000 (11:26 +0100)]
Fix linter-related error.

Change-Id: Ie8fb07a46ea6231c2585155249ebb6e2654f7a52

9 years agoFactorize code for common LocationSummary of HInvoke.
Nicolas Geoffray [Wed, 3 Jun 2015 10:23:52 +0000 (11:23 +0100)]
Factorize code for common LocationSummary of HInvoke.

This is one step forward, we could factorize more, but
I wanted to get this out of the way first.

Change-Id: I6ae411a737eebaecb64974f47af507ce0cfbae85

9 years agoMerge "Delegate long-to-float type conversions to the runtime on ARM."
Roland Levillain [Wed, 3 Jun 2015 09:45:57 +0000 (09:45 +0000)]
Merge "Delegate long-to-float type conversions to the runtime on ARM."

9 years agoFix "run-test --jvm 067-preemptive-unpark"
Brian Carlstrom [Wed, 3 Jun 2015 04:53:14 +0000 (21:53 -0700)]
Fix "run-test --jvm 067-preemptive-unpark"

Change-Id: I3afd86510091354d79fbb008e9670940d71a0721

9 years agoMerge "Add a way to SuspendAll for a long duration"
Mathieu Chartier [Wed, 3 Jun 2015 00:52:26 +0000 (00:52 +0000)]
Merge "Add a way to SuspendAll for a long duration"

9 years agoAdd a way to SuspendAll for a long duration
Mathieu Chartier [Tue, 2 Jun 2015 18:42:18 +0000 (11:42 -0700)]
Add a way to SuspendAll for a long duration

Hprof uses this mode to not cause thread suspend timeouts if GC tries
while the hprof dump is running.

(cherry picked from commit 77be6635f9b07a8a794924c5fb9b071949776a6d)

Bug: 21063989
Change-Id: Ic6304620afd1489719a7e0e4299f829c90fe27cc

9 years agoMerge "Fix tracing"
Mathieu Chartier [Wed, 3 Jun 2015 00:18:36 +0000 (00:18 +0000)]
Merge "Fix tracing"

9 years agoFix tracing
Mathieu Chartier [Tue, 2 Jun 2015 23:38:29 +0000 (16:38 -0700)]
Fix tracing

Move back to 32 bit method IDs, add a bijective map for method IDs.

Also some cleanup.

(cherry picked from commit d40bcc4fab1589e3aac0f4b59217c6ab4e72102a)

Bug: 19264997
Change-Id: Icdd36591df53ff975d30b9000cfe67d3ae8c51d5

9 years agoMerge "Add more info for attempting to delete non-JNI local reference"
Mathieu Chartier [Tue, 2 Jun 2015 21:32:22 +0000 (21:32 +0000)]
Merge "Add more info for attempting to delete non-JNI local reference"

9 years agoAdd more info for attempting to delete non-JNI local reference
Mathieu Chartier [Tue, 2 Jun 2015 20:40:12 +0000 (13:40 -0700)]
Add more info for attempting to delete non-JNI local reference

Now we print the stack trace of the method which tried to remove the
non-JNI local reference.

Added test, example output:
 Attempt to remove non-JNI local reference, dumping thread
 "main" prio=5 tid=1 Runnable
   | group="main" sCount=0 dsCount=0 obj=0x12c2b400 self=0xf878af28
   | sysTid=32662 nice=0 cgrp=default sched=0/0 handle=0xf73df700
   | state=R schedstat=( 154297228 636505 121 ) utm=5 stm=10 core=11 HZ=100
   | stack=0xff6f2000-0xff6f4000 stackSize=7MB
   | held mutexes= "mutator lock"(shared held)
   native: #00 pc 00455a7f  /out/host/linux-x86/lib/libartd.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, char const*, art::ArtMethod*, void*)+191)
   native: #01 pc 00425d79  /out/host/linux-x86/lib/libartd.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) const+473)
   native: #02 pc 0028c555  /out/host/linux-x86/lib/libartd.so (art::IndirectReferenceTable::Remove(unsigned int, void*)+421)
   native: #03 pc 003319c8  /out/host/linux-x86/lib/libartd.so (art::JNI::DeleteLocalRef(_JNIEnv*, _jobject*)+56)
   native: #04 pc 0012db14  /out/host/linux-x86/lib/libartd.so (art::CheckJNI::DeleteRef(char const*, _JNIEnv*, _jobject*, art::IndirectRefKind)+292)
   native: #05 pc 00122176  /out/host/linux-x86/lib/libartd.so (art::CheckJNI::DeleteLocalRef(_JNIEnv*, _jobject*)+54)
   native: #06 pc 00005724  /out/host/linux-x86/lib/libarttest.so (Java_Main_removeLocalObject+36)
   native: #07 pc 00004d6e  /tmp/test-32506/dalvik-cache/x86/tmp@mathieuc@test-32506@004-JniTest.jar@classes.dex (void Main.removeLocalObject(java.lang.Object)+130)
   at Main.removeLocalObject(Native method)
   at Main.testRemoveLocalObject(Main.java:118)
   at Main.main(Main.java:37)

(cherry picked from commit ff6d8cffb7c14eee56df16d1422b1fcc180decde)

Bug: 20683465
Change-Id: I56b99c77ae7020cabf1aaeb1d5317b1d5ba940e5

9 years agoMerge "Add heap poisoning support to the entrypoints."
Hiroshi Yamauchi [Tue, 2 Jun 2015 20:27:33 +0000 (20:27 +0000)]
Merge "Add heap poisoning support to the entrypoints."

9 years agoMerge "CanThrow() for HArraySet may return true."
Mingyao Yang [Tue, 2 Jun 2015 19:32:52 +0000 (19:32 +0000)]
Merge "CanThrow() for HArraySet may return true."

9 years agoAdd heap poisoning support to the entrypoints.
Hiroshi Yamauchi [Fri, 29 May 2015 22:04:41 +0000 (15:04 -0700)]
Add heap poisoning support to the entrypoints.

In preparation for full compiler/managed-code support.

Enable stub_test with heap poisoning.

Bug: 12687968
Change-Id: I79fc54ce6386c0a1eb9621759bb4cc23bc393a75

9 years agoTidy up spelling
Kenny Root [Tue, 2 Jun 2015 18:01:10 +0000 (11:01 -0700)]
Tidy up spelling

Change-Id: I65fba9d8310ff3759322cec3345235e6472f4cfb

9 years agoMerge "Update IMT for stale miranda methods"
Mathieu Chartier [Tue, 2 Jun 2015 17:27:09 +0000 (17:27 +0000)]
Merge "Update IMT for stale miranda methods"

9 years agoUpdate IMT for stale miranda methods
Mathieu Chartier [Tue, 2 Jun 2015 16:56:04 +0000 (09:56 -0700)]
Update IMT for stale miranda methods

Fixes occasional crash in dex2oat.

(cherry picked from commit 519fd543625da68ef93f0cd5539c949e5e74e04e)

Bug: 19264997
Change-Id: Icb1a323d8c44fa40309486e17aec56d2c2588e67

9 years agoDelegate long-to-float type conversions to the runtime on ARM.
Roland Levillain [Tue, 14 Apr 2015 15:02:41 +0000 (16:02 +0100)]
Delegate long-to-float type conversions to the runtime on ARM.

On ARM, translate long-to-float type conversions (from both
Quick and Optimizing) as calls to the runtime routine
art_l2f, instead of generating ad hoc code, so as to improve
the precision of the conversions.

Bug: 20413424
Change-Id: I8c414ee1c6f4ff1f32ee78f75734cfd3cf579f71

9 years agoMerge "Fix run-test 458-long-to-fpu."
Roland Levillain [Tue, 2 Jun 2015 16:35:47 +0000 (16:35 +0000)]
Merge "Fix run-test 458-long-to-fpu."

9 years agoFix run-test 458-long-to-fpu.
Roland Levillain [Tue, 2 Jun 2015 16:05:20 +0000 (17:05 +0100)]
Fix run-test 458-long-to-fpu.

- Make $noinline$DoubleConvert actually exercise
  long-to-double conversions (instead of long-to-float
  conversions).
- Change the inlining-defeating strategy: introduce an
  always-throwing branch in $noinline$FloatConvert and
  $noinline$DoubleConvert instead of using recursion, as the
  inliner now inlines recursive calls (down to a certain
  depth).

Change-Id: Ib83a89039968e597cf74d26b5779d410f3caf743

9 years agoMerge "[MIPS64] Fix art_quick_invoke_stub argument offsets."
Andreas Gampe [Tue, 2 Jun 2015 16:20:09 +0000 (16:20 +0000)]
Merge "[MIPS64] Fix art_quick_invoke_stub argument offsets."

9 years agoMerge "Revert "Revert "Revert "Bring ReferenceTypePropagation to HInvoke return types""""
Calin Juravle [Tue, 2 Jun 2015 15:55:35 +0000 (15:55 +0000)]
Merge "Revert "Revert "Revert "Bring ReferenceTypePropagation to HInvoke return types""""

9 years agoRevert "Revert "Revert "Bring ReferenceTypePropagation to HInvoke return types"""
Calin Juravle [Tue, 2 Jun 2015 15:55:24 +0000 (15:55 +0000)]
Revert "Revert "Revert "Bring ReferenceTypePropagation to HInvoke return types"""

This reverts commit 82cc909ff81cc25f7fe97ddac3a1a1f6dc9f5792.

Change-Id: If29dbe0dfd65998047c7ac4ef06c4789355b6bda

9 years ago[MIPS64] Fix art_quick_invoke_stub argument offsets.
Nikola Veljkovic [Tue, 2 Jun 2015 15:27:53 +0000 (17:27 +0200)]
[MIPS64] Fix art_quick_invoke_stub argument offsets.

ArtMethod reference's size got bigger, so we need to move other args
and leave enough space for ArtMethod* and 'this' pointer.

This fixes mips64 boot.

Bug: 19264997
Change-Id: I47198d5f39a4caab30b3b77479d5eedaad5006ab

9 years agoMerge "Revert "Revert "Bring ReferenceTypePropagation to HInvoke return types"""
Calin Juravle [Tue, 2 Jun 2015 15:14:02 +0000 (15:14 +0000)]
Merge "Revert "Revert "Bring ReferenceTypePropagation to HInvoke return types"""

9 years agoRevert "Revert "Bring ReferenceTypePropagation to HInvoke return types""
Calin Juravle [Tue, 2 Jun 2015 15:13:34 +0000 (15:13 +0000)]
Revert "Revert "Bring ReferenceTypePropagation to HInvoke return types""

This reverts commit 8ccf8a0ce31083faa0d9c502f1f0f12a825f6c5d.

Change-Id: I729c147989e0e98d0739d7596b5bb41a72971624

9 years agoMerge "ART: Fast copy stack mask"
David Brazdil [Tue, 2 Jun 2015 13:38:32 +0000 (13:38 +0000)]
Merge "ART: Fast copy stack mask"

9 years agoART: Fast copy stack mask
David Brazdil [Tue, 2 Jun 2015 13:29:52 +0000 (14:29 +0100)]
ART: Fast copy stack mask

StackMap::SetStackMask will currently copy a BitVector into a Memory-
Region bit by bit. This patch adds a new function for copying the data
with memcpy.

This is resubmission of CL I28d45a590b35a4a854cca2f57db864cf8a081487
but with a fix for a broken test which it revealed.

Change-Id: Ib65aa614d3ab7b5c99c6719fdc8e436466a4213d

9 years agoMerge "Revert "Bring ReferenceTypePropagation to HInvoke return types""
Calin Juravle [Tue, 2 Jun 2015 13:23:42 +0000 (13:23 +0000)]
Merge "Revert "Bring ReferenceTypePropagation to HInvoke return types""

9 years agoRevert "Bring ReferenceTypePropagation to HInvoke return types"
Calin Juravle [Tue, 2 Jun 2015 13:23:08 +0000 (13:23 +0000)]
Revert "Bring ReferenceTypePropagation to HInvoke return types"

This reverts commit 77e48c64e7c1c0084217b8df1b47ac6367e61cc7.

Change-Id: Ic6967b2ea7588862ac190e1c0555af615027b5b6

9 years agoMerge "Revert "ART: Fast copy stack mask""
David Brazdil [Tue, 2 Jun 2015 12:42:55 +0000 (12:42 +0000)]
Merge "Revert "ART: Fast copy stack mask""

9 years agoRevert "ART: Fast copy stack mask"
David Brazdil [Tue, 2 Jun 2015 12:42:40 +0000 (12:42 +0000)]
Revert "ART: Fast copy stack mask"

DCHECK failure, need to investigate

This reverts commit 6b10c9b2c0e62193ab9df4d63aedea1d0798e742.

Change-Id: Ie1d1cc6fb71367bc5ac5d6a260af8de316a758dd

9 years agoMerge "ART: Fast copy stack mask"
David Brazdil [Tue, 2 Jun 2015 11:43:11 +0000 (11:43 +0000)]
Merge "ART: Fast copy stack mask"

9 years agoMerge "Bring ReferenceTypePropagation to HInvoke return types"
Calin Juravle [Tue, 2 Jun 2015 11:36:20 +0000 (11:36 +0000)]
Merge "Bring ReferenceTypePropagation to HInvoke return types"

9 years agoART: Fast copy stack mask
David Brazdil [Fri, 29 May 2015 15:33:09 +0000 (16:33 +0100)]
ART: Fast copy stack mask

StackMap::SetStackMask will currently copy a BitVector into a Memory-
Region bit by bit. This patch adds a new function for copying the data
with memcpy.

Change-Id: I28d45a590b35a4a854cca2f57db864cf8a081487

9 years agoMerge "Fix a crash due to a combination of dce/inlining."
Nicolas Geoffray [Tue, 2 Jun 2015 10:57:10 +0000 (10:57 +0000)]
Merge "Fix a crash due to a combination of dce/inlining."

9 years agoMerge "Use down_cast instead of reinterpret_cast in Optimizing codegens."
Roland Levillain [Tue, 2 Jun 2015 10:52:35 +0000 (10:52 +0000)]
Merge "Use down_cast instead of reinterpret_cast in Optimizing codegens."

9 years agoBring ReferenceTypePropagation to HInvoke return types
Guillaume "Vermeille" Sanchez [Fri, 29 May 2015 09:52:55 +0000 (10:52 +0100)]
Bring ReferenceTypePropagation to HInvoke return types

Change-Id: Ie8f6b0ea5bd841c9555f3b1b6d4b7dce92a117f1

9 years agoCanThrow() for HArraySet may return true.
Mingyao Yang [Tue, 2 Jun 2015 10:16:27 +0000 (03:16 -0700)]
CanThrow() for HArraySet may return true.

HArraySet can throw ArrayStoreException.

Change-Id: Iba50dc95c822b079f0f1d024fbba7c5581a3d21b

9 years agoFix a crash due to a combination of dce/inlining.
Nicolas Geoffray [Tue, 2 Jun 2015 09:38:12 +0000 (10:38 +0100)]
Fix a crash due to a combination of dce/inlining.

Dead code elimiation was removing HCurrentMethod if
it ended up not being used, but inlining requires access
to it. Therefore we should keep the node in the graph.

Change-Id: I2f44f71b4ff3f2c3f9569d8420c1b37f00e694d2

9 years agoMerge "Add clear cache for JIT"
Mathieu Chartier [Tue, 2 Jun 2015 03:07:20 +0000 (03:07 +0000)]
Merge "Add clear cache for JIT"

9 years agoAdd clear cache for JIT
Mathieu Chartier [Tue, 2 Jun 2015 02:12:36 +0000 (19:12 -0700)]
Add clear cache for JIT

Bug: 21572270

Change-Id: I711a9ee2d9688a8e4b59380c401f10f42c6c068e

9 years agoMerge "Fix bogus image test assert"
Mathieu Chartier [Mon, 1 Jun 2015 23:49:20 +0000 (23:49 +0000)]
Merge "Fix bogus image test assert"