OSDN Git Service

android-x86/art.git
10 years agoam 62526c37: Merge "Move thread state to art::Atomic."
Ian Rogers [Sat, 12 Jul 2014 01:42:08 +0000 (01:42 +0000)]
am 62526c37: Merge "Move thread state to art::Atomic."

* commit '62526c377fe5242a723f154a373eccf5b9db416d':
  Move thread state to art::Atomic.

10 years agoam 43b6fe02: Merge "Move another field away from android_atomic_cas."
Ian Rogers [Sat, 12 Jul 2014 01:42:07 +0000 (01:42 +0000)]
am 43b6fe02: Merge "Move another field away from android_atomic_cas."

* commit '43b6fe0270477cd47f8dd8b064d006961a44be54':
  Move another field away from android_atomic_cas.

10 years agoam 672f8367: Merge "Revert "Add implicit null and stack checks for x86""
Dave Allison [Sat, 12 Jul 2014 01:42:07 +0000 (01:42 +0000)]
am 672f8367: Merge "Revert "Add implicit null and stack checks for x86""

* commit '672f8367f74e5db7d26714cd6fa1a13fa2a6c59f':
  Revert "Add implicit null and stack checks for x86"

10 years agoam 4770a2e6: Merge "Remove legacy CAS implementations from mutex."
Ian Rogers [Sat, 12 Jul 2014 01:42:07 +0000 (01:42 +0000)]
am 4770a2e6: Merge "Remove legacy CAS implementations from mutex."

* commit '4770a2e6d56398a6b4398fcce14fea43394e0d1b':
  Remove legacy CAS implementations from mutex.

10 years agoam bcb3b290: Merge "Add notion of released vs empty pages to ROSAlloc."
Mathieu Chartier [Sat, 12 Jul 2014 01:42:06 +0000 (01:42 +0000)]
am bcb3b290: Merge "Add notion of released vs empty pages to ROSAlloc."

* commit 'bcb3b29095817ce8987d8310d4db87271f5114ad':
  Add notion of released vs empty pages to ROSAlloc.

10 years agoam 5de52242: Merge "Add implicit null and stack checks for x86"
Dave Allison [Sat, 12 Jul 2014 01:42:06 +0000 (01:42 +0000)]
am 5de52242: Merge "Add implicit null and stack checks for x86"

* commit '5de52242f3934f1604083d7215cdde1d0cc8ba7a':
  Add implicit null and stack checks for x86

10 years agoam 2929490d: Merge "Move card table away from android_atomic_cas."
Ian Rogers [Sat, 12 Jul 2014 01:42:06 +0000 (01:42 +0000)]
am 2929490d: Merge "Move card table away from android_atomic_cas."

* commit '2929490de9374c2a052cff4cf6957852ebf06d98':
  Move card table away from android_atomic_cas.

10 years agoam 5472edce: Merge "CW on Master: Propagate or throw exception when no class found...
Brian Carlstrom [Sat, 12 Jul 2014 01:42:06 +0000 (01:42 +0000)]
am 5472edce: Merge "CW on Master: Propagate or throw exception when no class found happens in interpreter."

* commit '5472edce3697721099ead9e16427e0e7ace90754':
  CW on Master: Propagate or throw exception when no class found happens in interpreter.

10 years agoam b288a5ad: Merge "Use the icu4c headers from the new location."
Elliott Hughes [Sat, 12 Jul 2014 01:42:05 +0000 (01:42 +0000)]
am b288a5ad: Merge "Use the icu4c headers from the new location."

* commit 'b288a5ad024f99d593aef55e352b46c1a2868af7':
  Use the icu4c headers from the new location.

10 years agoam 91db19b5: Merge "ART: Add simple tests for inlining of CAS"
Andreas Gampe [Sat, 12 Jul 2014 01:42:05 +0000 (01:42 +0000)]
am 91db19b5: Merge "ART: Add simple tests for inlining of CAS"

* commit '91db19b5f14e32878e0a70fa8d43f3412586b821':
  ART: Add simple tests for inlining of CAS

10 years agoam ef9b94cc: Merge "Add easy way to ensure the next allocation does GC."
Mathieu Chartier [Sat, 12 Jul 2014 01:42:05 +0000 (01:42 +0000)]
am ef9b94cc: Merge "Add easy way to ensure the next allocation does GC."

* commit 'ef9b94cc83595bc0c95b0edd5131187998919c7a':
  Add easy way to ensure the next allocation does GC.

10 years agoam b796d1bf: Merge "Remove incorrect check for sa_mask in signal chaining"
Dave Allison [Sat, 12 Jul 2014 01:42:04 +0000 (01:42 +0000)]
am b796d1bf: Merge "Remove incorrect check for sa_mask in signal chaining"

* commit 'b796d1bfac8cfaf4dc98f411ae6157f964d4a325':
  Remove incorrect check for sa_mask in signal chaining

10 years agoam c21dc06a: Merge "ART: Check slow_paths_.Size() every time"
Ian Rogers [Sat, 12 Jul 2014 01:42:04 +0000 (01:42 +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 [Sat, 12 Jul 2014 01:42:04 +0000 (01:42 +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 [Sat, 12 Jul 2014 01:42:04 +0000 (01:42 +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 [Sat, 12 Jul 2014 01:42:03 +0000 (01:42 +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 [Sat, 12 Jul 2014 01:42:03 +0000 (01:42 +0000)]
am 32710dd4: Merge "x86_64: enable Peek and Poke intrinsics"

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

10 years agoam 62f28f94: Merge "Fix a compile assert name with inverted meaning."
Vladimir Marko [Sat, 12 Jul 2014 01:42:03 +0000 (01:42 +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 [Sat, 12 Jul 2014 01:42:03 +0000 (01:42 +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 [Sat, 12 Jul 2014 01:42:02 +0000 (01:42 +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 [Sat, 12 Jul 2014 01:41:59 +0000 (01:41 +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 [Sat, 12 Jul 2014 01:41:58 +0000 (01:41 +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 [Sat, 12 Jul 2014 01:41:58 +0000 (01:41 +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 [Sat, 12 Jul 2014 01:41:58 +0000 (01:41 +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 [Sat, 12 Jul 2014 01:41:58 +0000 (01:41 +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 [Sat, 12 Jul 2014 01:41:57 +0000 (01:41 +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 [Sat, 12 Jul 2014 01:41:57 +0000 (01:41 +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 [Sat, 12 Jul 2014 01:41:57 +0000 (01:41 +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 [Sat, 12 Jul 2014 01:41:56 +0000 (01:41 +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 agoam c16fc5fc: am 09341a57: Merge "ART: Key-Value Store in Oat header"
Andreas Gampe [Fri, 11 Jul 2014 17:29:06 +0000 (17:29 +0000)]
am c16fc5fc: am 09341a57: Merge "ART: Key-Value Store in Oat header"

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

10 years agoam 4c5e832c: am b63727cd: Merge "ART: Update Monitor::Wait so it releases monitor_loc...
Andreas Gampe [Fri, 11 Jul 2014 17:29:05 +0000 (17:29 +0000)]
am 4c5e832c: am b63727cd: Merge "ART: Update Monitor::Wait so it releases monitor_lock_ before throwing an exception"

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

10 years agoam 5f8d472a: am 1f3a9465: Merge "Remove Dbg::VisitRoots()."
Hiroshi Yamauchi [Fri, 11 Jul 2014 17:29:04 +0000 (17:29 +0000)]
am 5f8d472a: am 1f3a9465: Merge "Remove Dbg::VisitRoots()."

* commit '5f8d472a1958328489693fd07d82c4bf550d9cc3':
  Remove Dbg::VisitRoots().

10 years agoam c0d6dd51: am e8a30f37: Merge "Fix some style nitpicks"
Brian Carlstrom [Fri, 11 Jul 2014 16:19:22 +0000 (16:19 +0000)]
am c0d6dd51: am e8a30f37: Merge "Fix some style nitpicks"

* commit 'c0d6dd512722ae36242924bcdc8fcde58dd5c959':
  Fix some style nitpicks

10 years agoam c6c0a402: am 50dffeee: Merge "Fix local reference leaks in debugger and use a...
Mathieu Chartier [Fri, 11 Jul 2014 16:19:11 +0000 (16:19 +0000)]
am c6c0a402: am 50dffeee: Merge "Fix local reference leaks in debugger and use a cache."

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

10 years agoam aac7b7dd: am c4c601b6: Merge "Add kIntrinsicIsStatic flag for System.arraycopy()."
Vladimir Marko [Fri, 11 Jul 2014 16:19:10 +0000 (16:19 +0000)]
am aac7b7dd: am c4c601b6: Merge "Add kIntrinsicIsStatic flag for System.arraycopy()."

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

10 years agoam a5690945: am f55159c1: Merge "Fix style issue."
Vladimir Marko [Fri, 11 Jul 2014 16:19:04 +0000 (16:19 +0000)]
am a5690945: am f55159c1: Merge "Fix style issue."

* commit 'a569094513c296f13cff1031b9f807fbc6ec4cfd':
  Fix style issue.

10 years agoam db123b00: am 74d8348c: Merge "Check invoke type for intrinsic method invokes."
Vladimir Marko [Fri, 11 Jul 2014 16:19:03 +0000 (16:19 +0000)]
am db123b00: am 74d8348c: Merge "Check invoke type for intrinsic method invokes."

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

10 years agoam 0c8537e5: am 751dee37: Merge "BaseMutex::IsExclusiveHeld should only be called...
Ian Rogers [Fri, 11 Jul 2014 16:18:59 +0000 (16:18 +0000)]
am 0c8537e5: am 751dee37: Merge "BaseMutex::IsExclusiveHeld should only be called on self."

* commit '0c8537e59096b5e8034dd3384af78e182b30ebc1':
  BaseMutex::IsExclusiveHeld should only be called on self.

10 years agoam 6939ba7f: am a3ed7f87: Merge "JNI dlsym lookup fixes."
Ian Rogers [Fri, 11 Jul 2014 16:18:58 +0000 (16:18 +0000)]
am 6939ba7f: am a3ed7f87: Merge "JNI dlsym lookup fixes."

* commit '6939ba7f2b553348c4ed3b5199fc66a79970ad7b':
  JNI dlsym lookup fixes.

10 years agoam d343c221: am e60658e8: Merge "Enable compiler testing for ARM64 and x86-64."
Ian Rogers [Fri, 11 Jul 2014 16:18:58 +0000 (16:18 +0000)]
am d343c221: am e60658e8: Merge "Enable compiler testing for ARM64 and x86-64."

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

10 years agoam 23b39cec: am 464ef7a7: Merge "ART: Intrinsic implementation for java.lang.System...
Ian Rogers [Fri, 11 Jul 2014 16:18:57 +0000 (16:18 +0000)]
am 23b39cec: am 464ef7a7: Merge "ART: Intrinsic implementation for java.lang.System.arraycopy."

* commit '23b39cec938869dc7c17cd0e9820c28cc425a7dc':
  ART: Intrinsic implementation for java.lang.System.arraycopy.

10 years agoam 53dbd90d: am a1d1781e: Merge "Fix dex file dependencies for oat tests."
Ian Rogers [Fri, 11 Jul 2014 16:18:48 +0000 (16:18 +0000)]
am 53dbd90d: am a1d1781e: Merge "Fix dex file dependencies for oat tests."

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

10 years agoMerge "Add implicit null and stack checks for x86"
Dave Allison [Thu, 10 Jul 2014 00:16:22 +0000 (00:16 +0000)]
Merge "Add implicit null and stack checks for x86"

10 years agoAdd implicit null and stack checks for x86
Dave Allison [Thu, 29 May 2014 15:20:04 +0000 (08:20 -0700)]
Add implicit null and stack checks for x86

This adds compiler and runtime changes for x86
implicit checks.  32 bit only.

Both host and target are supported.
By default, on the host, the implicit checks are null pointer and
stack overflow.  Suspend is implemented but not switched on.

Change-Id: I88a609e98d6bf32f283eaa4e6ec8bbf8dc1df78a

10 years agoMerge "Remove legacy CAS implementations from mutex."
Ian Rogers [Thu, 10 Jul 2014 01:37:50 +0000 (01:37 +0000)]
Merge "Remove legacy CAS implementations from mutex."

10 years agoRemove legacy CAS implementations from mutex.
Ian Rogers [Wed, 9 Jul 2014 06:50:26 +0000 (23:50 -0700)]
Remove legacy CAS implementations from mutex.

Removes the use of __sync_bool_compare_and_swap and android_atomic_cas and uses
intention revealing atomic operations from art::Atomic (which will eventually
give way to std::atomic).

Change-Id: Iea44e1923f6706ec04b5459fe25427282c189a7e

10 years agoMerge "Move thread state to art::Atomic."
Ian Rogers [Thu, 10 Jul 2014 04:38:36 +0000 (04:38 +0000)]
Merge "Move thread state to art::Atomic."

10 years agoMove thread state to art::Atomic.
Ian Rogers [Thu, 10 Jul 2014 04:12:06 +0000 (21:12 -0700)]
Move thread state to art::Atomic.

Leaves the CAS operations as relaxed although art::Atomic treats relaxed CAS
as a strong CAS when not compiling with clang.

Change-Id: I6d37c22173540d166b624385e52e4ad05e592adc

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 "Move another field away from android_atomic_cas."
Ian Rogers [Thu, 10 Jul 2014 03:36:51 +0000 (03:36 +0000)]
Merge "Move another field away from android_atomic_cas."

10 years agoMove another field away from android_atomic_cas.
Ian Rogers [Thu, 10 Jul 2014 01:00:50 +0000 (18:00 -0700)]
Move another field away from android_atomic_cas.

Change-Id: If63aa2811e06ec401a601286a3bacb62a0da96ad

10 years agoMerge "Move card table away from android_atomic_cas."
Ian Rogers [Thu, 10 Jul 2014 00:09:25 +0000 (00:09 +0000)]
Merge "Move card table away from android_atomic_cas."

10 years agoMove card table away from android_atomic_cas.
Ian Rogers [Wed, 9 Jul 2014 05:55:18 +0000 (22:55 -0700)]
Move card table away from android_atomic_cas.

For x86 use byte CAS operations for byte CAS.
Fix bug in ModifyCardsAtomic where CAS was 32-bit instead of 64-bit.

Change-Id: Ieb3fe695b4699750abf04642b0abe94103976817

10 years agoMerge "Add easy way to ensure the next allocation does GC."
Mathieu Chartier [Wed, 9 Jul 2014 22:10:01 +0000 (22:10 +0000)]
Merge "Add easy way to ensure the next allocation does GC."

10 years agoAdd easy way to ensure the next allocation does GC.
Mathieu Chartier [Wed, 9 Jul 2014 00:46:19 +0000 (17:46 -0700)]
Add easy way to ensure the next allocation does GC.

Added a class called ScopedHeapFill which changes the bytes allocated
counter to be equal to the growth limit. This causes the next
allocation to do a GC and possibly generate an OOM error. This is
useful for tests which need GC to happen at specific point.

Change-Id: Ibd8f3d5928b58534c5165ba7c296980002aa2c28

10 years agoMerge "Remove incorrect check for sa_mask in signal chaining"
Dave Allison [Wed, 9 Jul 2014 21:45:13 +0000 (21:45 +0000)]
Merge "Remove incorrect check for sa_mask in signal chaining"

10 years agoRemove incorrect check for sa_mask in signal chaining
Dave Allison [Wed, 9 Jul 2014 01:07:18 +0000 (18:07 -0700)]
Remove incorrect check for sa_mask in signal chaining

This removes an incorrect check using the sa_mask field of the
sigaction structure when chaining to a user's signal handler.
The check prevented a user's handler being called when sa_mask
was set.

Thanks to primiano@ for the excellent bug report.

Bug: 16005022
Change-Id: I0548003f4fc3b1889a6859091e603ead4a9b0607

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 "Revert "Add implicit null and stack checks for x86""
Dave Allison [Thu, 10 Jul 2014 01:55:25 +0000 (01:55 +0000)]
Merge "Revert "Add implicit null and stack checks for x86""

10 years agoRevert "Add implicit null and stack checks for x86"
Dave Allison [Thu, 10 Jul 2014 01:54:57 +0000 (01:54 +0000)]
Revert "Add implicit null and stack checks for x86"

It breaks cross compilation with x86_64.

This reverts commit 34e826ccc80dc1cf7c4c045de6b7f8360d504ccf.

Change-Id: I34ba07821fc0a022fda33a7ae21850957bbec5e7

10 years agoMerge "Add notion of released vs empty pages to ROSAlloc."
Mathieu Chartier [Thu, 10 Jul 2014 00:32:52 +0000 (00:32 +0000)]
Merge "Add notion of released vs empty pages to ROSAlloc."

10 years agoAdd notion of released vs empty pages to ROSAlloc.
Mathieu Chartier [Tue, 24 Jun 2014 21:48:59 +0000 (14:48 -0700)]
Add notion of released vs empty pages to ROSAlloc.

A notion of released vs empty pages helps get a more accurate view of
how much memory was released during heap trimming. Otherwise we get
that the same pages possibly get madvised multiple times without
getting dirtied.

Also enabled heap trimming of rosalloc spaces even when we care about
jank. This is safe to do since the trimming process only acquires
locks for short periods of time.

Dalvik PSS reduces from ~52M to ~50M after boot on N4.

Bug: 9969166

Change-Id: I4012e0a2554f413d18efe1a0371fe18d1edabaa9

10 years agoMerge "Use the icu4c headers from the new location."
Elliott Hughes [Wed, 9 Jul 2014 22:54:14 +0000 (22:54 +0000)]
Merge "Use the icu4c headers from the new location."

10 years agoUse the icu4c headers from the new location.
Elliott Hughes [Wed, 9 Jul 2014 22:31:20 +0000 (15:31 -0700)]
Use the icu4c headers from the new location.

Change-Id: I6ca56e8f9909bf3644a5f79f2d705547ddba6d03

10 years agoMerge "ART: Add simple tests for inlining of CAS"
Andreas Gampe [Wed, 9 Jul 2014 22:18:27 +0000 (22:18 +0000)]
Merge "ART: Add simple tests for inlining of CAS"

10 years agoART: Add simple tests for inlining of CAS
Andreas Gampe [Wed, 9 Jul 2014 04:33:47 +0000 (21:33 -0700)]
ART: Add simple tests for inlining of CAS

Add simple test cases for the inlining of CAS in the quick compiler to
run-test 082. The tests are not multi-threaded and will just establish
that the baseline behavior is correct. For extensive evaluation consider
tests available in libcore.

Change-Id: I9f463599e48ab7abc725769dda84758c9c6a76c2

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 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 "CW on Master: Propagate or throw exception when no class found happens in...
Brian Carlstrom [Wed, 9 Jul 2014 23:50:28 +0000 (23:50 +0000)]
Merge "CW on Master: Propagate or throw exception when no class found happens in interpreter."

10 years agoCW on Master: Propagate or throw exception when no class found happens in interpreter.
Sean Wan [Wed, 9 Jul 2014 19:08:29 +0000 (12:08 -0700)]
CW on Master: Propagate or throw exception when no class found happens in interpreter.

The old behavior is a check fail which causes zygote process crash.

This is particular a problem for CW in which webview is not used, and
this stops CW system start.

(cherry picked from commit 41a71f3db62e5bccb162a2b18ed3801e00ff6f87)

Change-Id: Iabe091ebe4bbdd86d931ac6c06abd089f1338d59

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.