OSDN Git Service

android-x86/art.git
9 years agoam dc31313c: Merge "ART: Clean up arm64 kNumberOfXRegisters usage."
Vladimir Marko [Tue, 26 May 2015 17:53:58 +0000 (17:53 +0000)]
am dc31313c: Merge "ART: Clean up arm64 kNumberOfXRegisters usage."

* commit 'dc31313c4577bb4c00d90774159c84e738ed348d':
  ART: Clean up arm64 kNumberOfXRegisters usage.

9 years agoMerge "ART: Clean up arm64 kNumberOfXRegisters usage."
Vladimir Marko [Tue, 26 May 2015 17:42:31 +0000 (17:42 +0000)]
Merge "ART: Clean up arm64 kNumberOfXRegisters usage."

9 years agoam 03b5a398: Merge "Fix for potential moving GC bugs around proxy class."
Hiroshi Yamauchi [Tue, 26 May 2015 17:15:38 +0000 (17:15 +0000)]
am 03b5a398: Merge "Fix for potential moving GC bugs around proxy class."

* commit '03b5a398a96ea29c39ddfe3d810245b868d2871f':
  Fix for potential moving GC bugs around proxy class.

9 years agoam 1b742fcc: Merge "Log the process memory maps on host SIGSEGV."
Hiroshi Yamauchi [Tue, 26 May 2015 17:15:36 +0000 (17:15 +0000)]
am 1b742fcc: Merge "Log the process memory maps on host SIGSEGV."

* commit '1b742fccf9ca68b783fdbd559a3fcbdafab48852':
  Log the process memory maps on host SIGSEGV.

9 years agoMerge "Fix for potential moving GC bugs around proxy class."
Hiroshi Yamauchi [Tue, 26 May 2015 17:02:43 +0000 (17:02 +0000)]
Merge "Fix for potential moving GC bugs around proxy class."

9 years agoMerge "Log the process memory maps on host SIGSEGV."
Hiroshi Yamauchi [Tue, 26 May 2015 17:01:24 +0000 (17:01 +0000)]
Merge "Log the process memory maps on host SIGSEGV."

9 years agoFix for potential moving GC bugs around proxy class.
Hiroshi Yamauchi [Thu, 21 May 2015 19:05:27 +0000 (12:05 -0700)]
Fix for potential moving GC bugs around proxy class.

- Handlerize proxy_class which is live across multiple allocation
  points in ClassLinker::CreateProxyClass().

- In ClassLinker::CreateProxyClass(), insert a proxy class into the
  class table before creating ArtFields for it (and update it later in
  LinkClass()) because the field roots (ArtField::declaring_class_)
  won't be updated by GC unless the class is in the class table. If GC
  happens before they are updated by FixupTemporaryDeclaringClass()
  from LinkClass(), FixupTemporaryDeclaringClass() may not update the
  field roots correctly because the old class may already be moved but
  the fields roots may not. Reduce a window of time where the fields
  roots could be stale.

- In ClassLinker::LinkClass(), directly wrap a new class in a handle
  to avoid a window of time where new_class may be potentially stale.

- Print more diagnostic info about the holder of the field upon a mark
  sweep invalid ref crash.

- Add an additional sanity check in Field::GetArtField().

(cherry pick commit 08d1b5f2296c0f51507b8b443f4e39dfc161572c)

Bug: 20557050

Change-Id: I9ad32d304922da96b7e1fad262d97de21cbac776

9 years agoART: Clean up arm64 kNumberOfXRegisters usage.
Vladimir Marko [Tue, 19 May 2015 17:08:00 +0000 (18:08 +0100)]
ART: Clean up arm64 kNumberOfXRegisters usage.

Avoid undefined behavior for arm64 stemming from 1u << 32 in
loops with upper bound kNumberOfXRegisters.

Create iterators for enumerating bits in an integer either
from high to low or from low to high and use them for
<arch>Context::FillCalleeSaves() on all architectures.

Refactor runtime/utils.{h,cc} by moving all bit-fiddling
functions to runtime/base/bit_utils.{h,cc} (together with
the new bit iterators) and all time-related functions to
runtime/base/time_utils.{h,cc}. Improve test coverage and
fix some corner cases for the bit-fiddling functions.

Bug: 13925192
Change-Id: I704884dab15b41ecf7a1c47d397ab1c3fc7ee0f7

9 years agoam c06841da: Merge "Fix a few literals and assertions."
Roland Levillain [Tue, 26 May 2015 14:46:34 +0000 (14:46 +0000)]
am c06841da: Merge "Fix a few literals and assertions."

* commit 'c06841dac1443e99e92596f15caa82c99bfee010':
  Fix a few literals and assertions.

9 years agoam 41f27292: Merge "Move the catalog after the stack maps."
Nicolas Geoffray [Tue, 26 May 2015 14:46:33 +0000 (14:46 +0000)]
am 41f27292: Merge "Move the catalog after the stack maps."

* commit '41f27292e10792165bfdf67b9a35ccaea1a6872e':
  Move the catalog after the stack maps.

9 years agoMerge "Fix a few literals and assertions."
Roland Levillain [Tue, 26 May 2015 14:43:33 +0000 (14:43 +0000)]
Merge "Fix a few literals and assertions."

9 years agoMerge "Move the catalog after the stack maps."
Nicolas Geoffray [Tue, 26 May 2015 14:34:57 +0000 (14:34 +0000)]
Merge "Move the catalog after the stack maps."

9 years agoam 9470f045: Merge "Make inlining deterministic."
Nicolas Geoffray [Tue, 26 May 2015 14:23:04 +0000 (14:23 +0000)]
am 9470f045: Merge "Make inlining deterministic."

* commit '9470f045c89cdb3de5175266bda523b8a1c2d96d':
  Make inlining deterministic.

9 years agoMove the catalog after the stack maps.
Nicolas Geoffray [Tue, 26 May 2015 14:22:58 +0000 (15:22 +0100)]
Move the catalog after the stack maps.

Fetching a stack map should be cheap, and therefore we should
not compute the size of the catalog.

Change-Id: Iff6accb7832bdfa6d209a0928d6088b8b57c1aa4

9 years agoMerge "Make inlining deterministic."
Nicolas Geoffray [Tue, 26 May 2015 14:12:51 +0000 (14:12 +0000)]
Merge "Make inlining deterministic."

9 years agoFix a few literals and assertions.
Roland Levillain [Tue, 26 May 2015 14:02:07 +0000 (15:02 +0100)]
Fix a few literals and assertions.

Change-Id: I0a1e9db607ec7325e17568b034ba90e68d2298f9

9 years agoMake inlining deterministic.
Nicolas Geoffray [Tue, 26 May 2015 13:35:06 +0000 (14:35 +0100)]
Make inlining deterministic.

Only the case where two methods are not in the same dex
file could lead to undeterministic behavior.

bug:20037935

Change-Id: I1a7642a979302b17e76d196894437c1aacbbbe9d

9 years agoam ce63cf65: Merge "ART: Update graph\'s exit block field if removed"
David Brazdil [Tue, 26 May 2015 13:34:44 +0000 (13:34 +0000)]
am ce63cf65: Merge "ART: Update graph\'s exit block field if removed"

* commit 'ce63cf656bb5b25051d580a58086f4bf15fb878b':
  ART: Update graph's exit block field if removed

9 years agoMerge "ART: Update graph's exit block field if removed"
David Brazdil [Tue, 26 May 2015 13:23:51 +0000 (13:23 +0000)]
Merge "ART: Update graph's exit block field if removed"

9 years agoam 092a5656: Merge "JDWP: fix breakpoint on catch statement"
Sebastien Hertz [Tue, 26 May 2015 13:10:55 +0000 (13:10 +0000)]
am 092a5656: Merge "JDWP: fix breakpoint on catch statement"

* commit '092a5656937a319449346e8c356f3f4c2870d81c':
  JDWP: fix breakpoint on catch statement

9 years agoMerge "JDWP: fix breakpoint on catch statement"
Sebastien Hertz [Tue, 26 May 2015 13:00:34 +0000 (13:00 +0000)]
Merge "JDWP: fix breakpoint on catch statement"

9 years agoART: Update graph's exit block field if removed
David Brazdil [Tue, 26 May 2015 11:05:55 +0000 (12:05 +0100)]
ART: Update graph's exit block field if removed

Running DCE on an infinite loop will delete the exit block but the
corresponding field is currently not cleared in the parent graph.
This does not cause any problems at the moment as that information is
only used in codegens to DCHECK that a block is not the exit block.
However, it will be necessary to update the inliner once we start to
inline methods with loops.

With this patch, DCE will update the HGraph::exit_block_ field. DCHECK
was also added to HGraph::InlineInto to make sure that the inlined
graph does have an exit block.

Change-Id: Ia8ddca375bbc6830cd919af6059a52cc9b73a023

9 years agoJDWP: fix breakpoint on catch statement
Sebastien Hertz [Tue, 26 May 2015 09:53:39 +0000 (11:53 +0200)]
JDWP: fix breakpoint on catch statement

Setting a breakpoint on a catch statement in the source actually
installs the breakpoint on a DEX move-exception instruction. At this
point, an exception is pending in the current thread.

The issue is no exception must be pending in the current thread to
report the breakpoint event. This is required to be able to call JNI
functions to create JDWP ids.

This CL fixes it by clearing the pending exception before reporting
event and restore it after reporting the event.

Bug: 21382373
Change-Id: Id3c60cca398135a3e0859a1ccb645b9c99d5ca76

9 years agoam 8a8d8252: Merge "Do not use dex_compilation_unit after inlining."
Nicolas Geoffray [Tue, 26 May 2015 10:12:13 +0000 (10:12 +0000)]
am 8a8d8252: Merge "Do not use dex_compilation_unit after inlining."

* commit '8a8d8252f52bec14a8fe2b6f88e1f184c63cf351':
  Do not use dex_compilation_unit after inlining.

9 years agoMerge "Do not use dex_compilation_unit after inlining."
Nicolas Geoffray [Tue, 26 May 2015 10:02:31 +0000 (10:02 +0000)]
Merge "Do not use dex_compilation_unit after inlining."

9 years agoLog the process memory maps on host SIGSEGV.
Hiroshi Yamauchi [Sat, 23 May 2015 01:15:10 +0000 (18:15 -0700)]
Log the process memory maps on host SIGSEGV.

Bug: 19894268
Change-Id: Ib35f858de2519e24422a2ed19c68cfbdfd4173b3

9 years agoam ca27be7a: Merge "ARM64: Move xSELF from x18 to x19."
Andreas Gampe [Fri, 22 May 2015 23:21:13 +0000 (23:21 +0000)]
am ca27be7a: Merge "ARM64: Move xSELF from x18 to x19."

* commit 'ca27be7a95e1b238c76a4a5fccaad2a3416766c2':
  ARM64: Move xSELF from x18 to x19.

9 years agoMerge "ARM64: Move xSELF from x18 to x19."
Andreas Gampe [Fri, 22 May 2015 23:07:36 +0000 (23:07 +0000)]
Merge "ARM64: Move xSELF from x18 to x19."

9 years agoam e7654e5a: Merge "Revert "Switch to using ELF-64 for 64-bit architectures.""
Hiroshi Yamauchi [Fri, 22 May 2015 22:37:06 +0000 (22:37 +0000)]
am e7654e5a: Merge "Revert "Switch to using ELF-64 for 64-bit architectures.""

* commit 'e7654e5ab8668d14aab0d4bf1b3631ef150b36dd':
  Revert "Switch to using ELF-64 for 64-bit architectures."

9 years agoMerge "Revert "Switch to using ELF-64 for 64-bit architectures.""
Hiroshi Yamauchi [Fri, 22 May 2015 22:30:43 +0000 (22:30 +0000)]
Merge "Revert "Switch to using ELF-64 for 64-bit architectures.""

9 years agoRevert "Switch to using ELF-64 for 64-bit architectures."
Hiroshi Yamauchi [Fri, 22 May 2015 22:28:59 +0000 (22:28 +0000)]
Revert "Switch to using ELF-64 for 64-bit architectures."

This reverts commit a3a49fe863e0bcf423ed0b4082136d1439fb2e79.

Change-Id: I0afabec15f5d9110de0d4105cbab7d040f2b86e2

9 years agoam 8c83ef7a: Merge "Return an invalid StackMap when one cannot be found."
Nicolas Geoffray [Fri, 22 May 2015 14:55:02 +0000 (14:55 +0000)]
am 8c83ef7a: Merge "Return an invalid StackMap when one cannot be found."

* commit '8c83ef7abff3b96d9551da6b1c0c68497617f3f7':
  Return an invalid StackMap when one cannot be found.

9 years agoam bacdffbe: Merge "Revert "Revert "Introduce a NearLabel in thumb2."""
Nicolas Geoffray [Fri, 22 May 2015 14:55:01 +0000 (14:55 +0000)]
am bacdffbe: Merge "Revert "Revert "Introduce a NearLabel in thumb2."""

* commit 'bacdffbeed9ee3671854a1ec3d3aa169a4fb765e':
  Revert "Revert "Introduce a NearLabel in thumb2.""

9 years agoMerge "Return an invalid StackMap when one cannot be found."
Nicolas Geoffray [Fri, 22 May 2015 14:45:52 +0000 (14:45 +0000)]
Merge "Return an invalid StackMap when one cannot be found."

9 years agoMerge "Revert "Revert "Introduce a NearLabel in thumb2."""
Nicolas Geoffray [Fri, 22 May 2015 14:45:36 +0000 (14:45 +0000)]
Merge "Revert "Revert "Introduce a NearLabel in thumb2."""

9 years agoDo not use dex_compilation_unit after inlining.
Nicolas Geoffray [Fri, 22 May 2015 14:37:09 +0000 (15:37 +0100)]
Do not use dex_compilation_unit after inlining.

It's incompatible with inlining, as inlined invokes/load class/new
can be from another dex file.

Change-Id: I8897b6a012942bc8e136f2bea70252d3fb3a7fa5

9 years agoRevert "Revert "Introduce a NearLabel in thumb2.""
Nicolas Geoffray [Thu, 21 May 2015 12:32:34 +0000 (12:32 +0000)]
Revert "Revert "Introduce a NearLabel in thumb2.""

This reverts commit 1f277e3cef6c33cd35e91123978491d83338d2ad.

- Fix CompareAndBranch to not use cbz/cbnz with high registers.
- Add a test for CompareAndBranch with the *inc file, as the
  other assembler test infrastructure does not handle labels.

Change-Id: If552bf1112b96caa3b9bb6c73c4b40bb90a33db7

9 years agoReturn an invalid StackMap when one cannot be found.
Nicolas Geoffray [Fri, 22 May 2015 13:01:33 +0000 (14:01 +0100)]
Return an invalid StackMap when one cannot be found.

This avoids aborting when handling a crash.

Change-Id: Ie5b5d48061fa9258b349b0284f7b00c5855d9fbd

9 years agoARM64: Move xSELF from x18 to x19.
Serban Constantinescu [Wed, 22 Apr 2015 15:24:46 +0000 (16:24 +0100)]
ARM64: Move xSELF from x18 to x19.

This patch moves xSELF to callee saved x19 and removes support for
ETR (external thread register), previously used across native calls.

Change-Id: Icee07fbb9292425947f7de33d10a0ddf98c7899b
Signed-off-by: Serban Constantinescu <serban.constantinescu@linaro.org>
9 years agoam aa49c23d: Merge "ART: Sometimes even empty methods take forever to verify"
Andreas Gampe [Thu, 21 May 2015 22:05:01 +0000 (22:05 +0000)]
am aa49c23d: Merge "ART: Sometimes even empty methods take forever to verify"

* commit 'aa49c23d47e5fdfcf51380550ee864e9d30d082b':
  ART: Sometimes even empty methods take forever to verify

9 years agoMerge "ART: Sometimes even empty methods take forever to verify"
Andreas Gampe [Thu, 21 May 2015 21:57:46 +0000 (21:57 +0000)]
Merge "ART: Sometimes even empty methods take forever to verify"

9 years agoART: Sometimes even empty methods take forever to verify
Andreas Gampe [Thu, 21 May 2015 21:06:46 +0000 (14:06 -0700)]
ART: Sometimes even empty methods take forever to verify

In cases of very high load and/or bad scheduling, the verifier may
take longer than the threshold duration to verify an empty method.
The LargeMethod detection needs to accept that the code_item may
be null.

Bug: 21364300

(cherry picked from commit 8110447356f559688d6290563e912af7f8d4709b)

Change-Id: Iceff3e4688cc1a5fe7a836f7a9bf6c49a392b618

9 years agoam 559b178e: Merge "Update failures"
Nicolas Geoffray [Thu, 21 May 2015 17:37:04 +0000 (17:37 +0000)]
am 559b178e: Merge "Update failures"

* commit '559b178e34c5d92e7932f92e5d8a981ac334606f':
  Update failures

9 years agoMerge "Update failures"
Nicolas Geoffray [Thu, 21 May 2015 17:24:31 +0000 (17:24 +0000)]
Merge "Update failures"

9 years agoam 12beecf8: Merge "ART: Blacklist CFI test for Heap Poisoning"
Andreas Gampe [Thu, 21 May 2015 17:20:44 +0000 (17:20 +0000)]
am 12beecf8: Merge "ART: Blacklist CFI test for Heap Poisoning"

* commit '12beecf84130780915c1bdc97d80f9715ce941d2':
  ART: Blacklist CFI test for Heap Poisoning

9 years agoMerge "ART: Blacklist CFI test for Heap Poisoning"
Andreas Gampe [Thu, 21 May 2015 17:09:21 +0000 (17:09 +0000)]
Merge "ART: Blacklist CFI test for Heap Poisoning"

9 years agoART: Blacklist CFI test for Heap Poisoning
Andreas Gampe [Thu, 21 May 2015 17:01:42 +0000 (10:01 -0700)]
ART: Blacklist CFI test for Heap Poisoning

The test expects Java frames on the stack.

Change-Id: I19e7429f06fac107c2cf9f85325e8f071e5799fb

9 years agoUpdate failures
Wojciech Staszkiewicz [Thu, 21 May 2015 16:43:09 +0000 (17:43 +0100)]
Update failures

Some failures have been removed too eagerly, this CL reverts that.

Change-Id: I897b1b7f936d2c001c44db604905c22242797e46

9 years agoam dc80984a: Merge "Write 64-bit address in DWARF if we are on 64-bit architecture."
David Srbecky [Thu, 21 May 2015 15:45:21 +0000 (15:45 +0000)]
am dc80984a: Merge "Write 64-bit address in DWARF if we are on 64-bit architecture."

* commit 'dc80984a9e24d6e46fab9461f01d7a27e656cf90':
  Write 64-bit address in DWARF if we are on 64-bit architecture.

9 years agoMerge "Write 64-bit address in DWARF if we are on 64-bit architecture."
David Srbecky [Thu, 21 May 2015 15:36:21 +0000 (15:36 +0000)]
Merge "Write 64-bit address in DWARF if we are on 64-bit architecture."

9 years agoam 7288b382: Merge "Update libcore failures"
Nicolas Geoffray [Thu, 21 May 2015 15:08:50 +0000 (15:08 +0000)]
am 7288b382: Merge "Update libcore failures"

* commit '7288b382b03936e707f0cb2da955be4e4301a699':
  Update libcore failures

9 years agoMerge "Update libcore failures"
Nicolas Geoffray [Thu, 21 May 2015 15:00:46 +0000 (15:00 +0000)]
Merge "Update libcore failures"

9 years agoUpdate libcore failures
Wojciech Staszkiewicz [Thu, 21 May 2015 14:29:30 +0000 (15:29 +0100)]
Update libcore failures

Updated libcore failures.

Change-Id: I570846220c5b4dea43fd39a4a777c37eb3595a08

9 years agoam 1d637745: Merge "Fix the size of a StackHandleScope in art::CompilerDriver."
Roland Levillain [Thu, 21 May 2015 13:00:04 +0000 (13:00 +0000)]
am 1d637745: Merge "Fix the size of a StackHandleScope in art::CompilerDriver."

* commit '1d637745bf1a47db6b899f0c004746ada2fd3f58':
  Fix the size of a StackHandleScope in art::CompilerDriver.

9 years agoMerge "Fix the size of a StackHandleScope in art::CompilerDriver."
Roland Levillain [Thu, 21 May 2015 12:49:31 +0000 (12:49 +0000)]
Merge "Fix the size of a StackHandleScope in art::CompilerDriver."

9 years agoam d6a1eaef: Merge "Revert "Introduce a NearLabel in thumb2.""
Nicolas Geoffray [Thu, 21 May 2015 12:39:59 +0000 (12:39 +0000)]
am d6a1eaef: Merge "Revert "Introduce a NearLabel in thumb2.""

* commit 'd6a1eaef02d0c73a8c24ff93ff68fc4f0d46925f':
  Revert "Introduce a NearLabel in thumb2."

9 years agoMerge "Revert "Introduce a NearLabel in thumb2.""
Nicolas Geoffray [Thu, 21 May 2015 12:26:43 +0000 (12:26 +0000)]
Merge "Revert "Introduce a NearLabel in thumb2.""

9 years agoRevert "Introduce a NearLabel in thumb2."
Nicolas Geoffray [Thu, 21 May 2015 12:26:31 +0000 (12:26 +0000)]
Revert "Introduce a NearLabel in thumb2."

Fails some benchmarks and libcore tests.

This reverts commit db0bbab279534974dca507946c66cff2d05dc9f9.

Change-Id: I5d1afef5ede87e65d61f49529027c5c2f35b17fb

9 years agoam 9758a8e4: Merge "Also encode the InvokeType in an InlineInfo."
Nicolas Geoffray [Thu, 21 May 2015 11:19:19 +0000 (11:19 +0000)]
am 9758a8e4: Merge "Also encode the InvokeType in an InlineInfo."

* commit '9758a8e4f7a8823161604aa876517e9ff5b8bb12':
  Also encode the InvokeType in an InlineInfo.

9 years agoam 19b71cd0: Merge "ART: Rename graph dump file name to \'graph.cfg\'"
David Brazdil [Thu, 21 May 2015 11:19:18 +0000 (11:19 +0000)]
am 19b71cd0: Merge "ART: Rename graph dump file name to \'graph.cfg\'"

* commit '19b71cd0af3b45a105073d80ce33ede69b14adfd':
  ART: Rename graph dump file name to 'graph.cfg'

9 years agoMerge "Also encode the InvokeType in an InlineInfo."
Nicolas Geoffray [Thu, 21 May 2015 11:11:17 +0000 (11:11 +0000)]
Merge "Also encode the InvokeType in an InlineInfo."

9 years agoAlso encode the InvokeType in an InlineInfo.
Nicolas Geoffray [Wed, 20 May 2015 17:48:31 +0000 (18:48 +0100)]
Also encode the InvokeType in an InlineInfo.

This will be needed to recover the call stack.

Change-Id: I2fe10785eb1167939c8cce1862b2d7f4066e16ec

9 years agoMerge "ART: Rename graph dump file name to 'graph.cfg'"
David Brazdil [Thu, 21 May 2015 11:08:59 +0000 (11:08 +0000)]
Merge "ART: Rename graph dump file name to 'graph.cfg'"

9 years agoART: Rename graph dump file name to 'graph.cfg'
David Brazdil [Thu, 21 May 2015 11:06:13 +0000 (12:06 +0100)]
ART: Rename graph dump file name to 'graph.cfg'

Change-Id: I91f6a6bf5efac5b3bba92b9a89e22e1b7be6e02f

9 years agoam 533d89ce: Merge "ART: Implement next-line assertions in Checker"
David Brazdil [Thu, 21 May 2015 10:50:30 +0000 (10:50 +0000)]
am 533d89ce: Merge "ART: Implement next-line assertions in Checker"

* commit '533d89ceea0a8b953c688a2e9c259a5361581ecf':
  ART: Implement next-line assertions in Checker

9 years agoam 1fd8dae9: Merge "Introduce a NearLabel in thumb2."
Nicolas Geoffray [Thu, 21 May 2015 10:39:03 +0000 (10:39 +0000)]
am 1fd8dae9: Merge "Introduce a NearLabel in thumb2."

* commit '1fd8dae90da7bd62c4c04cd10d4f600e8d9e4416':
  Introduce a NearLabel in thumb2.

9 years agoMerge "ART: Implement next-line assertions in Checker"
David Brazdil [Thu, 21 May 2015 10:38:41 +0000 (10:38 +0000)]
Merge "ART: Implement next-line assertions in Checker"

9 years agoMerge "Introduce a NearLabel in thumb2."
Nicolas Geoffray [Thu, 21 May 2015 10:29:26 +0000 (10:29 +0000)]
Merge "Introduce a NearLabel in thumb2."

9 years agoART: Implement next-line assertions in Checker
David Brazdil [Tue, 19 May 2015 17:29:40 +0000 (18:29 +0100)]
ART: Implement next-line assertions in Checker

Some tests require verifying an exact sequence of lines in the graph
dump. This was already possible by inserting 'CHECK-NOT: {{.*}}'
between the individual lines, but hardly a convenient way of doing so.
This patch introduces a new 'CHECK-NEXT' kind of assertions that
replaces the old method and will become useful for testing assembly.

Change-Id: I1bb951707bda44320166dc7ef828866a6957a113

9 years agoam 01cb410f: Merge "ART: Refactor and simplify matching in Checker"
David Brazdil [Thu, 21 May 2015 09:53:41 +0000 (09:53 +0000)]
am 01cb410f: Merge "ART: Refactor and simplify matching in Checker"

* commit '01cb410f4ad23135671d821ba36c269f8c82affa':
  ART: Refactor and simplify matching in Checker

9 years agoMerge "ART: Refactor and simplify matching in Checker"
David Brazdil [Thu, 21 May 2015 09:16:24 +0000 (09:16 +0000)]
Merge "ART: Refactor and simplify matching in Checker"

9 years agoART: Refactor and simplify matching in Checker
David Brazdil [Wed, 20 May 2015 13:57:54 +0000 (14:57 +0100)]
ART: Refactor and simplify matching in Checker

Change-Id: Ib8a2b51488f66a7239e799f5fa5910b4ac2dfe08

9 years agoam bacadb05: Merge "Intercept JNI invocation of String.<init> methods."
Jeff Hao [Thu, 21 May 2015 02:29:11 +0000 (02:29 +0000)]
am bacadb05: Merge "Intercept JNI invocation of String.<init> methods."

* commit 'bacadb05b8b74dc91f05ee3899cbd9b2ea5dab7e':
  Intercept JNI invocation of String.<init> methods.

9 years agoMerge "Intercept JNI invocation of String.<init> methods."
Jeff Hao [Thu, 21 May 2015 02:17:02 +0000 (02:17 +0000)]
Merge "Intercept JNI invocation of String.<init> methods."

9 years agoIntercept JNI invocation of String.<init> methods.
Jeff Hao [Wed, 20 May 2015 03:30:23 +0000 (20:30 -0700)]
Intercept JNI invocation of String.<init> methods.

libmono uses JNI AllocObject and CallNonvirtualVoidMethod to create and
initialize a string instead of using the recommended NewObject. This
change adds an intercept to change the String.<init> call to a
StringFactory call instead. Then, it uses the object id of the original
string object referrer and maps it to the result of the StringFactory.

Bug: 21288130

(cherry picked from commit 15e9ad1d028d7f12cb598b075453173532a00d91)

Change-Id: I3421c43722c07397da4a398c2ca9110e1d40bcfa

9 years agoam 768b19b6: Merge "ART: Use v2 version of NativeBridge struct"
Andreas Gampe [Thu, 21 May 2015 01:16:30 +0000 (01:16 +0000)]
am 768b19b6: Merge "ART: Use v2 version of NativeBridge struct"

* commit '768b19b6bbddaa2262f6532e7fcb96fecbfee981':
  ART: Use v2 version of NativeBridge struct

9 years agoMerge "ART: Use v2 version of NativeBridge struct"
Andreas Gampe [Thu, 21 May 2015 01:03:10 +0000 (01:03 +0000)]
Merge "ART: Use v2 version of NativeBridge struct"

9 years agoam 03231f42: Merge "Fix a cts crash around proxy class fields."
Hiroshi Yamauchi [Thu, 21 May 2015 01:02:47 +0000 (01:02 +0000)]
am 03231f42: Merge "Fix a cts crash around proxy class fields."

* commit '03231f42c6e887237417d2d2e8d661dcedd7f5b2':
  Fix a cts crash around proxy class fields.

9 years agoART: Use v2 version of NativeBridge struct
Andreas Gampe [Thu, 21 May 2015 01:01:30 +0000 (18:01 -0700)]
ART: Use v2 version of NativeBridge struct

Update the struct to the new version, but without implementation.

Bug: 20217701
Change-Id: Ic23a60b949f119c7d8b0e7cb27a61e6c16532a23

9 years agoMerge "Fix a cts crash around proxy class fields."
Hiroshi Yamauchi [Thu, 21 May 2015 00:52:25 +0000 (00:52 +0000)]
Merge "Fix a cts crash around proxy class fields."

9 years agoFix a cts crash around proxy class fields.
Hiroshi Yamauchi [Wed, 20 May 2015 22:51:29 +0000 (15:51 -0700)]
Fix a cts crash around proxy class fields.

org.apache.harmony.tests.java.io.SerializationStressTest4#test_writeObject_Proxy

As the static fields of proxy classes share the dex file indices, they
shouldn't be resolved in the dex cache or else Field::GetArtField()
may return a wrong art field that belong to a different proxy class.

(cherry pick commit a56ce5e267c9744ed99e40ae5cd9b527971e1d63)

Bug: 20557050

Change-Id: If672c0e67bc49e672e34d75ffbe29c65f5a423b9

9 years agoam 847d902c: Merge "ART: Fix gtest dependency"
Andreas Gampe [Wed, 20 May 2015 23:37:07 +0000 (23:37 +0000)]
am 847d902c: Merge "ART: Fix gtest dependency"

* commit '847d902cc274d0c317fd94b5b5a058cba94828c6':
  ART: Fix gtest dependency

9 years agoMerge "ART: Fix gtest dependency"
Andreas Gampe [Wed, 20 May 2015 23:28:04 +0000 (23:28 +0000)]
Merge "ART: Fix gtest dependency"

9 years agoART: Fix gtest dependency
Andreas Gampe [Wed, 20 May 2015 23:09:36 +0000 (16:09 -0700)]
ART: Fix gtest dependency

Gtests should depend on the debug version of libart-disassembler.

Bug: 21273194
Change-Id: Iaf216a1c0cff650296ebf83fe4e8352f5614cb28

9 years agoam 22efeba8: Merge "ART: Blacklist CFI test for JIT"
Andreas Gampe [Wed, 20 May 2015 22:04:31 +0000 (22:04 +0000)]
am 22efeba8: Merge "ART: Blacklist CFI test for JIT"

* commit '22efeba85d4056143e34ed9a212a48a206d2f5b8':
  ART: Blacklist CFI test for JIT

9 years agoMerge "ART: Blacklist CFI test for JIT"
Andreas Gampe [Wed, 20 May 2015 21:52:35 +0000 (21:52 +0000)]
Merge "ART: Blacklist CFI test for JIT"

9 years agoART: Blacklist CFI test for JIT
Andreas Gampe [Wed, 20 May 2015 21:50:06 +0000 (14:50 -0700)]
ART: Blacklist CFI test for JIT

The test expects Java frames on the stack.

Change-Id: I485a7a2a3d15fb52c207bd8723bed3b01289c000

9 years agoam d6eee932: Merge "ART: Fix RegisterNative order"
Andreas Gampe [Wed, 20 May 2015 21:29:50 +0000 (21:29 +0000)]
am d6eee932: Merge "ART: Fix RegisterNative order"

* commit 'd6eee932a4da1cf1a582eff9d75a1561c849789d':
  ART: Fix RegisterNative order

9 years agoMerge "ART: Fix RegisterNative order"
Andreas Gampe [Wed, 20 May 2015 21:18:27 +0000 (21:18 +0000)]
Merge "ART: Fix RegisterNative order"

9 years agoam 513b6fdc: Merge "ART: Blacklist CFI test for non-compiled run-tests"
Andreas Gampe [Wed, 20 May 2015 21:07:59 +0000 (21:07 +0000)]
am 513b6fdc: Merge "ART: Blacklist CFI test for non-compiled run-tests"

* commit '513b6fdcbee0f83f2d9157d41b8498dba96283c5':
  ART: Blacklist CFI test for non-compiled run-tests

9 years agoART: Fix RegisterNative order
Andreas Gampe [Mon, 18 May 2015 22:52:22 +0000 (15:52 -0700)]
ART: Fix RegisterNative order

First check for both direct and virtual methods in the current class,
then move to the parent.

Optimize registration by checking first whether the current method
under test is native. This slows down registering implementations
in parent classes. Add a CheckJNI warning for this.

Add a run-test to check the behavior. Fix host comparison testing.

Bug: 19569721
Change-Id: I61e77117d96310632aad123d7f1279d0f834dc99

9 years agoMerge "ART: Blacklist CFI test for non-compiled run-tests"
Andreas Gampe [Wed, 20 May 2015 20:59:55 +0000 (20:59 +0000)]
Merge "ART: Blacklist CFI test for non-compiled run-tests"

9 years agoART: Blacklist CFI test for non-compiled run-tests
Andreas Gampe [Wed, 20 May 2015 20:55:00 +0000 (13:55 -0700)]
ART: Blacklist CFI test for non-compiled run-tests

The test expects Java frames on the stack.

Change-Id: I37914ad6a3c82264ee189492611469928a786f67

9 years agoam c1c5de73: Merge "ART: Refactor UnstartedRuntime for testing"
Andreas Gampe [Wed, 20 May 2015 19:49:33 +0000 (19:49 +0000)]
am c1c5de73: Merge "ART: Refactor UnstartedRuntime for testing"

* commit 'c1c5de731e2a23646e02e91311de29ecdd167dbd':
  ART: Refactor UnstartedRuntime for testing

9 years agoam 20d80bef: Merge "Switch to using ELF-64 for 64-bit architectures."
David Srbecky [Wed, 20 May 2015 19:49:31 +0000 (19:49 +0000)]
am 20d80bef: Merge "Switch to using ELF-64 for 64-bit architectures."

* commit '20d80bef40f63ac94eeb93749199f59e1b16adf1':
  Switch to using ELF-64 for 64-bit architectures.

9 years agoMerge "ART: Refactor UnstartedRuntime for testing"
Andreas Gampe [Wed, 20 May 2015 19:42:10 +0000 (19:42 +0000)]
Merge "ART: Refactor UnstartedRuntime for testing"

9 years agoART: Refactor UnstartedRuntime for testing
Andreas Gampe [Sat, 16 May 2015 02:24:12 +0000 (19:24 -0700)]
ART: Refactor UnstartedRuntime for testing

Expose the UnstartedRuntime implementation functions as private static
methods of a class. Add a gtest that can invoke these functions. Add
sample tests for String and Memory.

Bug: 21173514
Change-Id: Ib5bde6347fafaf7607c642542ea7d5938ff4b1df

9 years agoMerge "Switch to using ELF-64 for 64-bit architectures."
David Srbecky [Wed, 20 May 2015 19:40:53 +0000 (19:40 +0000)]
Merge "Switch to using ELF-64 for 64-bit architectures."

9 years agoam e128ee2e: Merge "ART: CFI Test"
Andreas Gampe [Wed, 20 May 2015 18:47:41 +0000 (18:47 +0000)]
am e128ee2e: Merge "ART: CFI Test"

* commit 'e128ee2ee9118f2673b67831e98d92b0a637b078':
  ART: CFI Test

9 years agoMerge "ART: CFI Test"
Andreas Gampe [Wed, 20 May 2015 18:38:56 +0000 (18:38 +0000)]
Merge "ART: CFI Test"