OSDN Git Service

android-x86/art.git
10 years agoam c21dc06a: Merge "ART: Check slow_paths_.Size() every time"
Ian Rogers [Wed, 9 Jul 2014 20:41:35 +0000 (20:41 +0000)]
am c21dc06a: Merge "ART: Check slow_paths_.Size() every time"

* commit 'c21dc06adc8c8447561208a3fb72ccf6d0443613':
  ART: Check slow_paths_.Size() every time

10 years agoam 68e5f442: Merge "x86_64: GenInlinedCas must use wide rl_src_offset under 64-bit...
Ian Rogers [Wed, 9 Jul 2014 20:37:53 +0000 (20:37 +0000)]
am 68e5f442: Merge "x86_64: GenInlinedCas must use wide rl_src_offset under 64-bit targets"

* commit '68e5f4421001a2ba885d822971c375368520ea8c':
  x86_64: GenInlinedCas must use wide rl_src_offset under 64-bit targets

10 years agoam a76dc41f: Merge "Allow method tracing for run-test"
Ian Rogers [Wed, 9 Jul 2014 19:35:04 +0000 (19:35 +0000)]
am a76dc41f: Merge "Allow method tracing for run-test"

* commit 'a76dc41fb21b6fba74f70188fdc53e1a5bf2c2cb':
  Allow method tracing for run-test

10 years agoam 0f635b10: Merge "Fix method tracing from command-line"
Ian Rogers [Wed, 9 Jul 2014 19:35:03 +0000 (19:35 +0000)]
am 0f635b10: Merge "Fix method tracing from command-line"

* commit '0f635b103c1fff6439d47bdae363afeffe7327fd':
  Fix method tracing from command-line

10 years agoam 32710dd4: Merge "x86_64: enable Peek and Poke intrinsics"
Ian Rogers [Wed, 9 Jul 2014 15:33:23 +0000 (15:33 +0000)]
am 32710dd4: Merge "x86_64: enable Peek and Poke intrinsics"

* commit '32710dd4a0232149002a5ae7bde1c640cdffd564':
  x86_64: enable Peek and Poke intrinsics

10 years agoMerge "ART: Check slow_paths_.Size() every time"
Ian Rogers [Wed, 9 Jul 2014 20:31:18 +0000 (20:31 +0000)]
Merge "ART: Check slow_paths_.Size() every time"

10 years agoART: Check slow_paths_.Size() every time
Chao-ying Fu [Tue, 8 Jul 2014 00:13:52 +0000 (17:13 -0700)]
ART: Check slow_paths_.Size() every time

This patch fixes a bug, when a new slow path is created
during slowpath->Compile().

Change-Id: I4896a82781102694c25f4483112c6de3c56e072c
Signed-off-by: Chao-ying Fu <chao-ying.fu@intel.com>
10 years agoMerge "Fix method tracing from command-line"
Ian Rogers [Wed, 9 Jul 2014 18:52:43 +0000 (18:52 +0000)]
Merge "Fix method tracing from command-line"

10 years agoMerge "x86_64: enable Peek and Poke intrinsics"
Ian Rogers [Wed, 9 Jul 2014 15:26:09 +0000 (15:26 +0000)]
Merge "x86_64: enable Peek and Poke intrinsics"

10 years agoMerge "x86_64: GenInlinedCas must use wide rl_src_offset under 64-bit targets"
Ian Rogers [Wed, 9 Jul 2014 20:24:26 +0000 (20:24 +0000)]
Merge "x86_64: GenInlinedCas must use wide rl_src_offset under 64-bit targets"

10 years agox86_64: GenInlinedCas must use wide rl_src_offset under 64-bit targets
Chao-ying Fu [Wed, 9 Jul 2014 18:32:31 +0000 (11:32 -0700)]
x86_64: GenInlinedCas must use wide rl_src_offset under 64-bit targets

This patch fixes to use wide rl_src_offset for int and long types
under 64-bit targets, and fixes movzx8 and movsx8 to use r8_form
on the second register only.

Change-Id: Ib8c0756609100f9bc5c228f1eb391421416f3af6
Signed-off-by: Chao-ying Fu <chao-ying.fu@intel.com>
10 years agoMerge "Allow method tracing for run-test"
Ian Rogers [Wed, 9 Jul 2014 18:58:43 +0000 (18:58 +0000)]
Merge "Allow method tracing for run-test"

10 years agox86_64: enable Peek and Poke intrinsics
Alexei Zavjalov [Tue, 8 Jul 2014 09:27:17 +0000 (16:27 +0700)]
x86_64: enable Peek and Poke intrinsics

This implements intrinsics for:
Memory.peekByte/Short/Int/Long()
Memory.pokeByte/Short/Int/Long()

Change-Id: I6da6250f262dfd7aded35c2e3ade2d0916bd73cb
Signed-off-by: Alexei Zavjalov <alexei.zavjalov@intel.com>
10 years agoFix method tracing from command-line
Sebastien Hertz [Tue, 17 Dec 2013 09:42:03 +0000 (10:42 +0100)]
Fix method tracing from command-line

Transitions current thread to the new kWaitingForMethodTracingStart thread
state when starting method tracing.

Ensures there is a current thread when method tracing is stopped due to runtime
shutdown. If the current thread has been detached, we now re-attach it.
Note: we only do this if method tracing has been activated from command-line.

Fixes instrumentation when forcing interpreter mode (-Xint) with method tracing
enabled.

Removes unused parameter from UnsafeLogFatalForThreadSuspendAllTimeout.

Bug: https://code.google.com/p/android/issues/detail?id=72094
Bug: 11683397
Change-Id: I70f000fb46ddd95d6ad51ea0a8eee77697a045e9

10 years agoAllow method tracing for run-test
Sebastien Hertz [Wed, 9 Jul 2014 13:59:05 +0000 (15:59 +0200)]
Allow method tracing for run-test

Adds "--trace" option to enable method tracing.

Bug: 11683397
Change-Id: I20a6b25c71067eafd848db26f13d62cfdb9a6159

10 years agoam 62f28f94: Merge "Fix a compile assert name with inverted meaning."
Vladimir Marko [Wed, 9 Jul 2014 12:36:42 +0000 (12:36 +0000)]
am 62f28f94: Merge "Fix a compile assert name with inverted meaning."

* commit '62f28f943e2da2873c7a09096c292f01a21c6478':
  Fix a compile assert name with inverted meaning.

10 years agoam 665f6810: Merge "Workaround for invalid monitor-exit catch ranges."
Vladimir Marko [Wed, 9 Jul 2014 12:36:41 +0000 (12:36 +0000)]
am 665f6810: Merge "Workaround for invalid monitor-exit catch ranges."

* commit '665f681020ec313d6aea1aa26db582176d780079':
  Workaround for invalid monitor-exit catch ranges.

10 years agoam 8078b294: Merge "Revert "ART: Key-Value Store in Oat header""
Nicolas Geoffray [Wed, 9 Jul 2014 12:36:40 +0000 (12:36 +0000)]
am 8078b294: Merge "Revert "ART: Key-Value Store in Oat header""

* commit '8078b294e8001abff5a6c8637e844b55a65fff4b':
  Revert "ART: Key-Value Store in Oat header"

10 years agoam 608520c8: Merge "Adds PGO_GEN and PGO_USE for libart and libart-compiler."
Ian Rogers [Wed, 9 Jul 2014 12:36:39 +0000 (12:36 +0000)]
am 608520c8: Merge "Adds PGO_GEN and PGO_USE for libart and libart-compiler."

* commit '608520c8ba1adc7d8d0623b021b7ea509b00751c':
  Adds PGO_GEN and PGO_USE for libart and libart-compiler.

10 years agoam 2cfe30bd: Merge "X86 Backend support for vectorized float and byte 16x16 operations"
Ian Rogers [Wed, 9 Jul 2014 12:36:39 +0000 (12:36 +0000)]
am 2cfe30bd: Merge "X86 Backend support for vectorized float and byte 16x16 operations"

* commit '2cfe30bd592cb6ae63bb4c28ccaf4b069d6ab565':
  X86 Backend support for vectorized float and byte 16x16 operations

10 years agoam 7b68fb3b: Merge "x86_64: Clean-up after cmp-long fix"
Ian Rogers [Wed, 9 Jul 2014 12:36:38 +0000 (12:36 +0000)]
am 7b68fb3b: Merge "x86_64: Clean-up after cmp-long fix"

* commit '7b68fb3b9b421d4b20c1993704986d637f1cab91':
  x86_64: Clean-up after cmp-long fix

10 years agoam dfc56e68: Merge "Clean-up call_x86.cc"
Ian Rogers [Wed, 9 Jul 2014 12:36:37 +0000 (12:36 +0000)]
am dfc56e68: Merge "Clean-up call_x86.cc"

* commit 'dfc56e681beb055801491792026cb9976d8566e8':
  Clean-up call_x86.cc

10 years agoam 251a057f: Merge "ART: Fix FP promotion"
Andreas Gampe [Wed, 9 Jul 2014 12:36:36 +0000 (12:36 +0000)]
am 251a057f: Merge "ART: Fix FP promotion"

* commit '251a057f52946452ac1c485b38d4ebafcf3bc5ad':
  ART: Fix FP promotion

10 years agoam dac3f4af: Merge "Whitelist another exception during dex2oat resolving."
Brian Carlstrom [Wed, 9 Jul 2014 12:36:35 +0000 (12:36 +0000)]
am dac3f4af: Merge "Whitelist another exception during dex2oat resolving."

* commit 'dac3f4afe1a3f5626836b6921230c150b68b9d34':
  Whitelist another exception during dex2oat resolving.

10 years agoam 6e524ddc: Merge "Make dex2oat heap size product configurable [art]"
Brian Carlstrom [Wed, 9 Jul 2014 12:36:34 +0000 (12:36 +0000)]
am 6e524ddc: Merge "Make dex2oat heap size product configurable [art]"

* commit '6e524ddc060f10a493dc63fa5b6dde0deef22219':
  Make dex2oat heap size product configurable [art]

10 years agoam 3d30b073: Merge "ART: Do not emit load when inlining unused Thread.currentThread()"
Andreas Gampe [Wed, 9 Jul 2014 12:36:33 +0000 (12:36 +0000)]
am 3d30b073: Merge "ART: Do not emit load when inlining unused Thread.currentThread()"

* commit '3d30b073541f19470e8b5dddef9377411fa587c3':
  ART: Do not emit load when inlining unused Thread.currentThread()

10 years agoam 8746860d: Merge "Only allow instance-of to improve knowledge of a type for downcasts."
Ian Rogers [Wed, 9 Jul 2014 12:36:32 +0000 (12:36 +0000)]
am 8746860d: Merge "Only allow instance-of to improve knowledge of a type for downcasts."

* commit '8746860d056e64dcc832264e74bda9d511e86e2d':
  Only allow instance-of to improve knowledge of a type for downcasts.

10 years agoMerge "Adds PGO_GEN and PGO_USE for libart and libart-compiler."
Ian Rogers [Wed, 9 Jul 2014 07:46:42 +0000 (07:46 +0000)]
Merge "Adds PGO_GEN and PGO_USE for libart and libart-compiler."

10 years agoMerge "X86 Backend support for vectorized float and byte 16x16 operations"
Ian Rogers [Wed, 9 Jul 2014 07:44:21 +0000 (07:44 +0000)]
Merge "X86 Backend support for vectorized float and byte 16x16 operations"

10 years agoX86 Backend support for vectorized float and byte 16x16 operations
Udayan Banerji [Wed, 9 Jul 2014 02:59:43 +0000 (19:59 -0700)]
X86 Backend support for vectorized float and byte 16x16 operations

Add support for reserving vector registers for the duration of vector loop.
Add support for 16x16 multiplication, shifts, and add reduce.

Changed the vectorization implementation to be able to use the dataflow
elements for SSA recreation and fixed a few implementation details.

Change-Id: I2f358f05f574fc4ab299d9497517b9906f234b98
Signed-off-by: Jean Christophe Beyler <jean.christophe.beyler@intel.com>
Signed-off-by: Olivier Come <olivier.come@intel.com>
Signed-off-by: Udayan Banerji <udayan.banerji@intel.com>
10 years agoMerge "x86_64: Clean-up after cmp-long fix"
Ian Rogers [Wed, 9 Jul 2014 07:22:15 +0000 (07:22 +0000)]
Merge "x86_64: Clean-up after cmp-long fix"

10 years agox86_64: Clean-up after cmp-long fix
Serguei Katkov [Tue, 24 Jun 2014 06:23:17 +0000 (13:23 +0700)]
x86_64: Clean-up after cmp-long fix

The patch adresses the coments from review done by Ian Rogers.
Clean-up of assembler.

Change-Id: I9dbb350dfc6645f8a63d624b2b785233529459a9
Signed-off-by: Serguei Katkov <serguei.i.katkov@intel.com>
10 years agoMerge "Clean-up call_x86.cc"
Ian Rogers [Wed, 9 Jul 2014 07:15:44 +0000 (07:15 +0000)]
Merge "Clean-up call_x86.cc"

10 years agoClean-up call_x86.cc
Serguei Katkov [Fri, 4 Jul 2014 20:09:32 +0000 (03:09 +0700)]
Clean-up call_x86.cc

Also adds some DCHECKs and fixes for the bugs found by them.

Change-Id: I455bbfe2c6018590cf491880cd9273edbe39c4c7
Signed-off-by: Serguei Katkov <serguei.i.katkov@intel.com>
10 years agoMerge "ART: Fix FP promotion"
Andreas Gampe [Wed, 9 Jul 2014 05:29:07 +0000 (05:29 +0000)]
Merge "ART: Fix FP promotion"

10 years agoART: Fix FP promotion
Andreas Gampe [Wed, 9 Jul 2014 04:10:55 +0000 (21:10 -0700)]
ART: Fix FP promotion

A previous CL changed != by mistake to ==, causing incorrect
promotion results for ARM32.

Change-Id: I62572e3e86d38a55be7043196027563735010b30

10 years agoMerge "Make dex2oat heap size product configurable [art]"
Brian Carlstrom [Wed, 9 Jul 2014 04:07:52 +0000 (04:07 +0000)]
Merge "Make dex2oat heap size product configurable [art]"

10 years agoMerge "Only allow instance-of to improve knowledge of a type for downcasts."
Ian Rogers [Wed, 9 Jul 2014 00:37:32 +0000 (00:37 +0000)]
Merge "Only allow instance-of to improve knowledge of a type for downcasts."

10 years agoOnly allow instance-of to improve knowledge of a type for downcasts.
Ian Rogers [Tue, 8 Jul 2014 06:53:08 +0000 (23:53 -0700)]
Only allow instance-of to improve knowledge of a type for downcasts.

Previous "not upcast" test could improve a type to an impossible type that
following a merge back with the original register would lead to conflict
(and subsequent verifier errors).
Modify UpdateRegisters so that the work line will be updated if merging
causes changes in the fall-through case.

Bug: 15808277
Issue: https://code.google.com/p/android/issues/detail?id=72093
Change-Id: Ib16cae8506246177e902825af036d5a397ad0dac

10 years agoam 09341a57: Merge "ART: Key-Value Store in Oat header"
Andreas Gampe [Tue, 8 Jul 2014 19:29:32 +0000 (19:29 +0000)]
am 09341a57: Merge "ART: Key-Value Store in Oat header"

* commit '09341a57b143daffade4e04623b2daea7235b73e':
  ART: Key-Value Store in Oat header

10 years agoam b63727cd: Merge "ART: Update Monitor::Wait so it releases monitor_lock_ before...
Andreas Gampe [Tue, 8 Jul 2014 19:23:50 +0000 (19:23 +0000)]
am b63727cd: Merge "ART: Update Monitor::Wait so it releases monitor_lock_ before throwing an exception"

* commit 'b63727cded6674db4768d49ef2a0833f773c8e5a':
  ART: Update Monitor::Wait so it releases monitor_lock_ before throwing an exception

10 years agoMerge "ART: Key-Value Store in Oat header"
Andreas Gampe [Tue, 8 Jul 2014 19:16:24 +0000 (19:16 +0000)]
Merge "ART: Key-Value Store in Oat header"

10 years agoam 1f3a9465: Merge "Remove Dbg::VisitRoots()."
Hiroshi Yamauchi [Tue, 8 Jul 2014 19:18:08 +0000 (19:18 +0000)]
am 1f3a9465: Merge "Remove Dbg::VisitRoots()."

* commit '1f3a9465aa91163e9f34404bda05c0c067f91267':
  Remove Dbg::VisitRoots().

10 years agoART: Key-Value Store in Oat header
Andreas Gampe [Thu, 26 Jun 2014 23:11:07 +0000 (16:11 -0700)]
ART: Key-Value Store in Oat header

Allows the storage of string-string pairs in the oat header. The
first significant use of this is storing the implicit-check flags,
so that an oat file can be rejected if it doesn't agree with the
current runtime.

Bump the oat version as the header structure changes.

Change-Id: I15a1c16886e6b8fa7b881c918c19c1efa5c7c00f

10 years agoMake dex2oat heap size product configurable [art]
Brian Carlstrom [Tue, 8 Jul 2014 17:34:02 +0000 (10:34 -0700)]
Make dex2oat heap size product configurable [art]

Bug: 15919420
Change-Id: I1b4f3256f6352b2d3e268991406def9e8efab945

10 years agoam e8a30f37: Merge "Fix some style nitpicks"
Brian Carlstrom [Tue, 8 Jul 2014 17:24:41 +0000 (17:24 +0000)]
am e8a30f37: Merge "Fix some style nitpicks"

* commit 'e8a30f37bf1530a80a7df17692dbe7a68764ac30':
  Fix some style nitpicks

10 years agoAdds PGO_GEN and PGO_USE for libart and libart-compiler.
Dehao Chen [Tue, 8 Jul 2014 17:00:56 +0000 (10:00 -0700)]
Adds PGO_GEN and PGO_USE for libart and libart-compiler.

PGO_GEN=device_path is used to build an instrumented binary. The profile will be stored in the specified path in device.
PGO_USE=host_path is used to build an PGO-optimized binary. The profile should be pre-stored in the specified path in host.

Bug: 16153819
Change-Id: Ib56f8707df009f290608ca66f669db06e65815c1

10 years agoam 50dffeee: Merge "Fix local reference leaks in debugger and use a cache."
Mathieu Chartier [Tue, 8 Jul 2014 17:00:01 +0000 (17:00 +0000)]
am 50dffeee: Merge "Fix local reference leaks in debugger and use a cache."

* commit '50dffeee9c8f7d3f396ffde30bd6b733e1af72d3':
  Fix local reference leaks in debugger and use a cache.

10 years agoam c4c601b6: Merge "Add kIntrinsicIsStatic flag for System.arraycopy()."
Vladimir Marko [Tue, 8 Jul 2014 16:49:59 +0000 (16:49 +0000)]
am c4c601b6: Merge "Add kIntrinsicIsStatic flag for System.arraycopy()."

* commit 'c4c601b6dbe5e1a7321d663b36a531a87f21e931':
  Add kIntrinsicIsStatic flag for System.arraycopy().

10 years agoam f55159c1: Merge "Fix style issue."
Vladimir Marko [Tue, 8 Jul 2014 16:30:43 +0000 (16:30 +0000)]
am f55159c1: Merge "Fix style issue."

* commit 'f55159c145e8b07be1dcafc949afda7e6a2f41c5':
  Fix style issue.

10 years agoam 74d8348c: Merge "Check invoke type for intrinsic method invokes."
Vladimir Marko [Tue, 8 Jul 2014 16:22:59 +0000 (16:22 +0000)]
am 74d8348c: Merge "Check invoke type for intrinsic method invokes."

* commit '74d8348cfd7100fd6bd06d00dce3110a4545c4f8':
  Check invoke type for intrinsic method invokes.

10 years agoam 751dee37: Merge "BaseMutex::IsExclusiveHeld should only be called on self."
Ian Rogers [Tue, 8 Jul 2014 10:21:21 +0000 (10:21 +0000)]
am 751dee37: Merge "BaseMutex::IsExclusiveHeld should only be called on self."

* commit '751dee376dcd972af996106a4c32ab4964c1f867':
  BaseMutex::IsExclusiveHeld should only be called on self.

10 years agoam a3ed7f87: Merge "JNI dlsym lookup fixes."
Ian Rogers [Tue, 8 Jul 2014 10:21:20 +0000 (10:21 +0000)]
am a3ed7f87: Merge "JNI dlsym lookup fixes."

* commit 'a3ed7f874710bddd51487b331e7f288806c36307':
  JNI dlsym lookup fixes.

10 years agoam e60658e8: Merge "Enable compiler testing for ARM64 and x86-64."
Ian Rogers [Tue, 8 Jul 2014 10:21:19 +0000 (10:21 +0000)]
am e60658e8: Merge "Enable compiler testing for ARM64 and x86-64."

* commit 'e60658e8d191c6c7558079b2bd7eed4c6c53e9d9':
  Enable compiler testing for ARM64 and x86-64.

10 years agoam 464ef7a7: Merge "ART: Intrinsic implementation for java.lang.System.arraycopy."
Ian Rogers [Tue, 8 Jul 2014 10:21:18 +0000 (10:21 +0000)]
am 464ef7a7: Merge "ART: Intrinsic implementation for java.lang.System.arraycopy."

* commit '464ef7a79613d41a3d7ef86e2704db306b0aa61d':
  ART: Intrinsic implementation for java.lang.System.arraycopy.

10 years agoam a1d1781e: Merge "Fix dex file dependencies for oat tests."
Ian Rogers [Tue, 8 Jul 2014 02:24:50 +0000 (02:24 +0000)]
am a1d1781e: Merge "Fix dex file dependencies for oat tests."

* commit 'a1d1781e29098e4d0d154bd3d2e8ae21b0b20b0f':
  Fix dex file dependencies for oat tests.

10 years agoMerge "Whitelist another exception during dex2oat resolving."
Brian Carlstrom [Wed, 9 Jul 2014 05:14:21 +0000 (05:14 +0000)]
Merge "Whitelist another exception during dex2oat resolving."

10 years agoWhitelist another exception during dex2oat resolving.
Brian Carlstrom [Wed, 9 Jul 2014 05:01:08 +0000 (22:01 -0700)]
Whitelist another exception during dex2oat resolving.

Bug: 15936401
Bug: 16162780
Change-Id: I7389edc8cdacd5e3c2cc7d86bbd56e8c503c34b0

10 years agoam cecec712: Merge "Add patchoat tool to Art."
Brian Carlstrom [Mon, 7 Jul 2014 22:50:45 +0000 (22:50 +0000)]
am cecec712: Merge "Add patchoat tool to Art."

* commit 'cecec712e1e05aab1fe3469077016320b7bf9583':
  Add patchoat tool to Art.

10 years agoam ae2efea4: Merge "ART: Add HADDPS/HADDPD/SHUFPS/SHUFPD instruction generation"
Ian Rogers [Mon, 7 Jul 2014 18:27:01 +0000 (18:27 +0000)]
am ae2efea4: Merge "ART: Add HADDPS/HADDPD/SHUFPS/SHUFPD instruction generation"

* commit 'ae2efea4582df773f80be274bdc754f732b07df3':
  ART: Add HADDPS/HADDPD/SHUFPS/SHUFPD instruction generation

10 years agoMerge "Remove Dbg::VisitRoots()."
Hiroshi Yamauchi [Tue, 8 Jul 2014 19:10:46 +0000 (19:10 +0000)]
Merge "Remove Dbg::VisitRoots()."

10 years agoRemove Dbg::VisitRoots().
Hiroshi Yamauchi [Mon, 7 Jul 2014 20:07:08 +0000 (13:07 -0700)]
Remove Dbg::VisitRoots().

We replace the GC strong roots with JNI.

jdwp_test passes.

Bug: 12687968
Change-Id: I841f1aaa5dffa784ca25953a251600f70df273b2

10 years agoMerge "Fix local reference leaks in debugger and use a cache."
Mathieu Chartier [Tue, 8 Jul 2014 16:51:57 +0000 (16:51 +0000)]
Merge "Fix local reference leaks in debugger and use a cache."

10 years agoFix local reference leaks in debugger and use a cache.
Mathieu Chartier [Fri, 27 Jun 2014 17:20:14 +0000 (10:20 -0700)]
Fix local reference leaks in debugger and use a cache.

Changed alloc record stack trace element to use jmethodID instead of
JNI weak global references. Added code to delete the local ref
created in AllocRecord::SetType.

Bug: 15886342
External bug: https://code.google.com/p/android/issues/detail?id=72330

Change-Id: Id18e765820baad02246768dc9d633aada60f4fed

10 years agoMerge "JNI dlsym lookup fixes."
Ian Rogers [Tue, 8 Jul 2014 06:04:28 +0000 (06:04 +0000)]
Merge "JNI dlsym lookup fixes."

10 years agoJNI dlsym lookup fixes.
Ian Rogers [Tue, 8 Jul 2014 04:44:06 +0000 (21:44 -0700)]
JNI dlsym lookup fixes.

Thread* self is passed on all architectures apart from ARM and ARM64.
On x86 restore ebx correctly. Pass self in correct register on x86-64.
Ensure methods are compiled in jni_compiler_test even if the generic JNI
trampoline is present.

Change-Id: If5fdb1de97b78ac5a5cf8d0915c5b82311f23eb9

10 years agoMerge "ART: Intrinsic implementation for java.lang.System.arraycopy."
Ian Rogers [Tue, 8 Jul 2014 05:29:19 +0000 (05:29 +0000)]
Merge "ART: Intrinsic implementation for java.lang.System.arraycopy."

10 years agoART: Intrinsic implementation for java.lang.System.arraycopy.
DaniilSokolov [Wed, 25 Jun 2014 00:34:00 +0000 (17:34 -0700)]
ART: Intrinsic implementation for java.lang.System.arraycopy.

Implements intrinsic for  java.lang.System.arraycopy(char[], int, char[], int, int) -
this method is internal to android class libraries and used in such classes as StringBuffer and
StringBuilder. It is not possible to call it from application code. The intrinsic for
this method is implemented as inline method (assembly code is generated manually).

The intrinsic is x86 32 bit only.

Change-Id: Id1b1e0a20d5f6d5f5ebfe1fdc2447b6d8a515432
Signed-off-by: Daniil Sokolov <daniil.y.sokolov@intel.com>
10 years agoMerge "Fix dex file dependencies for oat tests."
Ian Rogers [Tue, 8 Jul 2014 02:15:36 +0000 (02:15 +0000)]
Merge "Fix dex file dependencies for oat tests."

10 years agoFix dex file dependencies for oat tests.
Ian Rogers [Mon, 7 Jul 2014 23:05:18 +0000 (16:05 -0700)]
Fix dex file dependencies for oat tests.

The initial prerequisit used as an argument to "cp" wasn't set causing dex2oat
to attempt to compile dex2oat. Make the setting of host and target dex
dependencies more explicit in build-art-test-dex and update the test rules
appropriately.

Change-Id: I4f591f817537043bcb0328c7623fe7e2f0830b60

10 years agoMerge "Add patchoat tool to Art."
Brian Carlstrom [Mon, 7 Jul 2014 22:41:10 +0000 (22:41 +0000)]
Merge "Add patchoat tool to Art."

10 years agoAdd patchoat tool to Art.
Alex Light [Thu, 12 Jun 2014 18:26:29 +0000 (11:26 -0700)]
Add patchoat tool to Art.

Add a new executable called patchoat to art. This tool takes already
compiled images and oat files and changes their base address, acting as
a cheap form of relocation.

Add a --include-patch-information flag to dex2oat and code to add
required patch information to oat files created with the quick compiler.

Bug: 15358152

Change-Id: Ie0c580db45bb14ec180deb84930def6c3628d97d

10 years agoMerge "ART: Add HADDPS/HADDPD/SHUFPS/SHUFPD instruction generation"
Ian Rogers [Mon, 7 Jul 2014 18:18:03 +0000 (18:18 +0000)]
Merge "ART: Add HADDPS/HADDPD/SHUFPS/SHUFPD instruction generation"

10 years agoam 0da09a02: Merge "Only allow whitelisted exceptions during dex2oat resolving."
Mathieu Chartier [Mon, 7 Jul 2014 17:26:25 +0000 (17:26 +0000)]
am 0da09a02: Merge "Only allow whitelisted exceptions during dex2oat resolving."

* commit '0da09a026fb6c612e659dc782312987b4515f472':
  Only allow whitelisted exceptions during dex2oat resolving.

10 years agoam fbf156c9: Merge "Aarch64: fix bug and enable register promotion."
Andreas Gampe [Mon, 7 Jul 2014 16:01:01 +0000 (16:01 +0000)]
am fbf156c9: Merge "Aarch64: fix bug and enable register promotion."

* commit 'fbf156c9394e777385ae2661e673a4c783dfd836':
  Aarch64: fix bug and enable register promotion.

10 years agoam 0107273a: Merge "Aarch64: fix references handling in Load*Indexed."
Andreas Gampe [Mon, 7 Jul 2014 15:46:03 +0000 (15:46 +0000)]
am 0107273a: Merge "Aarch64: fix references handling in Load*Indexed."

* commit '0107273ae05d4624495bbaae62b9194f8ae6685b':
  Aarch64: fix references handling in Load*Indexed.

10 years agoam f22af67d: Merge "Fix missing dependency in new X86 instruction"
Andreas Gampe [Sun, 6 Jul 2014 18:11:02 +0000 (18:11 +0000)]
am f22af67d: Merge "Fix missing dependency in new X86 instruction"

* commit 'f22af67db2a6e7221dd15320d1a7688f1b423668':
  Fix missing dependency in new X86 instruction

10 years agoam 268e5630: Merge "x86_64: Fix InstanceofFinal"
Andreas Gampe [Sun, 6 Jul 2014 17:43:35 +0000 (17:43 +0000)]
am 268e5630: Merge "x86_64: Fix InstanceofFinal"

* commit '268e5630626b5227d1d055c42e4934c4a334fbfe':
  x86_64: Fix InstanceofFinal

10 years agoMerge "BaseMutex::IsExclusiveHeld should only be called on self."
Ian Rogers [Tue, 8 Jul 2014 06:04:43 +0000 (06:04 +0000)]
Merge "BaseMutex::IsExclusiveHeld should only be called on self."

10 years agoBaseMutex::IsExclusiveHeld should only be called on self.
Ian Rogers [Tue, 8 Jul 2014 04:38:36 +0000 (21:38 -0700)]
BaseMutex::IsExclusiveHeld should only be called on self.

Fix issue in Thread::DumpState of lock dumping calling IsExclusiveHeld on a
thread that isn't self causing intermittent crashes of ThreadStress oat test.

Bug: 15446488
Change-Id: I86924397a4e21ce10a95ea2a737d7bfbcb8ffe28

10 years agoMerge "Enable compiler testing for ARM64 and x86-64."
Ian Rogers [Tue, 8 Jul 2014 05:51:03 +0000 (05:51 +0000)]
Merge "Enable compiler testing for ARM64 and x86-64."

10 years agoEnable compiler testing for ARM64 and x86-64.
Ian Rogers [Tue, 8 Jul 2014 04:37:04 +0000 (21:37 -0700)]
Enable compiler testing for ARM64 and x86-64.

Change-Id: Ica1e43b3cf07de8d4ae2b69f7a8b35205fe32a83

10 years agoam 4c0ad36c: Merge "AArch64: Enable Inlining."
Andreas Gampe [Fri, 4 Jul 2014 23:29:15 +0000 (23:29 +0000)]
am 4c0ad36c: Merge "AArch64: Enable Inlining."

* commit '4c0ad36c4cf4a88821b501cc76239456cd32e10b':
  AArch64: Enable Inlining.

10 years agoam 827477ad: Merge "Aarch64: fix encoding map for kA64Fmov2xS."
Andreas Gampe [Fri, 4 Jul 2014 18:34:18 +0000 (18:34 +0000)]
am 827477ad: Merge "Aarch64: fix encoding map for kA64Fmov2xS."

* commit '827477ad5ff20d0b2ca70828f3f56dea6fa8dddd':
  Aarch64: fix encoding map for kA64Fmov2xS.

10 years agoam 13f89cb9: Merge "Add make rule to debug interpreter-only mode"
Sebastien Hertz [Fri, 4 Jul 2014 09:29:33 +0000 (09:29 +0000)]
am 13f89cb9: Merge "Add make rule to debug interpreter-only mode"

* commit '13f89cb9930ea799c21559020da43c3845536da5':
  Add make rule to debug interpreter-only mode

10 years agoam dda2f058: Merge "Do not attempt to compile on architectures we do not support."
Nicolas Geoffray [Fri, 4 Jul 2014 09:24:00 +0000 (09:24 +0000)]
am dda2f058: Merge "Do not attempt to compile on architectures we do not support."

* commit 'dda2f058db00deb1074ac44380c4637fc4417a0f':
  Do not attempt to compile on architectures we do not support.

10 years agoam d83ee1e2: Merge "More checks in JNI RegisterNatives"
Sebastien Hertz [Fri, 4 Jul 2014 09:23:59 +0000 (09:23 +0000)]
am d83ee1e2: Merge "More checks in JNI RegisterNatives"

* commit 'd83ee1e26f68409f904c3cf0d582c18738e1f39b':
  More checks in JNI RegisterNatives

10 years agoam ef505256: Merge "x86_64: Turn on promotion optimization"
Andreas Gampe [Fri, 4 Jul 2014 09:22:47 +0000 (09:22 +0000)]
am ef505256: Merge "x86_64: Turn on promotion optimization"

* commit 'ef505256e530951033a705e84a0682e7adcedf30':
  x86_64: Turn on promotion optimization

10 years agoMerge "Workaround for invalid monitor-exit catch ranges."
Vladimir Marko [Wed, 9 Jul 2014 08:39:39 +0000 (08:39 +0000)]
Merge "Workaround for invalid monitor-exit catch ranges."

10 years agoWorkaround for invalid monitor-exit catch ranges.
Vladimir Marko [Tue, 8 Jul 2014 17:06:45 +0000 (18:06 +0100)]
Workaround for invalid monitor-exit catch ranges.

Avoid bogus exception edges from monitor-exit to a
catch handler that does exactly the same monitor-exit.

Bug: 15745363
Change-Id: I2b8b44b313c470557714744bdfb7beaef2cd2246

10 years agoMerge "Add kIntrinsicIsStatic flag for System.arraycopy()."
Vladimir Marko [Tue, 8 Jul 2014 16:42:47 +0000 (16:42 +0000)]
Merge "Add kIntrinsicIsStatic flag for System.arraycopy()."

10 years agoAdd kIntrinsicIsStatic flag for System.arraycopy().
Vladimir Marko [Tue, 8 Jul 2014 16:34:04 +0000 (17:34 +0100)]
Add kIntrinsicIsStatic flag for System.arraycopy().

Change-Id: I40ffb07e62474f418eabb7361f129c633022666c

10 years agoam 05b8893f: Merge "x86_64: Fix intrinsics"
Andreas Gampe [Fri, 4 Jul 2014 01:48:37 +0000 (01:48 +0000)]
am 05b8893f: Merge "x86_64: Fix intrinsics"

* commit '05b8893fedf121d6a8813d40647bad8456518c58':
  x86_64: Fix intrinsics

10 years agoam 03cbed6d: Merge "AArch64: Add few more inline functions"
Andreas Gampe [Fri, 4 Jul 2014 00:52:53 +0000 (00:52 +0000)]
am 03cbed6d: Merge "AArch64: Add few more inline functions"

* commit '03cbed6dfbd2750a243363ee4033c425d58cac6e':
  AArch64: Add few more inline functions

10 years agoam c72966a2: Merge "ART: FF-opcodes are target-specific"
Andreas Gampe [Thu, 3 Jul 2014 23:33:48 +0000 (23:33 +0000)]
am c72966a2: Merge "ART: FF-opcodes are target-specific"

* commit 'c72966a25c205a3914164f586e44e586e5715468':
  ART: FF-opcodes are target-specific

10 years agoam ca8ff32b: Merge "x86_64: TargetReg update for x86"
Andreas Gampe [Thu, 3 Jul 2014 21:54:54 +0000 (21:54 +0000)]
am ca8ff32b: Merge "x86_64: TargetReg update for x86"

* commit 'ca8ff32bbb1f034b3b1f25de1fe20a9015bc87ec':
  x86_64: TargetReg update for x86

10 years agoam 3ee86bcb: Merge "Load 64 bit constant into GPR by single instruction for 64bit...
Andreas Gampe [Thu, 3 Jul 2014 20:58:29 +0000 (20:58 +0000)]
am 3ee86bcb: Merge "Load 64 bit constant into GPR by single instruction for 64bit mode"

* commit '3ee86bcbbc29f17b0243954a52dcda96b09411e0':
  Load 64 bit constant into GPR by single instruction for 64bit mode

10 years agoam aa079560: Merge "Register promotion support for 64-bit targets"
Andreas Gampe [Thu, 3 Jul 2014 20:19:18 +0000 (20:19 +0000)]
am aa079560: Merge "Register promotion support for 64-bit targets"

* commit 'aa079560f65a89ec83591f61ae3a39341f00509e':
  Register promotion support for 64-bit targets

10 years agoam 2bc6813a: Merge "Fix build-art-target and build-art-host rules."
Nicolas Geoffray [Thu, 3 Jul 2014 09:44:41 +0000 (09:44 +0000)]
am 2bc6813a: Merge "Fix build-art-target and build-art-host rules."

* commit '2bc6813a990894b88a392a3cded13ddff2f14d04':
  Fix build-art-target and build-art-host rules.

10 years agoMerge "x86_64: Turn on promotion optimization"
Andreas Gampe [Fri, 4 Jul 2014 05:36:52 +0000 (05:36 +0000)]
Merge "x86_64: Turn on promotion optimization"