OSDN Git Service

android-x86/art.git
9 years agoam eff3229f: Merge "Restore interpreter check during DoCall removed by string init."
Jeff Hao [Wed, 29 Apr 2015 23:15:14 +0000 (23:15 +0000)]
am eff3229f: Merge "Restore interpreter check during DoCall removed by string init."

* commit 'eff3229ff3c8faead4b6d400e273ee27b7004dab':
  Restore interpreter check during DoCall removed by string init.

9 years agoMerge "Restore interpreter check during DoCall removed by string init."
Jeff Hao [Wed, 29 Apr 2015 23:03:46 +0000 (23:03 +0000)]
Merge "Restore interpreter check during DoCall removed by string init."

9 years agoRestore interpreter check during DoCall removed by string init.
Jeff Hao [Wed, 29 Apr 2015 22:58:17 +0000 (15:58 -0700)]
Restore interpreter check during DoCall removed by string init.

Also reorder test in verifier to check for string_init first.

Change-Id: I585ef3f5890819a3e233236ea85b51a03918f5dc

9 years agoam 8c9c1ae5: Merge "Only print IRT remove local warning if CheckJNI is enabled"
Mathieu Chartier [Wed, 29 Apr 2015 17:48:03 +0000 (17:48 +0000)]
am 8c9c1ae5: Merge "Only print IRT remove local warning if CheckJNI is enabled"

* commit '8c9c1ae515f32142ab85103c5d45bd7ce4e6eb3c':
  Only print IRT remove local warning if CheckJNI is enabled

9 years agoMerge "Only print IRT remove local warning if CheckJNI is enabled"
Mathieu Chartier [Wed, 29 Apr 2015 17:37:47 +0000 (17:37 +0000)]
Merge "Only print IRT remove local warning if CheckJNI is enabled"

9 years agoOnly print IRT remove local warning if CheckJNI is enabled
Mathieu Chartier [Wed, 29 Apr 2015 16:57:48 +0000 (09:57 -0700)]
Only print IRT remove local warning if CheckJNI is enabled

Less spammy.

Bug: 17405090

Change-Id: Ib78d0d7bc31a88182cb9d85ddba9b469bd50324b

9 years agoam ed51747a: Merge "Add synthesize uses at back edge."
Nicolas Geoffray [Wed, 29 Apr 2015 17:23:33 +0000 (17:23 +0000)]
am ed51747a: Merge "Add synthesize uses at back edge."

* commit 'ed51747ae96a0c7fac452e95a1607200a5494b28':
  Add synthesize uses at back edge.

9 years agoMerge "Add synthesize uses at back edge."
Nicolas Geoffray [Wed, 29 Apr 2015 17:10:08 +0000 (17:10 +0000)]
Merge "Add synthesize uses at back edge."

9 years agoAdd synthesize uses at back edge.
Nicolas Geoffray [Tue, 21 Apr 2015 13:28:41 +0000 (14:28 +0100)]
Add synthesize uses at back edge.

This reduces the cost of linearizing the graph (hence removing
the notion of back edge). Since linear scan allocates/spills registers
based on next use, adding a use at a back edge ensures we do count
for loop uses.

Change-Id: Idaa882cb120edbdd08ca6bff142d326a8245bd14

9 years agoam 0430fc92: Merge "ART: Fix loop information after dead code elimination"
David Brazdil [Wed, 29 Apr 2015 16:51:50 +0000 (16:51 +0000)]
am 0430fc92: Merge "ART: Fix loop information after dead code elimination"

* commit '0430fc9216dddf6a6967cfffd37dfa99d73c2c68':
  ART: Fix loop information after dead code elimination

9 years agoMerge "ART: Fix loop information after dead code elimination"
David Brazdil [Wed, 29 Apr 2015 16:42:48 +0000 (16:42 +0000)]
Merge "ART: Fix loop information after dead code elimination"

9 years agoART: Fix loop information after dead code elimination
David Brazdil [Wed, 29 Apr 2015 16:16:07 +0000 (17:16 +0100)]
ART: Fix loop information after dead code elimination

Compilation failed when only some blocks of a loop were removed during
dead code elimination.

Bug: 20680703
Change-Id: If31025169ca493f0d7f7f2788576e98d05f03394

9 years agoam 0829d9de: Merge "Factor MoveArguments methods in Optimizing\'s intrinsics handlers."
Roland Levillain [Wed, 29 Apr 2015 15:38:43 +0000 (15:38 +0000)]
am 0829d9de: Merge "Factor MoveArguments methods in Optimizing\'s intrinsics handlers."

* commit '0829d9de97b92bcd575f4d5c1f717abf7405d8e2':
  Factor MoveArguments methods in Optimizing's intrinsics handlers.

9 years agoMerge "Factor MoveArguments methods in Optimizing's intrinsics handlers."
Roland Levillain [Wed, 29 Apr 2015 15:30:17 +0000 (15:30 +0000)]
Merge "Factor MoveArguments methods in Optimizing's intrinsics handlers."

9 years agoam 36ad3f1c: Merge "Add dependency on libbase."
Narayan Kamath [Wed, 29 Apr 2015 14:44:43 +0000 (14:44 +0000)]
am 36ad3f1c: Merge "Add dependency on libbase."

* commit '36ad3f1c3c08a49680a8f5d34bba43199ab9dd5b':
  Add dependency on libbase.

9 years agoMerge "Add dependency on libbase."
Narayan Kamath [Wed, 29 Apr 2015 14:31:27 +0000 (14:31 +0000)]
Merge "Add dependency on libbase."

9 years agoAdd dependency on libbase.
Narayan Kamath [Tue, 28 Apr 2015 08:56:28 +0000 (09:56 +0100)]
Add dependency on libbase.

Used by the static libziparchive dependency on target.

Change-Id: Ib88dd67941f0679682bcae01346277ffe8d6df9b

9 years agoFactor MoveArguments methods in Optimizing's intrinsics handlers.
Roland Levillain [Tue, 28 Apr 2015 14:50:20 +0000 (15:50 +0100)]
Factor MoveArguments methods in Optimizing's intrinsics handlers.

Also add a precondition similar to the one present in code
generators, regarding static invoke related explicit clinit
check elimination in non-baseline compilations.

Change-Id: I26f4dcb5d02824d7556f90b4b0c85b08b737fa53

9 years agoam b6829c2e: Merge "Refactor InvokeDexCallingConventionVisitor in Optimizing."
Roland Levillain [Wed, 29 Apr 2015 13:48:42 +0000 (13:48 +0000)]
am b6829c2e: Merge "Refactor InvokeDexCallingConventionVisitor in Optimizing."

* commit 'b6829c2ee05124d64a19c7a52ada4a23f624fb91':
  Refactor InvokeDexCallingConventionVisitor in Optimizing.

9 years agoMerge "Refactor InvokeDexCallingConventionVisitor in Optimizing."
Roland Levillain [Wed, 29 Apr 2015 13:37:57 +0000 (13:37 +0000)]
Merge "Refactor InvokeDexCallingConventionVisitor in Optimizing."

9 years agoRefactor InvokeDexCallingConventionVisitor in Optimizing.
Roland Levillain [Tue, 28 Apr 2015 14:48:45 +0000 (15:48 +0100)]
Refactor InvokeDexCallingConventionVisitor in Optimizing.

Change-Id: I7ede0f59d5109644887bf5d39201d4e1bf043f34

9 years agoam f073a36d: Merge "Fix for incorrect encode and parse of PEXTRW instruction"
Vladimir Marko [Wed, 29 Apr 2015 12:07:57 +0000 (12:07 +0000)]
am f073a36d: Merge "Fix for incorrect encode and parse of PEXTRW instruction"

* commit 'f073a36d1ed866e786f7d7784c709c86b00bc58e':
  Fix for incorrect encode and parse of PEXTRW instruction

9 years agoMerge "Fix for incorrect encode and parse of PEXTRW instruction"
Vladimir Marko [Wed, 29 Apr 2015 11:56:55 +0000 (11:56 +0000)]
Merge "Fix for incorrect encode and parse of PEXTRW instruction"

9 years agoam e761b911: Merge "Revert "Revert "Revert "[optimizing] Improve x86 shifts""""
Roland Levillain [Wed, 29 Apr 2015 11:25:06 +0000 (11:25 +0000)]
am e761b911: Merge "Revert "Revert "Revert "[optimizing] Improve x86 shifts""""

* commit 'e761b911b24e9001ac50667462b4f936ebee7369':
  Revert "Revert "Revert "[optimizing] Improve x86 shifts"""

9 years agoMerge "Revert "Revert "Revert "[optimizing] Improve x86 shifts""""
Roland Levillain [Wed, 29 Apr 2015 11:12:59 +0000 (11:12 +0000)]
Merge "Revert "Revert "Revert "[optimizing] Improve x86 shifts""""

9 years agoRevert "Revert "Revert "[optimizing] Improve x86 shifts"""
Roland Levillain [Wed, 29 Apr 2015 11:12:33 +0000 (11:12 +0000)]
Revert "Revert "Revert "[optimizing] Improve x86 shifts"""

This reverts commit 9b95a057ee20e4b1ca2e9c663726482172dc9ba3.

Reverting this CL as it breaks libcore tests:

  org.apache.harmony.tests.java.lang.DoubleTest#test_compare
      junit.framework.AssertionFailedError: compare() -0.0 should be less 0.0
       at junit.framework.Assert.assertTrue(Assert.java:140)
       at org.apache.harmony.tests.java.lang.DoubleTest.test_compare(DoubleTest.java:258)
    org.apache.harmony.tests.java.lang.DoubleTest#test_compare FAIL (EXEC_FAILED)

  org.apache.harmony.tests.java.lang.DoubleTest#test_compareToLjava_lang_Double
      junit.framework.AssertionFailedError: Assert 2: compare() -0.0 should be less 0.0
       at junit.framework.Assert.assertTrue(Assert.java:140)
       at org.apache.harmony.tests.java.lang.DoubleTest.test_compareToLjava_lang_Double(DoubleTest.java:1320)
    org.apache.harmony.tests.java.lang.DoubleTest#test_compareToLjava_lang_Double FAIL (EXEC_FAILED)

Change-Id: I10f0ec8cc9495cc225fef1940b3f1a9fe87d996f

9 years agoam 7386f983: Merge "Bugs have been fixed, so run the tests."
Nicolas Geoffray [Wed, 29 Apr 2015 10:45:14 +0000 (10:45 +0000)]
am 7386f983: Merge "Bugs have been fixed, so run the tests."

* commit '7386f983a67cf73c91cfb9a69a3919f95b25f276':
  Bugs have been fixed, so run the tests.

9 years agoMerge "Bugs have been fixed, so run the tests."
Nicolas Geoffray [Wed, 29 Apr 2015 10:34:20 +0000 (10:34 +0000)]
Merge "Bugs have been fixed, so run the tests."

9 years agoam fadf977d: Merge "Add InsertInstructionAfter in HBasicBlock."
Roland Levillain [Wed, 29 Apr 2015 10:29:08 +0000 (10:29 +0000)]
am fadf977d: Merge "Add InsertInstructionAfter in HBasicBlock."

* commit 'fadf977d85bfbf3f9d5d4730afb660cbed34f989':
  Add InsertInstructionAfter in HBasicBlock.

9 years agoam d474b1d0: Merge "Revert "Revert "[optimizing] Improve x86 shifts"""
Roland Levillain [Wed, 29 Apr 2015 10:29:05 +0000 (10:29 +0000)]
am d474b1d0: Merge "Revert "Revert "[optimizing] Improve x86 shifts"""

* commit 'd474b1d0fd69fdeb481adda8c0814512956f2d51':
  Revert "Revert "[optimizing] Improve x86 shifts""

9 years agoMerge "Add InsertInstructionAfter in HBasicBlock."
Roland Levillain [Wed, 29 Apr 2015 10:23:07 +0000 (10:23 +0000)]
Merge "Add InsertInstructionAfter in HBasicBlock."

9 years agoMerge "Revert "Revert "[optimizing] Improve x86 shifts"""
Roland Levillain [Wed, 29 Apr 2015 10:18:40 +0000 (10:18 +0000)]
Merge "Revert "Revert "[optimizing] Improve x86 shifts"""

9 years agoBugs have been fixed, so run the tests.
Nicolas Geoffray [Wed, 29 Apr 2015 09:57:50 +0000 (10:57 +0100)]
Bugs have been fixed, so run the tests.

Change-Id: I6769cf244d246160b65d6dd4e4df0efb0aa8a7e5

9 years agoRevert "Revert "[optimizing] Improve x86 shifts""
Roland Levillain [Wed, 29 Apr 2015 09:22:37 +0000 (10:22 +0100)]
Revert "Revert "[optimizing] Improve x86 shifts""

This reverts commit f9aac1e9f442c2486cd54f045d43e15791601205.

Don't use Location::Any() for the first input if the output is
Location::SameAsFirstInput().

Change-Id: I400834052b114abf0d616da1b4b6506f7bba10ab

9 years agoam 57f6bee4: Merge "ART: Move dex2oat watchdog output to LogLine"
Andreas Gampe [Wed, 29 Apr 2015 06:40:14 +0000 (06:40 +0000)]
am 57f6bee4: Merge "ART: Move dex2oat watchdog output to LogLine"

* commit '57f6bee40489842c0461140935f900ed88281592':
  ART: Move dex2oat watchdog output to LogLine

9 years agoMerge "ART: Move dex2oat watchdog output to LogLine"
Andreas Gampe [Wed, 29 Apr 2015 06:30:40 +0000 (06:30 +0000)]
Merge "ART: Move dex2oat watchdog output to LogLine"

9 years agoART: Move dex2oat watchdog output to LogLine
Andreas Gampe [Wed, 29 Apr 2015 06:16:03 +0000 (23:16 -0700)]
ART: Move dex2oat watchdog output to LogLine

The fprintf isn't visible on device, as it doesn't end up in the
logcat.

Also increase the watchdog timeout to 10 minutes.

Bug: 20658562
Change-Id: I1fec8dae25f9282f72e762bda934fceb948bbd5f

9 years agoFix for incorrect encode and parse of PEXTRW instruction
nikolay serdjuk [Mon, 27 Apr 2015 11:52:57 +0000 (17:52 +0600)]
Fix for incorrect encode and parse of PEXTRW instruction

The instruction PEXTRW encoded by sequence 66 0F 3A 15
was incorrectly encoded in compiler table and incorrectly
parsed by disassembler.

Change-Id: Ib4d4db923cb15a76e74f13f6b5514cb0d1cbe164
Signed-off-by: nikolay serdjuk <nikolay.y.serdjuk@intel.com>
9 years agoam b0300bad: Merge "ART: Remove multidex limit"
Andreas Gampe [Wed, 29 Apr 2015 05:19:44 +0000 (05:19 +0000)]
am b0300bad: Merge "ART: Remove multidex limit"

* commit 'b0300bad88e6295217a53ff96db6170a727997a9':
  ART: Remove multidex limit

9 years agoMerge "ART: Remove multidex limit"
Andreas Gampe [Wed, 29 Apr 2015 05:10:04 +0000 (05:10 +0000)]
Merge "ART: Remove multidex limit"

9 years agoART: Remove multidex limit
Andreas Gampe [Tue, 28 Apr 2015 03:01:52 +0000 (20:01 -0700)]
ART: Remove multidex limit

Remove the arbitrary multidex limit. If users want to use many
files, allow them, but print a warning after a considerable amount.

Bug: 20071800

(cherry picked from commit 32c26b8f9b995250479c185172f4ffd881a59996)

Change-Id: Ic51c96b84042f769a7d33ec53fe587b68cd69df4

9 years agoam 13d38aab: Merge "Fix possible null deference in Throwable::Dump"
Mathieu Chartier [Tue, 28 Apr 2015 21:17:15 +0000 (21:17 +0000)]
am 13d38aab: Merge "Fix possible null deference in Throwable::Dump"

* commit '13d38aabf01f8391946730b7c2e8d077b1ec7d13':
  Fix possible null deference in Throwable::Dump

9 years agoMerge "Fix possible null deference in Throwable::Dump"
Mathieu Chartier [Tue, 28 Apr 2015 21:06:33 +0000 (21:06 +0000)]
Merge "Fix possible null deference in Throwable::Dump"

9 years agoFix possible null deference in Throwable::Dump
Mathieu Chartier [Tue, 28 Apr 2015 20:53:02 +0000 (13:53 -0700)]
Fix possible null deference in Throwable::Dump

Bug: 20640601

Change-Id: Ibd6081ed9ea16f320e505e06e690b8eddb1228ef

9 years agoam b8df6601: Merge "Change ddmc run-test to make new objects instead of strings."
Jeff Hao [Tue, 28 Apr 2015 19:25:26 +0000 (19:25 +0000)]
am b8df6601: Merge "Change ddmc run-test to make new objects instead of strings."

* commit 'b8df6601f2119fd90150761388057dbe893bb6ae':
  Change ddmc run-test to make new objects instead of strings.

9 years agoMerge "Change ddmc run-test to make new objects instead of strings."
Jeff Hao [Tue, 28 Apr 2015 19:15:05 +0000 (19:15 +0000)]
Merge "Change ddmc run-test to make new objects instead of strings."

9 years agoChange ddmc run-test to make new objects instead of strings.
Jeff Hao [Tue, 28 Apr 2015 19:11:22 +0000 (12:11 -0700)]
Change ddmc run-test to make new objects instead of strings.

Before, the test was creating new strings until overflowing allocations,
which was half string objects and half character arrays. Now, it
allocates all strings with the character data, which is larger than
before, causing the test to run out of memory. Allocating only objects
prevents the test from running out of memory.

Change-Id: Icf3f0fd2ae847e76a9b8d5dfb762be92de16aaa3

9 years agoam edede5c6: Merge "Quick: Fix crash on fall-through out of method code."
Vladimir Marko [Tue, 28 Apr 2015 18:50:39 +0000 (18:50 +0000)]
am edede5c6: Merge "Quick: Fix crash on fall-through out of method code."

* commit 'edede5c67daa2a6890067da0934e0ba6e14661b9':
  Quick: Fix crash on fall-through out of method code.

9 years agoMerge "Quick: Fix crash on fall-through out of method code."
Vladimir Marko [Tue, 28 Apr 2015 18:35:17 +0000 (18:35 +0000)]
Merge "Quick: Fix crash on fall-through out of method code."

9 years agoQuick: Fix crash on fall-through out of method code.
Calin Juravle [Tue, 7 Apr 2015 18:43:36 +0000 (19:43 +0100)]
Quick: Fix crash on fall-through out of method code.

Fix Quick crash when the last insn has a fall-through out of
the method's code. Allow creation of an out-of-method block
and at the end of MIRGraph::InlineMethod() check if that
block is reachable. If it is, punt to interpreter. Add tests
for unreachable if-lt and packed-switch as the last insn.

Also fix MIRGraph::ProcessCanSwitch() to treat the offset to
the data as signed. Jumping over the data with a goto and
using it from a switch further down is valid. This was also
crashing (presumably only on 64-bit dex2oat).

Thanks to Stephen Kyle (stephenckyle@googlemail.com) for the
bug report.

Bug: 19988134
Change-Id: I627f4137f61901897bfb9a5252741c6ded3a1adb

9 years agoam 458d91b0: Merge "Prevent undefined behavior in RosAlloc."
Dan Albert [Tue, 28 Apr 2015 18:23:35 +0000 (18:23 +0000)]
am 458d91b0: Merge "Prevent undefined behavior in RosAlloc."

* commit '458d91b0f72293c9dd347feecf535db0682ccd71':
  Prevent undefined behavior in RosAlloc.

9 years agoMerge "Prevent undefined behavior in RosAlloc."
Dan Albert [Tue, 28 Apr 2015 18:11:38 +0000 (18:11 +0000)]
Merge "Prevent undefined behavior in RosAlloc."

9 years agoPrevent undefined behavior in RosAlloc.
Dan Albert [Thu, 16 Apr 2015 18:50:30 +0000 (11:50 -0700)]
Prevent undefined behavior in RosAlloc.

In cases where remain == 0, the 32-bit value would be left shifted
32-bits, which is undefined behavior.

Change-Id: I6277279341b168536f928ce87375c395a1aa865c

9 years agoam 2b9b0de4: Merge "Fix some compaction bugs in string allocation"
Mathieu Chartier [Tue, 28 Apr 2015 18:03:18 +0000 (18:03 +0000)]
am 2b9b0de4: Merge "Fix some compaction bugs in string allocation"

* commit '2b9b0de424146c8b654b3fa05b14c48d3b2b0b13':
  Fix some compaction bugs in string allocation

9 years agoMerge "Fix some compaction bugs in string allocation"
Mathieu Chartier [Tue, 28 Apr 2015 17:47:45 +0000 (17:47 +0000)]
Merge "Fix some compaction bugs in string allocation"

9 years agoFix some compaction bugs in string allocation
Mathieu Chartier [Tue, 28 Apr 2015 17:01:28 +0000 (10:01 -0700)]
Fix some compaction bugs in string allocation

Change-Id: I2b8499c60de7690e1012d71bccba4ecd589da9af

9 years agoam 1c5808c0: Merge "Fix constructor access check through reflection"
Sebastien Hertz [Tue, 28 Apr 2015 14:42:23 +0000 (14:42 +0000)]
am 1c5808c0: Merge "Fix constructor access check through reflection"

* commit '1c5808c0fa83155565f5319808a2949e0a3f5789':
  Fix constructor access check through reflection

9 years agoMerge "Fix constructor access check through reflection"
Sebastien Hertz [Tue, 28 Apr 2015 14:33:00 +0000 (14:33 +0000)]
Merge "Fix constructor access check through reflection"

9 years agoam d4667dea: Merge "ART: Add FOUR_ARG_DOWNCALL macro for MIPS64 entry points."
Vladimir Marko [Tue, 28 Apr 2015 13:51:27 +0000 (13:51 +0000)]
am d4667dea: Merge "ART: Add FOUR_ARG_DOWNCALL macro for MIPS64 entry points."

* commit 'd4667dea87e68ee3ee64581af138f59300a5c510':
  ART: Add FOUR_ARG_DOWNCALL macro for MIPS64 entry points.

9 years agoMerge "ART: Add FOUR_ARG_DOWNCALL macro for MIPS64 entry points."
Vladimir Marko [Tue, 28 Apr 2015 13:31:38 +0000 (13:31 +0000)]
Merge "ART: Add FOUR_ARG_DOWNCALL macro for MIPS64 entry points."

9 years agoFix constructor access check through reflection
Sebastien Hertz [Tue, 28 Apr 2015 13:00:41 +0000 (15:00 +0200)]
Fix constructor access check through reflection

We must not throw IllegalAccessException if the constructor has been
made accessible by a previous call to Constructor.setAccessible, even
if the caller cannot access the constructor.

Bug: 20639158
Change-Id: I9a34f05cdbb8825ad88b42223743690228e3f03e

9 years agoART: Add FOUR_ARG_DOWNCALL macro for MIPS64 entry points.
Vladimir Marko [Tue, 28 Apr 2015 13:14:58 +0000 (14:14 +0100)]
ART: Add FOUR_ARG_DOWNCALL macro for MIPS64 entry points.

Missing from
    https://android-review.googlesource.com/79174

Change-Id: If182b73824edfd4639f645612b2f7b67c1f31bef

9 years agoam 95935f28: Merge "ART: Fix MIPS entrypoint downcall macros."
Vladimir Marko [Tue, 28 Apr 2015 12:19:38 +0000 (12:19 +0000)]
am 95935f28: Merge "ART: Fix MIPS entrypoint downcall macros."

* commit '95935f28a7206c32592f6744cfc4c63e4d87ecdf':
  ART: Fix MIPS entrypoint downcall macros.

9 years agoMerge "ART: Fix MIPS entrypoint downcall macros."
Vladimir Marko [Tue, 28 Apr 2015 12:10:30 +0000 (12:10 +0000)]
Merge "ART: Fix MIPS entrypoint downcall macros."

9 years agoART: Fix MIPS entrypoint downcall macros.
Vladimir Marko [Tue, 28 Apr 2015 11:37:09 +0000 (12:37 +0100)]
ART: Fix MIPS entrypoint downcall macros.

Broken by not updating the MIPS assembly after rebase of
    https://android-review.googlesource.com/79174

Change-Id: I6258c254c0652e92357d306640c461d9523da227

9 years agoam 3adfc4bb: Merge "Quick: Avoid unnecessary GVN work in release builds."
Vladimir Marko [Tue, 28 Apr 2015 10:44:37 +0000 (10:44 +0000)]
am 3adfc4bb: Merge "Quick: Avoid unnecessary GVN work in release builds."

* commit '3adfc4bbe6c42d574bd2069d8e38a13d5ad98ccf':
  Quick: Avoid unnecessary GVN work in release builds.

9 years agoam 80613ffd: Merge "Have HInvoke instructions know their number of actual arguments."
Roland Levillain [Tue, 28 Apr 2015 10:39:17 +0000 (10:39 +0000)]
am 80613ffd: Merge "Have HInvoke instructions know their number of actual arguments."

* commit '80613ffd5699e6207d6b1264d600a0fc168074ce':
  Have HInvoke instructions know their number of actual arguments.

9 years agoam a94fb1f9: Merge "Revert "Revert "[optimizing] Replace FP divide by power of 2"""
Nicolas Geoffray [Tue, 28 Apr 2015 10:39:14 +0000 (10:39 +0000)]
am a94fb1f9: Merge "Revert "Revert "[optimizing] Replace FP divide by power of 2"""

* commit 'a94fb1f99ee3390bca9531b2512f8fc65f13ceee':
  Revert "Revert "[optimizing] Replace FP divide by power of 2""

9 years agoMerge "Quick: Avoid unnecessary GVN work in release builds."
Vladimir Marko [Tue, 28 Apr 2015 10:36:38 +0000 (10:36 +0000)]
Merge "Quick: Avoid unnecessary GVN work in release builds."

9 years agoMerge "Have HInvoke instructions know their number of actual arguments."
Roland Levillain [Tue, 28 Apr 2015 10:31:38 +0000 (10:31 +0000)]
Merge "Have HInvoke instructions know their number of actual arguments."

9 years agoMerge "Revert "Revert "[optimizing] Replace FP divide by power of 2"""
Nicolas Geoffray [Tue, 28 Apr 2015 10:29:17 +0000 (10:29 +0000)]
Merge "Revert "Revert "[optimizing] Replace FP divide by power of 2"""

9 years agoHave HInvoke instructions know their number of actual arguments.
Roland Levillain [Tue, 28 Apr 2015 10:00:54 +0000 (11:00 +0100)]
Have HInvoke instructions know their number of actual arguments.

Add an art::HInvoke::GetNumberOfArguments routine so that
art::HInvoke and its subclasses can return the number of
actual arguments of the called method.  Use it in code
generators and intrinsics handlers.

Consequently, no longer remove a clinit check as last input
of a static invoke if it is still present during baseline
code generation, but ensure that static invokes have no such
check as last input in optimized compilations.

Change-Id: Iaf9e07d1057a3b15b83d9638538c02b70211e476

9 years agoam 64db0171: Merge "Fix java_lang_Class newInstance for strings; also quick entrypoints."
Jeff Hao [Tue, 28 Apr 2015 04:15:04 +0000 (04:15 +0000)]
am 64db0171: Merge "Fix java_lang_Class newInstance for strings; also quick entrypoints."

* commit '64db01714f91bf255a79c0a88813641c240c9857':
  Fix java_lang_Class newInstance for strings; also quick entrypoints.

9 years agoMerge "Fix java_lang_Class newInstance for strings; also quick entrypoints."
Jeff Hao [Tue, 28 Apr 2015 03:57:53 +0000 (03:57 +0000)]
Merge "Fix java_lang_Class newInstance for strings; also quick entrypoints."

9 years agoFix java_lang_Class newInstance for strings; also quick entrypoints.
Jeff Hao [Tue, 28 Apr 2015 03:54:07 +0000 (20:54 -0700)]
Fix java_lang_Class newInstance for strings; also quick entrypoints.

Change-Id: I35fd23c5a9051e1ffda0ecc2cbafb5d318c7b5e6

9 years agoam f0a3d3da: Merge "ART: Fix constructor access checking"
Andreas Gampe [Tue, 28 Apr 2015 02:53:22 +0000 (02:53 +0000)]
am f0a3d3da: Merge "ART: Fix constructor access checking"

* commit 'f0a3d3dad248ad0dcb7cfc6addcc66d8bd117e48':
  ART: Fix constructor access checking

9 years agoMerge "ART: Fix constructor access checking"
Andreas Gampe [Tue, 28 Apr 2015 02:42:25 +0000 (02:42 +0000)]
Merge "ART: Fix constructor access checking"

9 years agoART: Fix constructor access checking
Andreas Gampe [Tue, 28 Apr 2015 00:26:37 +0000 (17:26 -0700)]
ART: Fix constructor access checking

Constructor access must be checked.

(cherry picked from commit 0dd76cd3f09f495a1b9a0e4f8712c09ff885c6fd)

Bug: 20639158
Change-Id: I3c586e9572a748d208bea43aa2349c3ef52a2ee5

9 years agoam 9d1e1903: Merge "Replace String CharArray with internal uint16_t array."
Jeff Hao [Tue, 28 Apr 2015 02:15:12 +0000 (02:15 +0000)]
am 9d1e1903: Merge "Replace String CharArray with internal uint16_t array."

* commit '9d1e19035a59ff8bf05a09ad880ede99806ba73f':
  Replace String CharArray with internal uint16_t array.

9 years agoMerge "Replace String CharArray with internal uint16_t array."
Jeff Hao [Tue, 28 Apr 2015 02:04:09 +0000 (02:04 +0000)]
Merge "Replace String CharArray with internal uint16_t array."

9 years agoReplace String CharArray with internal uint16_t array.
Jeff Hao [Wed, 15 Jan 2014 21:49:50 +0000 (13:49 -0800)]
Replace String CharArray with internal uint16_t array.

Summary of high level changes:
  - Adds compiler inliner support to identify string init methods
  - Adds compiler support (quick & optimizing) with new invoke code path
    that calls method off the thread pointer
  - Adds thread entrypoints for all string init methods
  - Adds map to verifier to log when receiver of string init has been
    copied to other registers. used by compiler and interpreter

Change-Id: I797b992a8feb566f9ad73060011ab6f51eb7ce01

9 years agoam 3fd79afb: Merge "Switch the default read barrier type to a Baker one."
Hiroshi Yamauchi [Tue, 28 Apr 2015 01:18:46 +0000 (01:18 +0000)]
am 3fd79afb: Merge "Switch the default read barrier type to a Baker one."

* commit '3fd79afbb7490f52817f737ecceb694f6618dcf9':
  Switch the default read barrier type to a Baker one.

9 years agoMerge "Switch the default read barrier type to a Baker one."
Hiroshi Yamauchi [Tue, 28 Apr 2015 01:07:17 +0000 (01:07 +0000)]
Merge "Switch the default read barrier type to a Baker one."

9 years agoSwitch the default read barrier type to a Baker one.
Hiroshi Yamauchi [Tue, 28 Apr 2015 00:58:51 +0000 (17:58 -0700)]
Switch the default read barrier type to a Baker one.

For automated testing.

Bug: 12687968
Change-Id: I831d6e45e4729f0dd3cf178d02af511a32cc9777

9 years agoRevert "Revert "[optimizing] Replace FP divide by power of 2""
Nicolas Geoffray [Mon, 27 Apr 2015 08:53:46 +0000 (08:53 +0000)]
Revert "Revert "[optimizing] Replace FP divide by power of 2""

This reverts commit 067cae2c86627d2edcf01b918ee601774bc76aeb.

Change-Id: Iaaa8772500ea7d3dce6ae0829dc0dc3bbc9c14ca

9 years agoam 97c96f5a: Merge "Fix mismatched malloc/free delete/new."
Christopher Ferris [Mon, 27 Apr 2015 19:14:58 +0000 (19:14 +0000)]
am 97c96f5a: Merge "Fix mismatched malloc/free delete/new."

* commit '97c96f5aab22f75dd54089bdc194588a4b5a2e8d':
  Fix mismatched malloc/free delete/new.

9 years agoam d74a1bf3: Merge "Use the lock word bits for Baker-style read barrier."
Hiroshi Yamauchi [Mon, 27 Apr 2015 19:14:56 +0000 (19:14 +0000)]
am d74a1bf3: Merge "Use the lock word bits for Baker-style read barrier."

* commit 'd74a1bf310a6a5ad2d770fcd76735cbc617d64eb':
  Use the lock word bits for Baker-style read barrier.

9 years agoam acee1524: Merge "Fix clean-oat"
Mathieu Chartier [Mon, 27 Apr 2015 19:14:53 +0000 (19:14 +0000)]
am acee1524: Merge "Fix clean-oat"

* commit 'acee152464725efac3dd74c9ac3acf2afa73f0e9':
  Fix clean-oat

9 years agoMerge "Fix mismatched malloc/free delete/new."
Christopher Ferris [Mon, 27 Apr 2015 19:05:36 +0000 (19:05 +0000)]
Merge "Fix mismatched malloc/free delete/new."

9 years agoFix mismatched malloc/free delete/new.
Christopher Ferris [Sat, 25 Apr 2015 00:23:53 +0000 (17:23 -0700)]
Fix mismatched malloc/free delete/new.

Modify the monitor code to override the delete operator. The problem
is the new operator is overloaded to return a pointer returned by
posix_memalign, but then it's freed with a delete, not a free call.

Also, fix the debugger code to use the [] for a std::unique_ptr to
match how the value is actually allocated.

Both problems found by ASAN.

Bug: 18202869

Change-Id: I2f3a2c02a7f35399b7ba6717b08a035089fab00d

9 years agoMerge "Use the lock word bits for Baker-style read barrier."
Hiroshi Yamauchi [Mon, 27 Apr 2015 18:10:18 +0000 (18:10 +0000)]
Merge "Use the lock word bits for Baker-style read barrier."

9 years agoMerge "Fix clean-oat"
Mathieu Chartier [Mon, 27 Apr 2015 18:01:13 +0000 (18:01 +0000)]
Merge "Fix clean-oat"

9 years agoFix clean-oat
Mathieu Chartier [Mon, 27 Apr 2015 17:46:39 +0000 (10:46 -0700)]
Fix clean-oat

Change to use adb shell sh -c <cmd>.

Also fixed other phony targets, deleted smart mode and added
verify-at-runtime mode.

Change-Id: I562117774eaa153e66b46d6f173fe993931018b7

9 years agoam 2d01066d: Merge "Dissociate uses with environment uses."
Nicolas Geoffray [Mon, 27 Apr 2015 17:28:57 +0000 (17:28 +0000)]
am 2d01066d: Merge "Dissociate uses with environment uses."

* commit '2d01066db24c19f9384f50ff71806cbb4835c7f9':
  Dissociate uses with environment uses.

9 years agoMerge "Dissociate uses with environment uses."
Nicolas Geoffray [Mon, 27 Apr 2015 17:12:10 +0000 (17:12 +0000)]
Merge "Dissociate uses with environment uses."

9 years agoam 295dda50: Merge "Quick: Rely on inferred types in GVN/LVN/DCE."
Vladimir Marko [Mon, 27 Apr 2015 17:09:36 +0000 (17:09 +0000)]
am 295dda50: Merge "Quick: Rely on inferred types in GVN/LVN/DCE."

* commit '295dda5066dfeb5bed88a4a484268f94b060c7fb':
  Quick: Rely on inferred types in GVN/LVN/DCE.

9 years agoMerge "Quick: Rely on inferred types in GVN/LVN/DCE."
Vladimir Marko [Mon, 27 Apr 2015 16:53:25 +0000 (16:53 +0000)]
Merge "Quick: Rely on inferred types in GVN/LVN/DCE."

9 years agoDissociate uses with environment uses.
Nicolas Geoffray [Mon, 27 Apr 2015 15:58:06 +0000 (16:58 +0100)]
Dissociate uses with environment uses.

They are most of the times in the way when iterating. They
also complicate the logic of (future) back edge uses.

Change-Id: I152595d9913073fe901b267ca623fa0fe7432484

9 years agoam d14438f0: Merge "ART: Simplify Ifs with BooleanNot condition"
David Brazdil [Mon, 27 Apr 2015 16:15:52 +0000 (16:15 +0000)]
am d14438f0: Merge "ART: Simplify Ifs with BooleanNot condition"

* commit 'd14438f0c5071962be7fab572b54687d32d9d087':
  ART: Simplify Ifs with BooleanNot condition

9 years agoMerge "ART: Simplify Ifs with BooleanNot condition"
David Brazdil [Mon, 27 Apr 2015 16:02:02 +0000 (16:02 +0000)]
Merge "ART: Simplify Ifs with BooleanNot condition"