OSDN Git Service

android-x86/art.git
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 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 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"

9 years agoFix bogus image test assert
Mathieu Chartier [Mon, 1 Jun 2015 23:33:53 +0000 (16:33 -0700)]
Fix bogus image test assert

Previously we were comparing the size of the non moving space to
size of the image file.

Now we properly compare the size of the image space against the size
of the image file.

Bug: 19264997
Change-Id: I7359f1f73ae3df60c5147245935a24431c04808a

9 years agoMerge "Copy miranda methods before suspend point"
Mathieu Chartier [Mon, 1 Jun 2015 22:51:31 +0000 (22:51 +0000)]
Merge "Copy miranda methods before suspend point"

9 years agoCopy miranda methods before suspend point
Mathieu Chartier [Mon, 1 Jun 2015 21:30:06 +0000 (14:30 -0700)]
Copy miranda methods before suspend point

This fixes a bug where moving GC could happen at vtable CopyOf and
result miranda methods having stale pointers since they are not part
of the class roots at this point.

Also some minor cleanup.

Bug: 21564728
Change-Id: Ife520db6973782e40edcb2074c17274b799af738

9 years agoMerge "Fix accidental IMT and root marking regression"
Mathieu Chartier [Mon, 1 Jun 2015 20:15:19 +0000 (20:15 +0000)]
Merge "Fix accidental IMT and root marking regression"

9 years agoFix accidental IMT and root marking regression
Mathieu Chartier [Mon, 1 Jun 2015 17:47:36 +0000 (10:47 -0700)]
Fix accidental IMT and root marking regression

Was always using the conflict trampoline. Also included fix for
regression in GC time caused by extra roots. Most of the regression
was IMT.

Fixed bug in DumpGcPerformanceInfo where we would get SIGABRT due to
detached thread.

EvaluateAndApplyChanges:
From ~2500 -> ~1980
GC time: 8.2s -> 7.2s due to 1s less of MarkConcurrentRoots

Bug: 19264997
Change-Id: I4333e80a8268c2ed1284f87f25b9f113d4f2c7e0

9 years agoMerge "Fix lint error."
Nicolas Geoffray [Mon, 1 Jun 2015 17:38:02 +0000 (17:38 +0000)]
Merge "Fix lint error."

9 years agoFix lint error.
Nicolas Geoffray [Mon, 1 Jun 2015 17:37:24 +0000 (18:37 +0100)]
Fix lint error.

Change-Id: Ibba7622a0c66eba653147f2e861606fffc7f685e

9 years agoUse down_cast instead of reinterpret_cast in Optimizing codegens.
Roland Levillain [Mon, 1 Jun 2015 17:24:13 +0000 (18:24 +0100)]
Use down_cast instead of reinterpret_cast in Optimizing codegens.

Change-Id: Ifa23023ffaca631a4f6b5745dd7492c39521a26f

9 years agoMerge "ART: Fix wrong hard-failure handling in verifier"
Andreas Gampe [Mon, 1 Jun 2015 17:20:00 +0000 (17:20 +0000)]
Merge "ART: Fix wrong hard-failure handling in verifier"

9 years agoMerge "Fix gtest by adding fake lifetime positions."
Nicolas Geoffray [Mon, 1 Jun 2015 17:13:17 +0000 (17:13 +0000)]
Merge "Fix gtest by adding fake lifetime positions."

9 years agoFix gtest by adding fake lifetime positions.
Nicolas Geoffray [Mon, 1 Jun 2015 17:12:38 +0000 (18:12 +0100)]
Fix gtest by adding fake lifetime positions.

Change-Id: I7cd89143103ac3e372406dff5d3837c9d91bb00d

9 years agoART: Fix wrong hard-failure handling in verifier
Andreas Gampe [Tue, 26 May 2015 20:35:39 +0000 (13:35 -0700)]
ART: Fix wrong hard-failure handling in verifier

Correctly return null for the method when a hard failure is
encountered. Also improve logging for order failures. Add a
regression test.

Bug: 20224106

(cherry picked from commit 3b74e275838729c5023cd80116f1b3b81306ee19)

Change-Id: I6e08202617147378b204af169308b67fc69f92c6

9 years agoMerge "Enable jsr166 tests"
Nicolas Geoffray [Mon, 1 Jun 2015 16:48:53 +0000 (16:48 +0000)]
Merge "Enable jsr166 tests"

9 years agoMerge "Tweak one hint and one split in the linear scan."
Nicolas Geoffray [Mon, 1 Jun 2015 16:42:04 +0000 (16:42 +0000)]
Merge "Tweak one hint and one split in the linear scan."

9 years agoMerge "Revert "Revert "Switch to using ELF-64 for 64-bit architectures."""
David Srbecky [Mon, 1 Jun 2015 15:35:06 +0000 (15:35 +0000)]
Merge "Revert "Revert "Switch to using ELF-64 for 64-bit architectures."""

9 years agoTweak one hint and one split in the linear scan.
Nicolas Geoffray [Mon, 1 Jun 2015 12:51:57 +0000 (13:51 +0100)]
Tweak one hint and one split in the linear scan.

- Return a hinted register if it is available. Otherwise
  another move will be necessary.
- Use SplitBetween instead of raw split when a register
  is not fully available. This will find the best split
  position.

Change-Id: Ie464e536204ab556eb09345fe6426621eb86e5ac

9 years agoMerge "Fix JDWP tests after ArtMethod change"
Sebastien Hertz [Mon, 1 Jun 2015 10:31:09 +0000 (10:31 +0000)]
Merge "Fix JDWP tests after ArtMethod change"

9 years agoMerge "ART: Fix casts for 64-bit pointers on 32-bit compiler."
Vladimir Marko [Mon, 1 Jun 2015 10:27:36 +0000 (10:27 +0000)]
Merge "ART: Fix casts for 64-bit pointers on 32-bit compiler."

9 years agoFix JDWP tests after ArtMethod change
Sebastien Hertz [Mon, 1 Jun 2015 09:42:27 +0000 (11:42 +0200)]
Fix JDWP tests after ArtMethod change

Fixes Throwable::GetStackDepth for exception event detection after
internal stack trace representation change.

Adds missing ArtMethod::GetInterfaceMethodIfProxy call in case of
proxy method.

Bug: 19264997
Change-Id: I363e293796848c3ec491c963813f62d868da44d2

9 years agoART: Fix casts for 64-bit pointers on 32-bit compiler.
Vladimir Marko [Mon, 1 Jun 2015 10:02:59 +0000 (11:02 +0100)]
ART: Fix casts for 64-bit pointers on 32-bit compiler.

Bug: 19264997
Change-Id: Ief45cdd4bae5a43fc8bfdfa7cf744e2c57529457

9 years agoMerge "Fix some ArtMethod related bugs"
Mathieu Chartier [Mon, 1 Jun 2015 05:22:48 +0000 (05:22 +0000)]
Merge "Fix some ArtMethod related bugs"

9 years agoFix some ArtMethod related bugs
Mathieu Chartier [Sun, 31 May 2015 21:29:23 +0000 (14:29 -0700)]
Fix some ArtMethod related bugs

Added root visiting for runtime methods, not currently required
since the GcRoots in these methods are null.

Added missing GetInterfaceMethodIfProxy in GetMethodLine, fixes
--trace run-tests 005, 044.

Fixed optimizing compiler bug where we used a normal stack location
instead of double on ARM64, this fixes the debuggable tests.

TODO: Fix JDWP tests.

Bug: 19264997

Change-Id: I7c55f69c61d1b45351fd0dc7185ffe5efad82bd3

9 years agoMerge "Fix test 115-native-bridge for Mips."
Andreas Gampe [Sun, 31 May 2015 23:50:26 +0000 (23:50 +0000)]
Merge "Fix test 115-native-bridge for Mips."

9 years agoFix test 115-native-bridge for Mips.
Douglas Leung [Sat, 30 May 2015 02:50:02 +0000 (19:50 -0700)]
Fix test 115-native-bridge for Mips.

Change-Id: I3eee8df39e774d233f11c43a5578f407bfdebca1

9 years agoMerge "Move mirror::ArtMethod to native"
Mathieu Chartier [Sat, 30 May 2015 01:54:15 +0000 (01:54 +0000)]
Merge "Move mirror::ArtMethod to native"

9 years agoMove mirror::ArtMethod to native
Mathieu Chartier [Wed, 22 Apr 2015 20:56:20 +0000 (13:56 -0700)]
Move mirror::ArtMethod to native

Optimizing + quick tests are passing, devices boot.

TODO: Test and fix bugs in mips64.

Saves 16 bytes per most ArtMethod, 7.5MB reduction in system PSS.
Some of the savings are from removal of virtual methods and direct
methods object arrays.

Bug: 19264997
Change-Id: I622469a0cfa0e7082a2119f3d6a9491eb61e3f3d

9 years agoMerge "Add unstarted runtime test for String.<init>."
Jeff Hao [Fri, 29 May 2015 22:40:31 +0000 (22:40 +0000)]
Merge "Add unstarted runtime test for String.<init>."

9 years agoAdd unstarted runtime test for String.<init>.
Jeff Hao [Fri, 29 May 2015 17:53:17 +0000 (10:53 -0700)]
Add unstarted runtime test for String.<init>.

Bug: 21173514

(cherry picked from commit 73a937740841154eb32a0aa15f938f1c06f26091)

Change-Id: If7bd360c396e2594f34efe3a6237f77c7129112b

9 years agoMerge "Make some parts of ELF more (pointer) aligned."
David Srbecky [Fri, 29 May 2015 19:48:19 +0000 (19:48 +0000)]
Merge "Make some parts of ELF more (pointer) aligned."

9 years agoMake some parts of ELF more (pointer) aligned.
David Srbecky [Fri, 29 May 2015 17:09:05 +0000 (18:09 +0100)]
Make some parts of ELF more (pointer) aligned.

I am not aware of any problem at the moment, but better
be safe than sorry.  I have noticed that we align less
when comparing our output with output of other tools.

Bug: 20556771
Change-Id: I904e66f5b7776f64cc90ec2802ddb2c630b64d08

9 years agoMerge "Fix double-exception in super-class method validation."
Vladimir Marko [Fri, 29 May 2015 16:44:07 +0000 (16:44 +0000)]
Merge "Fix double-exception in super-class method validation."

9 years agoMerge "Link .dynamic to .dynstr"
David Srbecky [Fri, 29 May 2015 16:18:06 +0000 (16:18 +0000)]
Merge "Link .dynamic to .dynstr"

9 years agoMerge "Set correct size of PT_PHDR ELF segment."
David Srbecky [Fri, 29 May 2015 16:16:55 +0000 (16:16 +0000)]
Merge "Set correct size of PT_PHDR ELF segment."

9 years agoLink .dynamic to .dynstr
David Srbecky [Fri, 29 May 2015 15:33:11 +0000 (16:33 +0100)]
Link .dynamic to .dynstr

This is what the ELF specification says we should do.
(see Figure 1-13: sh_link and sh_info Interpretation)

Also make the entity size of string sections 0 (i.e. not a table).
Size 1 makes some sense as well but it is not what other tools do.

Bug: 20556771
Change-Id: I780ba2e13c09c33c143fca70b38a35f3b8528fb2

9 years agoSet correct size of PT_PHDR ELF segment.
David Srbecky [Fri, 29 May 2015 14:21:20 +0000 (15:21 +0100)]
Set correct size of PT_PHDR ELF segment.

This is just a nit pick, I do not believe that having it too
long could have caused any trouble since the correct number of
elements is stored in ELF header and extra space was zero padded.

Bug: 20556771
Change-Id: Ide56e6aa40f9b7175b55a830caf34c47e48213af

9 years agoMerge "ART: Add support for special handlers in sigchainlib"
Andreas Gampe [Fri, 29 May 2015 15:26:21 +0000 (15:26 +0000)]
Merge "ART: Add support for special handlers in sigchainlib"

9 years agoMerge "Support for inlining methods that call/throw."
Nicolas Geoffray [Fri, 29 May 2015 14:03:10 +0000 (14:03 +0000)]
Merge "Support for inlining methods that call/throw."

9 years agoMerge "Bring Reference Type Propagation to Instance/StaticInstanceField"
Roland Levillain [Fri, 29 May 2015 13:57:36 +0000 (13:57 +0000)]
Merge "Bring Reference Type Propagation to Instance/StaticInstanceField"

9 years agoSupport for inlining methods that call/throw.
Nicolas Geoffray [Mon, 18 May 2015 21:31:29 +0000 (22:31 +0100)]
Support for inlining methods that call/throw.

Mostly fixes here and there to make it working.

Change-Id: I1b535e895105d78b65634636d675b818551f783e

9 years agoMerge "Also add run-test dependencies to build-art-*-tests."
Nicolas Geoffray [Fri, 29 May 2015 12:55:54 +0000 (12:55 +0000)]
Merge "Also add run-test dependencies to build-art-*-tests."

9 years agoMerge "Use the new HCurrentMethod in HLoadString."
Nicolas Geoffray [Fri, 29 May 2015 12:43:13 +0000 (12:43 +0000)]
Merge "Use the new HCurrentMethod in HLoadString."

9 years agoAlso add run-test dependencies to build-art-*-tests.
Nicolas Geoffray [Fri, 29 May 2015 12:40:25 +0000 (13:40 +0100)]
Also add run-test dependencies to build-art-*-tests.

Change-Id: If02c1a9426c2d04f4fad8892e387b2fb6c48ee2f

9 years agoMerge "Fix typo in script."
Nicolas Geoffray [Fri, 29 May 2015 11:20:12 +0000 (11:20 +0000)]
Merge "Fix typo in script."

9 years agoFix typo in script.
Nicolas Geoffray [Fri, 29 May 2015 11:17:06 +0000 (12:17 +0100)]
Fix typo in script.

Change-Id: I853bb5758005f9f7c4940f815c3d72a1d48acd21

9 years agoUse the new HCurrentMethod in HLoadString.
Nicolas Geoffray [Fri, 29 May 2015 11:06:56 +0000 (12:06 +0100)]
Use the new HCurrentMethod in HLoadString.

Change-Id: I23d27e5e10736d127519eb3238ff8f25df3843a2

9 years agoMerge "Update libcore failures"
Nicolas Geoffray [Fri, 29 May 2015 11:03:52 +0000 (11:03 +0000)]
Merge "Update libcore failures"

9 years agoUpdate libcore failures
Wojciech Staszkiewicz [Fri, 29 May 2015 10:12:59 +0000 (11:12 +0100)]
Update libcore failures

Default device date (1970) is causing some tests to fail. This
change updates libcore failures to reflect this knowledge.

Change-Id: Ia8151cfa1600fba4b45c203d468de9244b322d61

9 years agoBring Reference Type Propagation to Instance/StaticInstanceField
Guillaume "Vermeille" Sanchez [Wed, 20 May 2015 16:52:13 +0000 (17:52 +0100)]
Bring Reference Type Propagation to Instance/StaticInstanceField

For this, we need the field index in FieldInfo, hence the add of the field.

Change-Id: Id219bd826d8496acf3981307a8c42e2eb6ddb712

9 years agoMerge "Add a script to build exactly like the chrome buildbot."
Nicolas Geoffray [Fri, 29 May 2015 10:41:40 +0000 (10:41 +0000)]
Merge "Add a script to build exactly like the chrome buildbot."

9 years agoAdd a script to build exactly like the chrome buildbot.
Nicolas Geoffray [Fri, 29 May 2015 09:54:12 +0000 (10:54 +0100)]
Add a script to build exactly like the chrome buildbot.

The buildbot will use that script directly.

Change-Id: I837432f1e1e9b9d238d91de9af51ad955f7cd76d

9 years agoFix double-exception in super-class method validation.
Vladimir Marko [Fri, 8 May 2015 11:26:59 +0000 (12:26 +0100)]
Fix double-exception in super-class method validation.

Bug: 19333589
Change-Id: I2399c4058d488bbdbf6709c63e367f1b7c251b1d

9 years agoMerge "ART: Fix valgrind Makefile"
Andreas Gampe [Fri, 29 May 2015 03:18:25 +0000 (03:18 +0000)]
Merge "ART: Fix valgrind Makefile"

9 years agoART: Fix valgrind Makefile
Andreas Gampe [Fri, 29 May 2015 03:17:09 +0000 (20:17 -0700)]
ART: Fix valgrind Makefile

Add a missing dependency that lead to runtime errors.

Change-Id: Idbaed6bcc56a644713f10847f8600dc0f962202f

9 years agoMerge "ART: Add Mips o32 callee-save registers to SaveAll frame"
Andreas Gampe [Fri, 29 May 2015 00:47:42 +0000 (00:47 +0000)]
Merge "ART: Add Mips o32 callee-save registers to SaveAll frame"

9 years agoMerge "Add JNI String.<init> test for global and weak global refs."
Jeff Hao [Thu, 28 May 2015 22:50:19 +0000 (22:50 +0000)]
Merge "Add JNI String.<init> test for global and weak global refs."

9 years agoAdd JNI String.<init> test for global and weak global refs.
Jeff Hao [Thu, 28 May 2015 21:32:07 +0000 (14:32 -0700)]
Add JNI String.<init> test for global and weak global refs.

Test for change:
https://android-review.googlesource.com/#/c/152265/

(cherry picked from commit 7be83025b62ab499ed8b2b59521f8fbe8e2b13ab)

Change-Id: If10a5fcf7a554d798d2bb21d493e5a7266ed0079

9 years agoMerge "Fix updating of JNI references for String.<init>."
Jeff Hao [Thu, 28 May 2015 22:47:58 +0000 (22:47 +0000)]
Merge "Fix updating of JNI references for String.<init>."

9 years agoART: Add support for special handlers in sigchainlib
Andreas Gampe [Sat, 23 May 2015 01:31:50 +0000 (18:31 -0700)]
ART: Add support for special handlers in sigchainlib

Add support for a special managed handler in sigchainlib that
will be called as the first user handler.

Use this support for native bridge v2. Extend test 115-native-bridge
to test the functionality.

Bug: 20217701
Change-Id: I78cc01fbdabe169154ff6b94c9f3ddb95b5c7448

9 years agoMerge "Add --generate-debug-info flag and remove the other two flags."
David Srbecky [Thu, 28 May 2015 18:37:35 +0000 (18:37 +0000)]
Merge "Add --generate-debug-info flag and remove the other two flags."

9 years agoAdd --generate-debug-info flag and remove the other two flags.
David Srbecky [Thu, 28 May 2015 15:12:43 +0000 (16:12 +0100)]
Add --generate-debug-info flag and remove the other two flags.

Replace the flags --include-debug-symbols and --include-cfi
with single flag called --generate-debug-info (with alias -g).

The name "symbol" was not ideal, since depending on context it
may be interpreted as "ELF symbols", or "debugging information".

This CL also means that we have only the options to include
either all debugging information or none.  This should be fine,
since we can use standard tools to strip anything we do not want.

Change-Id: I721fded56d755d7eed0ef36aa84e841a1f5747f8

9 years agoMerge "ART: Distinguish Checker lines from comments"
David Brazdil [Thu, 28 May 2015 14:47:03 +0000 (14:47 +0000)]
Merge "ART: Distinguish Checker lines from comments"

9 years agoART: Add Mips o32 callee-save registers to SaveAll frame
Andreas Gampe [Thu, 28 May 2015 01:31:42 +0000 (18:31 -0700)]
ART: Add Mips o32 callee-save registers to SaveAll frame

The floating point registers f20-f31 are callee-save in the Mips
ABI. While the managed code does not touch them, they need to be
saved when throwing an exception, so that they will be correctly
restored and not smashed.

Bug: 21266656
Change-Id: Ia96d52ce7fb41bf604da1797ce4d7a703e292415

9 years agoART: Distinguish Checker lines from comments
David Brazdil [Thu, 28 May 2015 10:14:54 +0000 (11:14 +0100)]
ART: Distinguish Checker lines from comments

In order to prevent tests passing due to lines with hard-to-spot
formatting errors begin ignored, e.g. by forgetting the colon after
"//CHECK", Checker will now require its assertions to start with "///"
or "##", respectivelly for Java and Smali. Such lines will never be
ignored and will fail the test unless successfully parsed.

Change-Id: I0da9a8f13eb96d950af8c85df17d1899a853a299

9 years agoMerge "Add a HCurrentMethod node."
Nicolas Geoffray [Thu, 28 May 2015 10:10:24 +0000 (10:10 +0000)]
Merge "Add a HCurrentMethod node."

9 years agoMerge "Fix single-step in native thread"
Sebastien Hertz [Thu, 28 May 2015 09:56:32 +0000 (09:56 +0000)]
Merge "Fix single-step in native thread"

9 years agoAdd a HCurrentMethod node.
Nicolas Geoffray [Wed, 27 May 2015 16:18:33 +0000 (17:18 +0100)]
Add a HCurrentMethod node.

This enables register allocation for the current method, so
that users of it don't always load it from the stack.

Currently only used by HLoadClass. Will make follow-up
CLs for the other users.

Change-Id: If73324d85643102faba47fabbbd2755eb258c59c

9 years agoFix single-step in native thread
Sebastien Hertz [Thu, 28 May 2015 09:00:57 +0000 (11:00 +0200)]
Fix single-step in native thread

If we attempt to single-step in a thread that is not running Java
code, there is no current method on the stack. So we need to check
for null before trying to decode debug info.

Bug: 21320157
Change-Id: Idef9954d14e1eb7185f25d2a6e238135ac52d35f

9 years agoMerge "Fix rule: the exe must be first dependency."
Nicolas Geoffray [Thu, 28 May 2015 09:27:40 +0000 (09:27 +0000)]
Merge "Fix rule: the exe must be first dependency."