OSDN Git Service

android-x86/art.git
9 years agoMerge "ART: Fix class-linker handling"
Andreas Gampe [Thu, 14 Aug 2014 15:42:07 +0000 (15:42 +0000)]
Merge "ART: Fix class-linker handling"

9 years agoART: Fix class-linker handling
Andreas Gampe [Thu, 14 Aug 2014 04:49:37 +0000 (21:49 -0700)]
ART: Fix class-linker handling

ResolveMethod did not account correctly for the mutual exclusivity
of direct and static methods. In such a case we threw a NoSuchMethodError,
while the correct behavior is to throw an IncompatibleClassChangeError.

Bug: 16956477

(cherry picked from commit b5d1efa0012d31f7c52c0a2e2b70c77c8708c885)

Change-Id: Id014affe0b8a43dbd75570b123b921d5853ab135

9 years agoMerge "ART: Tolerate shallow call stack in VMStack_getCallingClassLoader"
Andreas Gampe [Thu, 14 Aug 2014 05:23:05 +0000 (05:23 +0000)]
Merge "ART: Tolerate shallow call stack in VMStack_getCallingClassLoader"

9 years agoART: Tolerate shallow call stack in VMStack_getCallingClassLoader
Andreas Gampe [Tue, 12 Aug 2014 01:51:53 +0000 (18:51 -0700)]
ART: Tolerate shallow call stack in VMStack_getCallingClassLoader

When the call stack does not have the three methods we expect,
the visitor will return a nullptr value.

Add a test to JniTest (and refactor the test a little for code reuse).

Bug: 16867274

(cherry picked from commit 61bf6a1c80bf797af5d7911ff71fc367fdb36742)

Change-Id: I5fb8f91f372a41e0bc11ef9f70640834591afa53

9 years agoMerge "Use homogeneous space compaction for non low memory devices."
Mathieu Chartier [Thu, 14 Aug 2014 02:11:32 +0000 (02:11 +0000)]
Merge "Use homogeneous space compaction for non low memory devices."

9 years agoUse homogeneous space compaction for non low memory devices.
Mathieu Chartier [Thu, 14 Aug 2014 01:07:31 +0000 (18:07 -0700)]
Use homogeneous space compaction for non low memory devices.

Saves nearly as much memory without needing the foreground
transition.

TODO: Pass in these flags from AndroidRuntime.cpp.

Bug: 16401001
Change-Id: Iecad0cc0c04fdf9cabe6f9d7f87c761a94b4142c

9 years agoMerge "Ensure alternate signal stack is minimum size."
Ian Rogers [Thu, 14 Aug 2014 01:38:07 +0000 (01:38 +0000)]
Merge "Ensure alternate signal stack is minimum size."

9 years agoMerge "Move explicit GC after we are done initalizing all classes."
Mathieu Chartier [Thu, 14 Aug 2014 00:17:32 +0000 (00:17 +0000)]
Merge "Move explicit GC after we are done initalizing all classes."

9 years agoEnsure alternate signal stack is minimum size.
Ian Rogers [Wed, 13 Aug 2014 21:37:26 +0000 (14:37 -0700)]
Ensure alternate signal stack is minimum size.

On Mac a sigaltstack may need to be 32KB, setting it to 16KB causes
sigaltstack to fail.

Change-Id: I87f315ae2fb6be4db40a34b350ad5789ff76c113

9 years agoMerge "Added --gcstress and --gcverify shortcut flags to run-test"
Andreas Gampe [Thu, 14 Aug 2014 00:19:43 +0000 (00:19 +0000)]
Merge "Added --gcstress and --gcverify shortcut flags to run-test"

9 years agoMerge "Reduce stack usage for overflow checks"
Dave Allison [Thu, 14 Aug 2014 00:01:12 +0000 (00:01 +0000)]
Merge "Reduce stack usage for overflow checks"

9 years agoReduce stack usage for overflow checks
Dave Allison [Fri, 25 Jul 2014 23:15:27 +0000 (16:15 -0700)]
Reduce stack usage for overflow checks

This reduces the stack space reserved for overflow checks to 12K, split
into an 8K gap and a 4K protected region.  GC needs over 8K when running
in a stack overflow situation.

Also prevents signal runaway by detecting a signal inside code that
resulted from a signal handler invokation.  And adds a max signal count to
the SignalTest to prevent it running forever.

Also reduces the number of iterations for the InterfaceTest as this was
taking (almost) forever with the --trace option on run-test.

Bug: 15435566

Change-Id: Id4fd46f22d52d42a9eb431ca07948673e8fda694

9 years agoMerge "Use handle in one case that spans a gc-point."
Mingyao Yang [Wed, 13 Aug 2014 22:26:50 +0000 (22:26 +0000)]
Merge "Use handle in one case that spans a gc-point."

9 years agoUse handle in one case that spans a gc-point.
Mingyao Yang [Wed, 13 Aug 2014 21:51:03 +0000 (14:51 -0700)]
Use handle in one case that spans a gc-point.

Bug: 16689428
Change-Id: Ib209d2ca1e7024bffb2bc17c5b5899e231c0e2ca

9 years agoMerge "Revert "Revert "Remove GCC atomic workarounds."""
Dan Albert [Tue, 12 Aug 2014 21:42:23 +0000 (21:42 +0000)]
Merge "Revert "Revert "Remove GCC atomic workarounds."""

9 years agoMerge "Initialize art::Atomic's value to 0."
Dan Albert [Tue, 12 Aug 2014 21:13:11 +0000 (21:13 +0000)]
Merge "Initialize art::Atomic's value to 0."

9 years agoInitialize art::Atomic's value to 0.
Dan Albert [Tue, 12 Aug 2014 18:48:34 +0000 (11:48 -0700)]
Initialize art::Atomic's value to 0.

art::Mutex and art::ConditionVariable were DCHECKing that the value was
zero on entering the constructor without ever initializing the value.
Since 0 is a sensible default, make it the default for art::Atomic
rather than initializing for each use.

Bug: 16301104
Change-Id: I9c98b82c80670b7a6c53d46a08236bbed6a64f8f

9 years agoMerge "Execute an application even when dex2oat crashes."
Nicolas Geoffray [Wed, 13 Aug 2014 17:23:06 +0000 (17:23 +0000)]
Merge "Execute an application even when dex2oat crashes."

9 years agoExecute an application even when dex2oat crashes.
Nicolas Geoffray [Tue, 22 Jul 2014 09:48:00 +0000 (10:48 +0100)]
Execute an application even when dex2oat crashes.

Bug: 17000769

Change-Id: Iffeb582862a5e794b6c7364c7ec2368cfd0f2214

9 years agoMerge "Fix crash in VirtualMachine.AllThreads JDWP command"
Sebastien Hertz [Wed, 13 Aug 2014 08:50:00 +0000 (08:50 +0000)]
Merge "Fix crash in VirtualMachine.AllThreads JDWP command"

9 years agoFix crash in VirtualMachine.AllThreads JDWP command
Sebastien Hertz [Tue, 12 Aug 2014 07:09:37 +0000 (09:09 +0200)]
Fix crash in VirtualMachine.AllThreads JDWP command

When collecting all the started threads, we may encounter a thread in the
process of being started from Java code (Thread.start) in the threads list. The
crash occurs when we attempt to access the java.lang.Thread peer (calling
Thread::GetPeer) but the JNI global reference to it (Thread::jpeer) has not
been destroyed yet (which is verified with a check). This only happens when the
thread is starting up.

We now check the thread finished starting up before accessing the Java peer.
This also prevents from returning non-started threads in the reply.

Bug: 16660101

(cherry picked from commit a22d115711b5158cfc67b4f260a5b40f3ab303ca)

Change-Id: Ib61dbd0b01f63bfdda708d3c93eac58284bbe236

9 years agoMerge "Avoid use of std::string where we have const char*."
Ian Rogers [Wed, 13 Aug 2014 05:43:07 +0000 (05:43 +0000)]
Merge "Avoid use of std::string where we have const char*."

9 years agoAvoid use of std::string where we have const char*.
Ian Rogers [Tue, 12 Aug 2014 09:30:58 +0000 (02:30 -0700)]
Avoid use of std::string where we have const char*.

Removing the ClassHelper caused std::string creation for all calls to
Class::GetDescriptor and a significant performance regression. Make the
std::string an out argument so the caller can maintain it and its life time
while allowing GetDescriptor to return the common const char* case.

Don't generate GC maps when compilation is disabled.

Remove other uses of std::string that are occuring on critical paths.
Use the cheaper SkipClass in CompileMethod in CompilerDriver.
Specialize the utf8 as utf16 comparison code for the common shorter byte
encoding.
Force a bit of inlining, remove some UNLIKELYs (they are prone to pessimizing
code), add some LIKELYs.

x86-64 host 1-thread interpret-only of 57 apks:
Before: 29.539s
After: 23.467s

Regular compile:
Before: 1m35.347s
After: 1m20.056s

Bug: 16853450
Change-Id: Ic705ea24784bee24ab80084d06174cbf87d557ad

9 years agoMerge "ART: Don't leave rex_ & length_ uninitialized"
Andreas Gampe [Wed, 13 Aug 2014 07:29:08 +0000 (07:29 +0000)]
Merge "ART: Don't leave rex_ & length_ uninitialized"

9 years agoART: Don't leave rex_ & length_ uninitialized
Andreas Gampe [Wed, 13 Aug 2014 06:24:16 +0000 (23:24 -0700)]
ART: Don't leave rex_ & length_ uninitialized

Don't leave fields uninitialized in the x86-64 utils assembler.

Bug: 16993295
Change-Id: I1d1b96f1d666660024116372de0014f1d19fd487

9 years agoMerge "Implement GenInlinedReverseBits"
Ian Rogers [Wed, 13 Aug 2014 04:53:16 +0000 (04:53 +0000)]
Merge "Implement GenInlinedReverseBits"

9 years agoImplement GenInlinedReverseBits
Yixin Shou [Mon, 28 Jul 2014 18:17:09 +0000 (14:17 -0400)]
Implement GenInlinedReverseBits

Added support for x86 inlined version of reverse method of int and long

Change-Id: I7dbdc13b4afedd56557e9eff038a31517cdb1843
Signed-off-by: Yixin Shou <yixin.shou@intel.com>
9 years agoMerge "Fix art build script"
Ian Rogers [Wed, 13 Aug 2014 04:07:22 +0000 (04:07 +0000)]
Merge "Fix art build script"

9 years agoFix art build script
Junmo Park [Mon, 11 Aug 2014 12:28:16 +0000 (21:28 +0900)]
Fix art build script

Use ART_BUILD_HOST_NDEBUG instead of ART_BUILD_NDEBUG.

Change-Id: I0ff590552f47d3354287a155b51936a7aef82f1f
Signed-off-by: Junmo Park <junmoz.park@samsung.com>
9 years agoMerge "Prevent merge conflicts."
Mathieu Chartier [Tue, 12 Aug 2014 17:35:01 +0000 (17:35 +0000)]
Merge "Prevent merge conflicts."

9 years agoPrevent merge conflicts.
Mathieu Chartier [Tue, 12 Aug 2014 17:13:48 +0000 (10:13 -0700)]
Prevent merge conflicts.

Change-Id: I61af7f3c9be47d4776371dfe2b97850ea3f3101f

9 years agoAdded --gcstress and --gcverify shortcut flags to run-test
Alex Light [Tue, 12 Aug 2014 16:53:50 +0000 (09:53 -0700)]
Added --gcstress and --gcverify shortcut flags to run-test

Change-Id: Ia11fcbc71488710ca32f397c3c1b19613e294d1e

9 years agoRevert "Revert "Remove GCC atomic workarounds.""
Dan Albert [Mon, 11 Aug 2014 23:38:02 +0000 (16:38 -0700)]
Revert "Revert "Remove GCC atomic workarounds.""

This reverts commit 626a2468e4e4f39db7b0f35a4fee87293e360e92.

9 years agoMove explicit GC after we are done initalizing all classes.
Mathieu Chartier [Mon, 11 Aug 2014 20:52:12 +0000 (13:52 -0700)]
Move explicit GC after we are done initalizing all classes.

Previously we had the GC happen for each dex file, this added a
few seconds of time on boot.oat creation.

Bug: 16853450

Change-Id: I6b78c8c6f6c3bc20c164d951f2af8efbff0b8600

9 years agoMerge "Make method tracing deoptimize on startup."
Jeff Hao [Tue, 12 Aug 2014 16:41:42 +0000 (16:41 +0000)]
Merge "Make method tracing deoptimize on startup."

9 years agoMake method tracing deoptimize on startup.
Jeff Hao [Tue, 12 Aug 2014 01:00:29 +0000 (18:00 -0700)]
Make method tracing deoptimize on startup.

Bug: 16848366
Change-Id: I929c48622987c090c5233490d4e7836a21e1b57e

9 years agoMerge "Revert "Remove GCC atomic workarounds.""
Jeff Hao [Mon, 11 Aug 2014 22:28:51 +0000 (22:28 +0000)]
Merge "Revert "Remove GCC atomic workarounds.""

9 years agoRevert "Remove GCC atomic workarounds."
Jeff Hao [Mon, 11 Aug 2014 22:28:05 +0000 (22:28 +0000)]
Revert "Remove GCC atomic workarounds."

This reverts commit a29ffd505328b3d580c25fff054e463b7cac08a8.

Change-Id: Ibb4845b8a1378f3d1fb0975f9677758f420f843f

9 years agoMerge "Add tests for getDeclaredConstructor"
Mathieu Chartier [Mon, 11 Aug 2014 21:56:35 +0000 (21:56 +0000)]
Merge "Add tests for getDeclaredConstructor"

9 years agoMerge "Fix more of the Mac build."
Dave Allison [Mon, 11 Aug 2014 19:18:39 +0000 (19:18 +0000)]
Merge "Fix more of the Mac build."

9 years agoFix more of the Mac build.
Dan Albert [Sun, 10 Aug 2014 17:14:59 +0000 (10:14 -0700)]
Fix more of the Mac build.

Change-Id: I0fa52ef73e86318bb68de2c69bbed81a00bfc3e0

9 years agoMerge "AArch64: Fix art_quick_string_compareto."
Andreas Gampe [Tue, 12 Aug 2014 15:37:39 +0000 (15:37 +0000)]
Merge "AArch64: Fix art_quick_string_compareto."

9 years agoAArch64: Fix art_quick_string_compareto.
Zheng Xu [Tue, 12 Aug 2014 09:19:12 +0000 (17:19 +0800)]
AArch64: Fix art_quick_string_compareto.

Though __memcmp16() is implemented in the same module as the caller, it
is still possible that the toolchain would put __memcmp16() into plt. In
that case, IP registers can be trashed when loading the function address.
Use x14/x15 to replace IP0/IP1.

Bug: 16974467
Change-Id: Ica7294b9bf90342031efa5fd51a86a6fcab5852b

9 years agoMerge "Change FreeMemory and TotalMemory behavior."
Mathieu Chartier [Tue, 12 Aug 2014 02:01:01 +0000 (02:01 +0000)]
Merge "Change FreeMemory and TotalMemory behavior."

9 years agoChange FreeMemory and TotalMemory behavior.
Mathieu Chartier [Thu, 7 Aug 2014 00:06:33 +0000 (17:06 -0700)]
Change FreeMemory and TotalMemory behavior.

TotalMemory is now equal to the footprint limit (around when the
next GC will occur).
FreeMemory is now equal to TotalMemory() - bytes_allocated_.
Also added more memory dumping info to DumpGcPerformanceInfo.

Bug: 16520008
Bug: 15819878

Change-Id: Ifa59a2f2136dd0704097411ee183925e6c387fae

9 years agoMerge "Fix missing operation in CombineBlocks"
Vladimir Marko [Tue, 12 Aug 2014 11:57:24 +0000 (11:57 +0000)]
Merge "Fix missing operation in CombineBlocks"

9 years agoFix missing operation in CombineBlocks
Junmo Park [Tue, 12 Aug 2014 00:34:54 +0000 (09:34 +0900)]
Fix missing operation in CombineBlocks

explicit throw, conditional branch flags also need to be moved.
There are no quick compiler bugs before this CL.
So regression test is not necessary.

Change-Id: I5f7c0f261fff5f7a46b32763096ab4fe85b2c0c0
Signed-off-by: Junmo Park <junmoz.park@samsung.com>
9 years agoMerge "Fix missing operation in SplitBlock"
Vladimir Marko [Tue, 12 Aug 2014 10:54:08 +0000 (10:54 +0000)]
Merge "Fix missing operation in SplitBlock"

9 years agoRemove GCC atomic workarounds.
Ian Rogers [Mon, 11 Aug 2014 17:32:28 +0000 (10:32 -0700)]
Remove GCC atomic workarounds.

libcxx now has compatibility with GCC atomic support.
Bug: 16301104

Change-Id: I0ba5abf7147e999a8329c9e8a48b3712370ee4a6

9 years agoMerge "Add gcstress top-level make rule, eg test-art-host-run-test-gcstress."
Nicolas Geoffray [Mon, 11 Aug 2014 18:06:44 +0000 (18:06 +0000)]
Merge "Add gcstress top-level make rule, eg test-art-host-run-test-gcstress."

9 years agoAdd gcstress top-level make rule, eg test-art-host-run-test-gcstress.
Nicolas Geoffray [Mon, 11 Aug 2014 17:59:42 +0000 (18:59 +0100)]
Add gcstress top-level make rule, eg test-art-host-run-test-gcstress.

Change-Id: I221aa3274a513820b12ac25cdfecc911ce212144

9 years agoMerge "Remove GCC atomic workarounds."
Ian Rogers [Mon, 11 Aug 2014 17:38:49 +0000 (17:38 +0000)]
Merge "Remove GCC atomic workarounds."

9 years agoFix missing operation in SplitBlock
Junmo Park [Mon, 4 Aug 2014 09:51:21 +0000 (18:51 +0900)]
Fix missing operation in SplitBlock

If block which contains a conditional branch is divided two,
explicit throw, conditional branch flag needs to go to the bottom block.

Change-Id: I17a74f469d0c61fb30daa43fdb967ea485b2a6c3
Signed-off-by: Junmo Park <junmoz.park@samsung.com>
9 years agoMerge "Fix the Mac build."
Dan Albert [Sun, 10 Aug 2014 17:16:14 +0000 (17:16 +0000)]
Merge "Fix the Mac build."

9 years agoFix the Mac build.
Dan Albert [Sun, 10 Aug 2014 06:43:10 +0000 (23:43 -0700)]
Fix the Mac build.

Apparently Mac uses a different assembler directive for .hidden.

Change-Id: Ic2adb6bef82e376c3e5f4a29258a85a0dac00cd5

9 years agoMerge "Remove clang detected warning on tautological comparison"
Brian Carlstrom [Sat, 9 Aug 2014 05:30:45 +0000 (05:30 +0000)]
Merge "Remove clang detected warning on tautological comparison"

9 years agoRemove clang detected warning on tautological comparison
Brian Carlstrom [Sat, 9 Aug 2014 04:29:02 +0000 (21:29 -0700)]
Remove clang detected warning on tautological comparison

Bug: 16903117
Change-Id: I5847ef5a6091c01e14b9ffcd8f6d12cabfa8b63b

9 years agoMerge "ART: Do not check interface being subclass for member access"
Andreas Gampe [Sat, 9 Aug 2014 04:41:19 +0000 (04:41 +0000)]
Merge "ART: Do not check interface being subclass for member access"

9 years agoART: Do not check interface being subclass for member access
Andreas Gampe [Sat, 9 Aug 2014 02:55:37 +0000 (19:55 -0700)]
ART: Do not check interface being subclass for member access

When checking access to a protected member, do not try to see
whether an interface is a subclass of the declaring class.

Bug: 16904661

(cherry picked from commit 81db6a7c20aa008c7edbb7377b4bc3a9afe91bb7)

Change-Id: I3e1fa4ce9753e0a96633fff0fba807d72bc0b19d

9 years agoMerge "ART: Turn on dex2oat watchdog on target"
Andreas Gampe [Sat, 9 Aug 2014 01:20:01 +0000 (01:20 +0000)]
Merge "ART: Turn on dex2oat watchdog on target"

9 years agoMerge "Check pause histogram sample size."
Mathieu Chartier [Sat, 9 Aug 2014 01:01:16 +0000 (01:01 +0000)]
Merge "Check pause histogram sample size."

9 years agoMerge "Proper fix after -Bsymbolic change."
Dan Albert [Sun, 10 Aug 2014 05:17:32 +0000 (05:17 +0000)]
Merge "Proper fix after -Bsymbolic change."

9 years agoProper fix after -Bsymbolic change.
Dan Albert [Sun, 10 Aug 2014 01:08:07 +0000 (18:08 -0700)]
Proper fix after -Bsymbolic change.

Marking the offending symbols as hidden allows the linker to resolve
them at build time.

Bug: 16853291
Change-Id: I1480c1520c23f81e42831a66737bba7bdf3433c2

9 years agoCheck pause histogram sample size.
Mathieu Chartier [Sat, 9 Aug 2014 00:38:41 +0000 (17:38 -0700)]
Check pause histogram sample size.

There is a race where the GC sees > 0 iterations but 0 pauses.
We now check that there is a non zero number of pauses before
printing the pause histogram.

Bug: 16898792
Change-Id: I87813e5e6f27871ef79f70792925519d112f3534

9 years agoAdd tests for getDeclaredConstructor
Mathieu Chartier [Fri, 8 Aug 2014 22:10:11 +0000 (15:10 -0700)]
Add tests for getDeclaredConstructor

Ensure that getDeclaredConstructor throws exceptions for classes,
fields, and methods.

Bug: 16866726
Change-Id: I6f1a1252b9a409dee80653c25ae196db48dc004e

9 years agoMerge "ART: Fix two small DumpLIRInsn issues for x86_64 port."
Ian Rogers [Fri, 8 Aug 2014 20:54:05 +0000 (20:54 +0000)]
Merge "ART: Fix two small DumpLIRInsn issues for x86_64 port."

9 years agoART: Fix two small DumpLIRInsn issues for x86_64 port.
Haitao Feng [Sat, 9 Aug 2014 00:31:02 +0000 (08:31 +0800)]
ART: Fix two small DumpLIRInsn issues for x86_64 port.

Change-Id: I81ef32380bfc73d6c2bfc37a7f4903d912a5d9c8
Signed-off-by: Haitao Feng <haitao.feng@intel.com>
9 years agoMerge "ART: Fix wrong command line parameter"
Andreas Gampe [Fri, 8 Aug 2014 19:06:53 +0000 (19:06 +0000)]
Merge "ART: Fix wrong command line parameter"

9 years agoART: Fix wrong command line parameter
Andreas Gampe [Fri, 8 Aug 2014 19:05:10 +0000 (12:05 -0700)]
ART: Fix wrong command line parameter

Bug: 16843953
Change-Id: I59aea409a5f640a713f839927ba5c37b81e4ce0d

9 years agoMerge "Get the native bridge library from the framework."
Andreas Gampe [Fri, 8 Aug 2014 19:03:28 +0000 (19:03 +0000)]
Merge "Get the native bridge library from the framework."

9 years agoGet the native bridge library from the framework.
Calin Juravle [Thu, 7 Aug 2014 13:53:41 +0000 (14:53 +0100)]
Get the native bridge library from the framework.

Framework now passes the name of the native bridge to the runtime so
there's no need to do the reading in libart.

Bug: 16843953
Change-Id: I59b5c3050c6e1a37a627a8c98d7085e91487c32c

9 years agoMerge "ART: Make assembler_test less chatty"
Andreas Gampe [Fri, 8 Aug 2014 17:50:02 +0000 (17:50 +0000)]
Merge "ART: Make assembler_test less chatty"

9 years agoART: Make assembler_test less chatty
Andreas Gampe [Wed, 6 Aug 2014 22:31:06 +0000 (15:31 -0700)]
ART: Make assembler_test less chatty

Do not save temporaries in case we use a different encoding than
the host assembler.

Bug: 16505797
Change-Id: Iaa9edfe8bc84d7f809f5b403de902b92b0998431

9 years agoMerge "Wire up check JNI force copy mode."
Ian Rogers [Fri, 8 Aug 2014 17:48:58 +0000 (17:48 +0000)]
Merge "Wire up check JNI force copy mode."

9 years agoWire up check JNI force copy mode.
Ian Rogers [Thu, 17 Jul 2014 18:09:10 +0000 (11:09 -0700)]
Wire up check JNI force copy mode.

Increase check JNI checks.
Break apart jni_internal.h in to jni_env_ext.h and java_vm_ext.h.
Fix the abuse of ScopedObjectAccess/annotalysis by ScopedCheck in the case
of VM routines.
Make class loader override and shared library class loader JNI global
references rather than mirror pointers.
Clean-ups to native bridge.

Change-Id: If7c6110b5aade7a402bfb67534af86a7b2cdeb55

9 years agoMerge "Use the right instruction set for checking dex-cache staleness."
Narayan Kamath [Fri, 8 Aug 2014 15:48:23 +0000 (15:48 +0000)]
Merge "Use the right instruction set for checking dex-cache staleness."

9 years agoUse the right instruction set for checking dex-cache staleness.
Narayan Kamath [Fri, 8 Aug 2014 15:19:44 +0000 (16:19 +0100)]
Use the right instruction set for checking dex-cache staleness.

We should use the instruction set we're asked to use, and not
the instruction set of the current runtime.

bug: 16876489

(cherry picked from commit 24e928bddaf8b4af6cdf6d64a7c35bfde059995c)

Change-Id: I07901f059f9966b961e76bc055eaa04ea0227824

9 years agoMerge "Fix performance regression in OatFile::GetOatDexFile()."
Vladimir Marko [Fri, 8 Aug 2014 12:41:57 +0000 (12:41 +0000)]
Merge "Fix performance regression in OatFile::GetOatDexFile()."

9 years agoFix performance regression in OatFile::GetOatDexFile().
Vladimir Marko [Thu, 7 Aug 2014 17:07:18 +0000 (18:07 +0100)]
Fix performance regression in OatFile::GetOatDexFile().

Try to avoid calculating the canonical location of the
dex file if possible and when we have to calculate it,
cache the lookup result for subsequent lookups.

Bug: 16828525
Bug: 16859671
Change-Id: I0f03007ba5adf08656615900cf125075a3f2c541

9 years agoMerge "Fix target and host gtest dependencies."
Nicolas Geoffray [Thu, 7 Aug 2014 18:16:38 +0000 (18:16 +0000)]
Merge "Fix target and host gtest dependencies."

9 years agoFix target and host gtest dependencies.
Nicolas Geoffray [Thu, 7 Aug 2014 00:58:32 +0000 (01:58 +0100)]
Fix target and host gtest dependencies.

Change-Id: I0da17b12fc2164d9d8bdb8bcf61947c7788c6b8b

9 years agoMerge "Add implicit checks for x86_64 architecture."
Dave Allison [Thu, 7 Aug 2014 18:15:28 +0000 (18:15 +0000)]
Merge "Add implicit checks for x86_64 architecture."

9 years agoAdd implicit checks for x86_64 architecture.
Dave Allison [Wed, 16 Jul 2014 23:04:32 +0000 (16:04 -0700)]
Add implicit checks for x86_64 architecture.

This combines the x86 and x86_64 fault handlers into one.  It also
merges in the change to the entrypoints for X86_64.

Replaces generic instruction length calculator with one that only
works with the specific instructions we use.

Bug: 16256184

Change-Id: I1e8ab5ad43f46060de9597615b423c89a836035c
Signed-off-by: Chao-ying Fu <chao-ying.fu@intel.com>
9 years agoMerge "Fix GetDexCanonicalLocation test for relative paths."
Calin Juravle [Thu, 7 Aug 2014 12:46:20 +0000 (12:46 +0000)]
Merge "Fix GetDexCanonicalLocation test for relative paths."

9 years agoFix GetDexCanonicalLocation test for relative paths.
Calin Juravle [Thu, 7 Aug 2014 10:54:36 +0000 (11:54 +0100)]
Fix GetDexCanonicalLocation test for relative paths.

If the reference file is created with a relative path the test will
fail.

Change-Id: Ifa8e650e3c8b1d28600ce994d7e6e0cb422b0c9d

9 years agoMerge changes I0c2e2efb,Id842648e
Nicolas Geoffray [Fri, 8 Aug 2014 01:01:48 +0000 (01:01 +0000)]
Merge changes I0c2e2efb,Id842648e

* changes:
  Workaround for test failures after Bsymbolic fix.
  Revert "Fix build without -Bsymbolic."

9 years agoWorkaround for test failures after Bsymbolic fix.
Dan Albert [Fri, 8 Aug 2014 00:39:34 +0000 (17:39 -0700)]
Workaround for test failures after Bsymbolic fix.

Change-Id: I0c2e2efbeb5060d4ec5ba706dab422b3c2caaa96

9 years agoRevert "Fix build without -Bsymbolic."
Dan Albert [Fri, 8 Aug 2014 00:40:03 +0000 (17:40 -0700)]
Revert "Fix build without -Bsymbolic."

This reverts commit bae21bb7f6ca917e0954c970f0bfd2bfa3dcc0a9.

9 years agoMerge "Fix build without -Bsymbolic."
Dan Albert [Thu, 7 Aug 2014 23:23:32 +0000 (23:23 +0000)]
Merge "Fix build without -Bsymbolic."

9 years agoMerge "Clean up card table test."
Mathieu Chartier [Thu, 7 Aug 2014 23:04:02 +0000 (23:04 +0000)]
Merge "Clean up card table test."

9 years agoMerge "Guard pause histogram with lock."
Mathieu Chartier [Thu, 7 Aug 2014 22:22:07 +0000 (22:22 +0000)]
Merge "Guard pause histogram with lock."

9 years agoGuard pause histogram with lock.
Mathieu Chartier [Thu, 7 Aug 2014 21:26:27 +0000 (14:26 -0700)]
Guard pause histogram with lock.

There is a race condition since the GC was updating this without
holding any locks. But the signal catcher could be dumping the
timings with DumpGcPerformanceInfo at the same time. This could
potentially cause out of bound errors, etc..

Also did a bit of cleanup.

Bug: 15446488
Change-Id: Icaff19d872cc7f7d31c34e4ddaae97502454e09c

9 years agoClean up card table test.
Mathieu Chartier [Thu, 7 Aug 2014 00:48:43 +0000 (17:48 -0700)]
Clean up card table test.

Change-Id: Idd313dbf8a238b014741d48be091375646dccd6d

9 years agoFix build without -Bsymbolic.
Dan Albert [Thu, 7 Aug 2014 04:36:46 +0000 (21:36 -0700)]
Fix build without -Bsymbolic.

For ARM: Gold is unable to create PLT based relocations for conditional
branches.
For x86: Some uses of SYMBOL() should have been PLT_SYMBOL().

Bug: 16853291
Change-Id: Id70488b077256a70137c4417f21be2c2d1d4341c

9 years agoMerge "Add arraycopy intrinsic for arm and arm64."
Andreas Gampe [Thu, 7 Aug 2014 21:40:57 +0000 (21:40 +0000)]
Merge "Add arraycopy intrinsic for arm and arm64."

9 years agoAdd arraycopy intrinsic for arm and arm64.
Zheng Xu [Thu, 7 Aug 2014 06:05:23 +0000 (14:05 +0800)]
Add arraycopy intrinsic for arm and arm64.

Implement intrinsic for
java.lang.System.arraycopy(char[], int, char[], int, int).

Bug: 16241558
Change-Id: I558a9c4403d0c3abb07af1511d394981bbfcabc5

9 years agoMerge "Emit CFI for x86 & x86_64 JNI compiler."
Andreas Gampe [Thu, 7 Aug 2014 21:38:15 +0000 (21:38 +0000)]
Merge "Emit CFI for x86 & x86_64 JNI compiler."

9 years agoMerge "Support x86_64 stack overflow checks in opt compiler."
Nicolas Geoffray [Thu, 7 Aug 2014 21:03:30 +0000 (21:03 +0000)]
Merge "Support x86_64 stack overflow checks in opt compiler."

9 years agoSupport x86_64 stack overflow checks in opt compiler.
Nicolas Geoffray [Thu, 7 Aug 2014 19:25:41 +0000 (20:25 +0100)]
Support x86_64 stack overflow checks in opt compiler.

Also re-enable SignalTest on optimizing-32.

Change-Id: I2ca13f6f9ea775c654ee07cc5026c985263d6380

9 years agoMerge "Fix a SIGSEGV at background-to-foreground collector transition."
Hiroshi Yamauchi [Thu, 7 Aug 2014 19:20:25 +0000 (19:20 +0000)]
Merge "Fix a SIGSEGV at background-to-foreground collector transition."