OSDN Git Service
Alex Light [Tue, 8 Jul 2014 16:53:18 +0000 (09:53 -0700)]
Fix some style nitpicks
Change-Id: Icfdd327f4ddf129f0a8607162c09ba271c1d49d9
Vladimir Marko [Tue, 8 Jul 2014 16:42:47 +0000 (16:42 +0000)]
Merge "Add 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
Vladimir Marko [Tue, 8 Jul 2014 16:24:12 +0000 (16:24 +0000)]
Merge "Fix style issue."
Vladimir Marko [Tue, 8 Jul 2014 16:21:32 +0000 (17:21 +0100)]
Fix style issue.
Change-Id: Ifc73dd4331d91be8c6c5eed2159ec1733fa84995
Vladimir Marko [Tue, 8 Jul 2014 16:06:12 +0000 (16:06 +0000)]
Merge "Check invoke type for intrinsic method invokes."
Vladimir Marko [Thu, 3 Jul 2014 16:28:33 +0000 (17:28 +0100)]
Check invoke type for intrinsic method invokes.
Bug:
16017877
Change-Id: I931c0b19b500a042bc9235aa18212c4ab5240745
Ian Rogers [Tue, 8 Jul 2014 06:04:43 +0000 (06:04 +0000)]
Merge "BaseMutex::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
Ian Rogers [Tue, 8 Jul 2014 06:04:28 +0000 (06:04 +0000)]
Merge "JNI 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
Ian Rogers [Tue, 8 Jul 2014 05:51:03 +0000 (05:51 +0000)]
Merge "Enable 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
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
Ian Rogers [Tue, 8 Jul 2014 05:29:19 +0000 (05:29 +0000)]
Merge "ART: 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>
Ian Rogers [Tue, 8 Jul 2014 02:15:36 +0000 (02:15 +0000)]
Merge "Fix dex file dependencies for oat tests."
Brian Carlstrom [Mon, 7 Jul 2014 22:41:10 +0000 (22:41 +0000)]
Merge "Add 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
Ian Rogers [Mon, 7 Jul 2014 18:18:03 +0000 (18:18 +0000)]
Merge "ART: Add HADDPS/HADDPD/SHUFPS/SHUFPD instruction generation"
Mathieu Chartier [Mon, 7 Jul 2014 16:47:12 +0000 (16:47 +0000)]
Merge "Only allow whitelisted exceptions during dex2oat resolving."
Mathieu Chartier [Sat, 28 Jun 2014 00:19:04 +0000 (17:19 -0700)]
Only allow whitelisted exceptions during dex2oat resolving.
Previously we would clear any exceptions even though we only want
to clear NoClassDefFound and IncompatibleClassChangeError exceptions.
This meant that out of memory exceptions would incorrectly get
cleared resulting in excessively long dex2oat times when you ran out
of memory.
Bug:
15936401
Change-Id: Iba3911f2c689b8c8d7d41e8c36546f027c08e9d7
Andreas Gampe [Mon, 7 Jul 2014 15:51:50 +0000 (15:51 +0000)]
Merge "Aarch64: fix bug and enable register promotion."
Matteo Franchin [Mon, 7 Jul 2014 12:35:14 +0000 (13:35 +0100)]
Aarch64: fix bug and enable register promotion.
Iteration over arguments in invoke implementation was not correct
for wide arguments.
Change-Id: I46c7edcbfc9e32ded0e9a535fab3d333905bcf41
Andreas Gampe [Sun, 6 Jul 2014 17:57:54 +0000 (17:57 +0000)]
Merge "Fix missing dependency in new X86 instruction"
Mark Mendell [Sun, 6 Jul 2014 16:24:40 +0000 (12:24 -0400)]
Fix missing dependency in new X86 instruction
AX is written by this opcode. Note the dependency.
Change-Id: I25209e1fb4ceb0387269436c8b00730b1caa03bc
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Andreas Gampe [Thu, 3 Jul 2014 21:46:10 +0000 (21:46 +0000)]
Merge "x86_64: TargetReg update for x86"
Chao-ying Fu [Wed, 2 Jul 2014 00:43:41 +0000 (17:43 -0700)]
x86_64: TargetReg update for x86
Also includes changes in common code. Elimination of use of TargetReg
with one parameter and direct access to special target registers.
Change-Id: Ied2c1f87d4d1e4345248afe74bca40487a46a371
Signed-off-by: Serguei Katkov <serguei.i.katkov@intel.com>
Signed-off-by: Chao-ying Fu <chao-ying.fu@intel.com>
Andreas Gampe [Thu, 3 Jul 2014 20:48:11 +0000 (20:48 +0000)]
Merge "Load 64 bit constant into GPR by single instruction for 64bit mode"
Andreas Gampe [Thu, 3 Jul 2014 20:10:57 +0000 (20:10 +0000)]
Merge "Register promotion support for 64-bit targets"
buzbee [Sat, 21 Jun 2014 22:31:01 +0000 (15:31 -0700)]
Register promotion support for 64-bit targets
Not sufficiently tested for 64-bit targets, but should be
fairly close.
A significant amount of refactoring could stil be done, (in
later CLs).
With this change we are not making any changes to the vmap
scheme. As a result, it is a requirement that if a vreg
is promoted to both a 32-bit view and the low half of a
64-bit view it must share the same physical register. We
may change this restriction later on to allow for more flexibility
for 32-bit Arm.
For example, if v4, v5, v4/v5 and v5/v6 are all hot enough to
promote, we'd end up with something like:
v4 (as an int) -> r10
v4/v5 (as a long) -> r10
v5 (as an int) -> r11
v5/v6 (as a long) -> r11
Fix a couple of ARM64 bugs on the way...
Change-Id: I6a152b9c164d9f1a053622266e165428045362f3
Nicolas Geoffray [Thu, 3 Jul 2014 08:01:16 +0000 (08:01 +0000)]
Merge "Fix build-art-target and build-art-host rules."
Andreas Gampe [Mon, 7 Jul 2014 15:39:09 +0000 (15:39 +0000)]
Merge "Aarch64: fix references handling in Load*Indexed."
Matteo Franchin [Fri, 4 Jul 2014 12:50:41 +0000 (13:50 +0100)]
Aarch64: fix references handling in Load*Indexed.
Fix the way we handle references in Load/StoreBaseIndexed and friends.
We assume references are 64-bit RegStorage entities, with the
difference that they are load as 32-bit values.
Change-Id: I7fe987ef9e97e9a5042b85378b33d1e85710d8b5
Andreas Gampe [Sun, 6 Jul 2014 17:35:52 +0000 (17:35 +0000)]
Merge "x86_64: Fix InstanceofFinal"
Dmitry Petrochenko [Mon, 30 Jun 2014 18:21:38 +0000 (01:21 +0700)]
x86_64: Fix InstanceofFinal
Comparison should be made using GetReg()
Change-Id: Ic5bebf680395d9b93710511db9760d0e867b38cb
Signed-off-by: Serguei Katkov <serguei.i.katkov@intel.com>
Signed-off-by: Dmitry Petrochenko <dmitry.petrochenko@intel.com>
Andreas Gampe [Fri, 4 Jul 2014 23:19:40 +0000 (23:19 +0000)]
Merge "AArch64: Enable Inlining."
Serban Constantinescu [Mon, 30 Jun 2014 16:10:28 +0000 (17:10 +0100)]
AArch64: Enable Inlining.
This patch fixes the remaining issues with inlining for ARM64.
Change-Id: I2d85b7c4f3fb2b667bf6029fbc271ab954378889
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
Signed-off-by: Matteo Franchin <matteo.franchin@arm.com>
Andreas Gampe [Fri, 4 Jul 2014 18:24:39 +0000 (18:24 +0000)]
Merge "Aarch64: fix encoding map for kA64Fmov2xS."
Matteo Franchin [Fri, 4 Jul 2014 16:57:21 +0000 (17:57 +0100)]
Aarch64: fix encoding map for kA64Fmov2xS.
Change-Id: I5127a4443969dc2322461a4b4a34d6c39a0ffd64
Sebastien Hertz [Fri, 4 Jul 2014 09:07:47 +0000 (09:07 +0000)]
Merge "Add make rule to debug interpreter-only mode"
Sebastien Hertz [Fri, 4 Jul 2014 08:53:22 +0000 (10:53 +0200)]
Add make rule to debug interpreter-only mode
Adds "use-artd-interpret-only" make rule to run interpreter-only mode with
libartd.so.
Change-Id: Ib9fbcdbdcc79a89900ee751b5dc2ad554f834127
Nicolas Geoffray [Fri, 4 Jul 2014 09:00:17 +0000 (09:00 +0000)]
Merge "Do not attempt to compile on architectures we do not support."
Nicolas Geoffray [Fri, 4 Jul 2014 08:43:26 +0000 (09:43 +0100)]
Do not attempt to compile on architectures we do not support.
Change-Id: I431edff0a753a7fa37c79bdf7ab918d6747667a4
Sebastien Hertz [Fri, 4 Jul 2014 08:11:20 +0000 (08:11 +0000)]
Merge "More checks in JNI RegisterNatives"
Sebastien Hertz [Thu, 3 Jul 2014 07:39:53 +0000 (09:39 +0200)]
More checks in JNI RegisterNatives
Throws NoSuchMethodError (and returns JNI_ERR) when given method name, method
signature or native function is null.
Bug: https://code.google.com/p/android/issues/detail?id=72293
Bug:
15886341
Change-Id: I1c0582d54031eaa58a6025a2417d65090a2a622a
Andreas Gampe [Fri, 4 Jul 2014 05:36:52 +0000 (05:36 +0000)]
Merge "x86_64: Turn on promotion optimization"
Dmitry Petrochenko [Sat, 28 Jun 2014 03:59:19 +0000 (10:59 +0700)]
x86_64: Turn on promotion optimization
This CL turns on the promotion optimization (longs).
The 64-bit references support is disabled in x86_64 backend.
Change-Id: I62723388f549b51bae41c8a6b334228b2d782610
Signed-off-by: Dmitry Petrochenko <dmitry.petrochenko@intel.com>
Andreas Gampe [Fri, 4 Jul 2014 01:38:56 +0000 (01:38 +0000)]
Merge "x86_64: Fix intrinsics"
nikolay serdjuk [Tue, 10 Jun 2014 10:07:10 +0000 (17:07 +0700)]
x86_64: Fix intrinsics
The following intrinsics have been ported:
- Abs(double/long/int/float)
- String.indexOf/charAt/compareTo/is_empty/length
- Float.floatToRawIntBits, Float.intBitsToFloat
- Double.doubleToRawLongBits, Double.longBitsToDouble
- Thread.currentThread
- Unsafe.getInt/Long/Object, Unsafe.putInt/Long/Object
- Math.sqrt, Math.max, Math.min
- Long.reverseBytes
Math.min and max for longs have been implemented for x86_64.
Commented out until good tests available:
- Memory.peekShort/Int/Long, Memory.pokeShort/Int/Long
Turned off on x86-64 as reported having problems
- Cas
Change-Id: I934bc9c90fdf953be0d3836a17b6ee4e7c98f244
Andreas Gampe [Fri, 4 Jul 2014 00:42:46 +0000 (00:42 +0000)]
Merge "AArch64: Add few more inline functions"
Serban Constantinescu [Wed, 2 Jul 2014 15:13:38 +0000 (16:13 +0100)]
AArch64: Add few more inline functions
This patch adds inlining support for the following functions:
* Math.max/min(long, long)
* Math.max/min(float, float)
* Math.max/min(double, double)
* Integer.reverse(int)
* Long.reverse(long)
Change-Id: Ia2b1619fd052358b3a0d23e5fcbfdb823d2029b9
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
Andreas Gampe [Thu, 3 Jul 2014 23:24:49 +0000 (23:24 +0000)]
Merge "ART: FF-opcodes are target-specific"
Vladimir Kostyukov [Mon, 30 Jun 2014 08:44:12 +0000 (15:44 +0700)]
ART: FF-opcodes are target-specific
Some of the FF-opcodes' (i.e., push, call, jmp) register names
depend on the the target (32-bit vs 64-bit). This patch makes
such opcodes target-specific.
Change-Id: I4fa0b7ee5310e14f4022850ac2160c21be5d1c99
Signed-off-by: Vladimir Kostyukov <vladimir.kostyukov@intel.com>
Nicolas Geoffray [Wed, 2 Jul 2014 16:54:33 +0000 (17:54 +0100)]
Fix build-art-target and build-art-host rules.
They did not build the right libjavacore.so for 64bits builds.
Change-Id: I8475f73588ffd17933aac4591d19f8803741ef8a
Yixin Shou [Tue, 1 Jul 2014 17:48:17 +0000 (13:48 -0400)]
Load 64 bit constant into GPR by single instruction for 64bit mode
This patch load 64 bit constant into a register by a single movabsq
instruction on 64 bit bit instead of previous mov, shift, add
instruction sequences.
Change-Id: I9d013c4f6c0b5c2e43bd125f91436263c7e6028c
Signed-off-by: Yixin Shou <yixin.shou@intel.com>
Nicolas Geoffray [Wed, 2 Jul 2014 15:28:16 +0000 (15:28 +0000)]
Merge "Fix art script for 'clean' environments."
Nicolas Geoffray [Wed, 2 Jul 2014 15:25:12 +0000 (16:25 +0100)]
Fix art script for 'clean' environments.
We need to define ANDROID_HOST_OUT in the script before using it.
Change-Id: I6b415d8de5fb6001bc579b013683957abb33f394
Andreas Gampe [Wed, 2 Jul 2014 15:27:18 +0000 (15:27 +0000)]
Merge "ART: JNI ExceptionDescribe crashes if no exception occurred"
Alexei Zavjalov [Wed, 25 Jun 2014 09:04:55 +0000 (16:04 +0700)]
ART: JNI ExceptionDescribe crashes if no exception occurred
Some tests are calling ExceptionDescribe without checking if
we have an exception occurred. The most JVM's like Dalvik can
handle this in a good way, but art crashes with JNI error.
This adds a check in art::ExceptionDescribe for a case when it
called without exception.
Change-Id: Id9eddcc73e78b1197109be5a6340f9ff60940c74
Signed-off-by: Alexei Zavjalov <alexei.zavjalov@intel.com>
Nicolas Geoffray [Wed, 2 Jul 2014 15:01:40 +0000 (15:01 +0000)]
Merge "Support longs in the register allocator for x86_64."
Nicolas Geoffray [Thu, 19 Jun 2014 09:00:34 +0000 (10:00 +0100)]
Support longs in the register allocator for x86_64.
Change-Id: I7fb6dfb761bc5cf9e5705682032855a0a70ca867
Nicolas Geoffray [Wed, 2 Jul 2014 14:05:06 +0000 (14:05 +0000)]
Merge "Fix art-host rule and art script after build changes."
Nicolas Geoffray [Wed, 2 Jul 2014 13:57:53 +0000 (14:57 +0100)]
Fix art-host rule and art script after build changes.
Change-Id: Ideb6a83d71cda126d94ad01965b2dcf5005d449a
Calin Juravle [Wed, 2 Jul 2014 13:15:17 +0000 (13:15 +0000)]
Merge "Relax limits for profiler based compilation options."
Calin Juravle [Wed, 2 Jul 2014 13:00:33 +0000 (14:00 +0100)]
Relax limits for profiler based compilation options.
Change-Id: I57a7b11588f5c5b5f12217239ecf58f59ae02e2b
Brian Carlstrom [Wed, 2 Jul 2014 17:30:38 +0000 (17:30 +0000)]
Merge "Add a local elf.h"
Brian Carlstrom [Wed, 2 Jul 2014 06:54:20 +0000 (23:54 -0700)]
Add a local elf.h
Change-Id: Ic2d449bfdd3c95e393c083c9e1022adc4e9c06b8
Andreas Gampe [Wed, 2 Jul 2014 16:45:07 +0000 (16:45 +0000)]
Merge "x86_64: Unify 64-bit check in x86 compiler"
Elena Sayapina [Tue, 1 Jul 2014 11:39:52 +0000 (18:39 +0700)]
x86_64: Unify 64-bit check in x86 compiler
Update x86-specific Gen64Bit() check with the CompilationUnit target64 field
which is set using unified Is64BitInstructionSet(InstructionSet) check.
Change-Id: Ic00ac863ed19e4543d7ea878d6c6c76d0bd85ce8
Signed-off-by: Elena Sayapina <elena.v.sayapina@intel.com>
Andreas Gampe [Tue, 1 Jul 2014 23:21:10 +0000 (23:21 +0000)]
Merge "ART: FPU instructions support in disassembler"
Vladimir Kostyukov [Tue, 24 Jun 2014 09:40:19 +0000 (16:40 +0700)]
ART: FPU instructions support in disassembler
This patch extends the disassembler with new FPU instructions:
- fstsw
- fucompp
- fprem
Change-Id: I9458510bc17f2b3b286edec102552f64be05147e
Signed-off-by: Vladimir Kostyukov <vladimir.kostyukov@intel.com>
Andreas Gampe [Tue, 1 Jul 2014 22:24:22 +0000 (22:24 +0000)]
Merge "ART: Quick compiler: More size checks, add TargetReg variants"
Andreas Gampe [Tue, 1 Jul 2014 21:39:50 +0000 (21:39 +0000)]
Merge "x86_64: Simplify FlushIns"
Dmitry Petrochenko [Fri, 27 Jun 2014 05:25:01 +0000 (12:25 +0700)]
x86_64: Simplify FlushIns
This change simplifies FlushIns for x86_64.
Change-Id: I2b41fae32603e0951e3847cc1e4f9c6bfab349a0
Signed-off-by: Serguei Katkov <serguei.i.katkov@intel.com>
Signed-off-by: Dmitry Petrochenko <dmitry.petrochenko@intel.com>
Vladimir Marko [Tue, 1 Jul 2014 17:52:19 +0000 (17:52 +0000)]
Merge "Add test for https://android-review.googlesource.com/99853 ."
Vladimir Marko [Tue, 1 Jul 2014 17:40:16 +0000 (18:40 +0100)]
Add test for https://android-review.googlesource.com/99853 .
Change-Id: I5a1614bf8bd92f21a9b15aa8ccb4cd5fe92a025a
Andreas Gampe [Tue, 1 Jul 2014 05:24:53 +0000 (22:24 -0700)]
ART: Quick compiler: More size checks, add TargetReg variants
Add variants for TargetReg for requesting specific register usage,
e.g., wide and ref. More register size checks.
With code adapted from https://android-review.googlesource.com/#/c/98605/.
Change-Id: I852d3be509d4dcd242c7283da702a2a76357278d
Andreas Gampe [Wed, 2 Jul 2014 02:12:35 +0000 (02:12 +0000)]
Merge "ART: Fix size error reported by ARM64 backend"
Andreas Gampe [Wed, 2 Jul 2014 02:00:09 +0000 (19:00 -0700)]
ART: Fix size error reported by ARM64 backend
Also removes a spurious LOG in dex2oat.
Change-Id: Ia264fbfb3cb8d59978f3a61e814eb6940e272ece
Andreas Gampe [Tue, 1 Jul 2014 18:07:14 +0000 (18:07 +0000)]
Merge "ART: Rework Generic JNI, add ARM version"
Andreas Gampe [Tue, 17 Jun 2014 01:39:09 +0000 (18:39 -0700)]
ART: Rework Generic JNI, add ARM version
Refactors and optimizes Generic JNI. This version uses TwoWordReturn
to avoid writing to / loading from the bottom of the alloca.
Change-Id: I3287007c976f79c9fd32d3b3a43f2d1371bf4cd3
Andreas Gampe [Tue, 1 Jul 2014 17:13:50 +0000 (17:13 +0000)]
Merge "ART: Add arch-specific directories to host-oat-cleaning rule"
Andreas Gampe [Tue, 1 Jul 2014 15:25:19 +0000 (08:25 -0700)]
ART: Add arch-specific directories to host-oat-cleaning rule
Change-Id: Ia1c5b613067ba6c6648706b346258d0a155906be
Elliott Hughes [Mon, 30 Jun 2014 18:04:16 +0000 (18:04 +0000)]
Merge "Fix the x86 textrel and remove -Wl,--no-fatal-warnings."
Andreas Gampe [Mon, 30 Jun 2014 15:21:53 +0000 (15:21 +0000)]
Merge "AArch64: Rename A64_/A32_ register prefix to x/w."
Zheng Xu [Mon, 30 Jun 2014 06:26:50 +0000 (14:26 +0800)]
AArch64: Rename A64_/A32_ register prefix to x/w.
A64/A32 look like architecture name, but they are all for arm64.
Use lower-case to name the registers defined in "ARM ARM" which can
also be directly used in assembly file.
Use upper-case to name the registers which are other aliases.
Change-Id: I0ac38ed75f977fdc362288b01179b84feaee5614
Elliott Hughes [Sat, 28 Jun 2014 00:20:59 +0000 (17:20 -0700)]
Fix the x86 textrel and remove -Wl,--no-fatal-warnings.
Bug:
11358761
Change-Id: I825cecce121a9011f74c5fdf77d1fbecd30adbc7
Andreas Gampe [Mon, 30 Jun 2014 22:21:18 +0000 (22:21 +0000)]
Merge "AArch64: Add memcmp16() for Arm64; ensure xSELF not clobbered"
Serban Constantinescu [Thu, 19 Jun 2014 15:17:56 +0000 (16:17 +0100)]
AArch64: Add memcmp16() for Arm64; ensure xSELF not clobbered
This patch modifies memcmp() to memcmp16(). Please note that this
implementation of memcmp16() is based on the bionic's memcmp().
However, to reflect a recent specification change, the file has been
modified to respect the new String.compareTo() behavior.
A test for memcmp16() has been added. The string_compareto test in
stub_test has been changed to invoke __memcmp16 in assembly stubs.
Add artIsAssignableFromCode to the list of native downcalls to
store and reload x18. Remove CheckSuspendFromCode, as it is unused.
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
Change-Id: Ie0b5425ecfb62906d29a5d02e84c7e07ffb34a11
Brian Carlstrom [Mon, 30 Jun 2014 21:35:36 +0000 (21:35 +0000)]
Merge "We can no longer use "adb shell sh -c ..." internally"
Brian Carlstrom [Fri, 27 Jun 2014 06:10:37 +0000 (23:10 -0700)]
We can no longer use "adb shell sh -c ..." internally
Change-Id: I9357ca59f73b79fa56686d221c83e024137eee35
Brian Carlstrom [Sun, 29 Jun 2014 22:31:19 +0000 (22:31 +0000)]
Merge "Make ART_HOST_EXECUTABLES and ART_TARGET_SUPPORTED_ARCH include dalvikvm32 and dalvikvm64 as needed"
Brian Carlstrom [Sun, 29 Jun 2014 22:03:29 +0000 (15:03 -0700)]
Make ART_HOST_EXECUTABLES and ART_TARGET_SUPPORTED_ARCH include dalvikvm32 and dalvikvm64 as needed
Change-Id: Ica949eb73c081f10d28cc2fcfeb8e968eb1d52bb
Andreas Gampe [Mon, 30 Jun 2014 15:18:34 +0000 (15:18 +0000)]
Merge "x86_64: Fix GenArrayBoundsCheck"
Serguei Katkov [Mon, 23 Jun 2014 17:50:02 +0000 (00:50 +0700)]
x86_64: Fix GenArrayBoundsCheck
The GenArrayBoundsCheck uses args registers to put array_length and
index as a parameter to out call. To ensure that we do not corrupt
register values there is a check whether need arg is not busy.
We need to use reg num comparison instead of reg comparison.
Change-Id: I260f02d1c155b69be8652dee2e89f3b63d15297c
Signed-off-by: Serguei Katkov <serguei.i.katkov@intel.com>
Brian Carlstrom [Sat, 28 Jun 2014 20:27:03 +0000 (20:27 +0000)]
Merge "Fixed gdb support and added some ElfFile functions"
Alex Light [Wed, 18 Jun 2014 17:35:45 +0000 (10:35 -0700)]
Fixed gdb support and added some ElfFile functions
Fixed gdb support so that it would continue working even when debug
symbols or other sections are included in the elf file. Also made it
actually read parts of the DWARF information so it should work even if
there are minor changes to how and where DWARF information is written
out.
Added a dwarf.h file with the dwarf constants.
Added a FindSectionByName function, a FindDynamicSymbol function, and
the ability to specify the mmap protection and flags directly if we are
mapping in the whole file.
Modified elf_writer_quick.cc to use the dwarf constants from dwarf.h.
Change-Id: I09e15c425fab252b331a2e4719863552e8b6b137
Hiroshi Yamauchi [Fri, 27 Jun 2014 23:05:38 +0000 (23:05 +0000)]
Merge "Add read barriers to the constant roots."
Hiroshi Yamauchi [Wed, 25 Jun 2014 21:30:41 +0000 (14:30 -0700)]
Add read barriers to the constant roots.
This change makes it possible to concurrently scan the constant roots
(the roots visited by Runtime::VisitConstantRoots()) such as the class
of java.lang.Class by adding read barriers.
Bug:
12687968
Change-Id: If1afea471c4e1093688d2db37b7f1fc2742edeef