OSDN Git Service

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

10 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

10 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."

10 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."

10 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

10 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"

10 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"

10 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

10 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."

10 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

10 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."""

10 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."

10 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

10 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."

10 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

10 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"

10 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

10 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*."

10 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

10 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"

10 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

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

10 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>
10 years agoMerge "Fix art build script"
Ian Rogers [Wed, 13 Aug 2014 04:07:22 +0000 (04:07 +0000)]
Merge "Fix art build script"

10 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>
10 years agoMerge "Prevent merge conflicts."
Mathieu Chartier [Tue, 12 Aug 2014 17:35:01 +0000 (17:35 +0000)]
Merge "Prevent merge conflicts."

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

Change-Id: I61af7f3c9be47d4776371dfe2b97850ea3f3101f

10 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

10 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.

10 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

10 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."

10 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

10 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.""

10 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

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

10 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."

10 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

10 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."

10 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

10 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."

10 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

10 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"

10 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>
10 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"

10 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

10 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."

10 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

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

10 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>
10 years agoMerge "Fix the Mac build."
Dan Albert [Sun, 10 Aug 2014 17:16:14 +0000 (17:16 +0000)]
Merge "Fix the Mac build."

10 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

10 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"

10 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

10 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"

10 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

10 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"

10 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."

10 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."

10 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

10 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

10 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

10 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."

10 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>
10 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"

10 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

10 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."

10 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

10 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"

10 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

10 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."

10 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

10 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."

10 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

10 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()."

10 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

10 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."

10 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

10 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."

10 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>
10 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."

10 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

10 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."

10 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

10 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.

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

10 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."

10 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."

10 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

10 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

10 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

10 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."

10 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

10 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."

10 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."

10 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

10 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."

10 years agoMerge "Check for a NULL pointer, do not call Build."
Christopher Ferris [Thu, 7 Aug 2014 19:09:34 +0000 (19:09 +0000)]
Merge "Check for a NULL pointer, do not call Build."

10 years agoFix a SIGSEGV at background-to-foreground collector transition.
Hiroshi Yamauchi [Thu, 7 Aug 2014 17:27:17 +0000 (10:27 -0700)]
Fix a SIGSEGV at background-to-foreground collector transition.

The mem map that's used to create the backup main rosalloc space is
set to PROT_NONE by the compaction and the rosalloc space creation
attempts to write the debug magic number in the first page.

This is a debug build only issue.

Bug: 16854263
Change-Id: I3cc6b7288ee53c006366bb428fb245a909bc3db5

10 years agoRevert "Rename openDexFileNative to openDexFile."
Calin Juravle [Wed, 6 Aug 2014 19:07:41 +0000 (19:07 +0000)]
Revert "Rename openDexFileNative to openDexFile."

https://android-review.googlesource.com/#/c/103383/ introduces
absolute paths so we need back the old method name

Bug: 16644204

This reverts commit 350b626eb1cfbaee7619e9453a4c018c07aed003.

Change-Id: I10f430a536bb1906a8452fea5846ec9e725e84bd

10 years agoCheck for a NULL pointer, do not call Build.
Christopher Ferris [Tue, 5 Aug 2014 22:43:13 +0000 (15:43 -0700)]
Check for a NULL pointer, do not call Build.

When calling BacktraceMap::Create(), a NULL pointer is returned if Build
fails. Building twice can cause problems and might leak memory.

Change-Id: I38a4100e534ef15a19883703aa504e795a14b6de