OSDN Git Service

android-x86/art.git
10 years agoam 91b9be73: am 0da09a02: Merge "Only allow whitelisted exceptions during dex2oat...
Mathieu Chartier [Mon, 7 Jul 2014 17:33:33 +0000 (17:33 +0000)]
am 91b9be73: am 0da09a02: Merge "Only allow whitelisted exceptions during dex2oat resolving."

* commit '91b9be73b5e39e07bedbdeddfb75a5fca2ec441c':
  Only allow whitelisted exceptions during dex2oat resolving.

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

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

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

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

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

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

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

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

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

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

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

* commit '91c12d5e386ce8325e8f88c1f5e7ed1a542fc986':
  Fix missing dependency in new X86 instruction

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

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

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

* commit 'b75e87635d6a0590142c1cd9e50b743239a53c57':
  x86_64: Fix InstanceofFinal

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

* commit '268e5630626b5227d1d055c42e4934c4a334fbfe':
  x86_64: Fix InstanceofFinal

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

* commit 'aab15eb692b1473c6df7c4c8abae1d7a1433aa71':
  AArch64: Enable Inlining.

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

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

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

* commit '6df42b24316de854c192b216d338f2d14d62520b':
  Aarch64: fix encoding map for kA64Fmov2xS.

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

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

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

* commit '3d0cf88f44f66a4c864ce23da37a83661b4edb80':
  Add make rule to debug interpreter-only mode

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

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

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

* commit 'b2fa7346bf5c5057fa9da9f548577af183f0a4d1':
  More checks in JNI RegisterNatives

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

* commit '43defa4116f8866c6bdde2f6264281d4e3a327db':
  x86_64: Turn on promotion optimization

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

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

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

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

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

* commit 'd83ee1e26f68409f904c3cf0d582c18738e1f39b':
  More checks in JNI RegisterNatives

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

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

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

* commit '04b68149a68abff6d3efff894421a88cdb0a0549':
  x86_64: Fix intrinsics

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

* commit '05b8893fedf121d6a8813d40647bad8456518c58':
  x86_64: Fix intrinsics

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

* commit '8f0843de7b4502d6fdf1ae7f0696b70a0c753f48':
  AArch64: Add few more inline functions

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

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

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

* commit '02fff15a7f15a0b3da65dc276958f3c1711e7022':
  ART: FF-opcodes are target-specific

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

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

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

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

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

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

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

* commit '0c02178865bf25e313d328e49a2ecf914147e6bb':
  Load 64 bit constant into GPR by single instruction for 64bit mode

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

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

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

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

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

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

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

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

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

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

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

10 years agox86_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>
10 years agoam af22b86d: am 555377d5: Merge "Add a local elf.h"
Brian Carlstrom [Wed, 2 Jul 2014 23:13:37 +0000 (23:13 +0000)]
am af22b86d: am 555377d5: Merge "Add a local elf.h"

* commit 'af22b86db1bd410a882d16b6393e1ea2dcdb36ba':
  Add a local elf.h

10 years agoam fc52c06f: am ffcdd9f1: Merge "x86_64: Unify 64-bit check in x86 compiler"
Andreas Gampe [Wed, 2 Jul 2014 23:13:35 +0000 (23:13 +0000)]
am fc52c06f: am ffcdd9f1: Merge "x86_64: Unify 64-bit check in x86 compiler"

* commit 'fc52c06fa204d305df7f6b5aafbc125bd1ed0741':
  x86_64: Unify 64-bit check in x86 compiler

10 years agoam b2f19dd0: am 02c9d40c: Merge "Fix art script for \'clean\' environments."
Nicolas Geoffray [Wed, 2 Jul 2014 23:13:28 +0000 (23:13 +0000)]
am b2f19dd0: am 02c9d40c: Merge "Fix art script for \'clean\' environments."

* commit 'b2f19dd04f592e96af1144e76ff5df34db45574a':
  Fix art script for 'clean' environments.

10 years agoam a517e658: am bcf40221: Merge "ART: JNI ExceptionDescribe crashes if no exception...
Andreas Gampe [Wed, 2 Jul 2014 23:13:27 +0000 (23:13 +0000)]
am a517e658: am bcf40221: Merge "ART: JNI ExceptionDescribe crashes if no exception occurred"

* commit 'a517e6585d3f6d895137872e5ee3f5be970811b6':
  ART: JNI ExceptionDescribe crashes if no exception occurred

10 years agoam 5e11a43d: am 395fa728: Merge "Support longs in the register allocator for x86_64."
Nicolas Geoffray [Wed, 2 Jul 2014 23:13:26 +0000 (23:13 +0000)]
am 5e11a43d: am 395fa728: Merge "Support longs in the register allocator for x86_64."

* commit '5e11a43d17109bf134ebf842c84bdc3404bf8c1b':
  Support longs in the register allocator for x86_64.

10 years agoam 483fc564: am d6ab0464: Merge "Fix art-host rule and art script after build changes."
Nicolas Geoffray [Wed, 2 Jul 2014 23:13:04 +0000 (23:13 +0000)]
am 483fc564: am d6ab0464: Merge "Fix art-host rule and art script after build changes."

* commit '483fc56415287ca075ea6ce7f265bbe0ff26baa3':
  Fix art-host rule and art script after build changes.

10 years agoam 0ab19084: am ea7ead2d: Merge "Relax limits for profiler based compilation options."
Calin Juravle [Wed, 2 Jul 2014 23:13:04 +0000 (23:13 +0000)]
am 0ab19084: am ea7ead2d: Merge "Relax limits for profiler based compilation options."

* commit '0ab19084a5238ba0663535ceb2896ca4fea66e17':
  Relax limits for profiler based compilation options.

10 years agoMerge "Only allow whitelisted exceptions during dex2oat resolving."
Mathieu Chartier [Mon, 7 Jul 2014 16:47:12 +0000 (16:47 +0000)]
Merge "Only allow whitelisted exceptions during dex2oat resolving."

10 years agoOnly 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

10 years agoMerge "AArch64: Enable Inlining."
Andreas Gampe [Fri, 4 Jul 2014 23:19:40 +0000 (23:19 +0000)]
Merge "AArch64: Enable Inlining."

10 years agoAArch64: 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>
10 years agoMerge "Load 64 bit constant into GPR by single instruction for 64bit mode"
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"

10 years agoMerge "Aarch64: fix bug and enable register promotion."
Andreas Gampe [Mon, 7 Jul 2014 15:51:50 +0000 (15:51 +0000)]
Merge "Aarch64: fix bug and enable register promotion."

10 years agoAarch64: 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

10 years agoMerge "Aarch64: fix encoding map for kA64Fmov2xS."
Andreas Gampe [Fri, 4 Jul 2014 18:24:39 +0000 (18:24 +0000)]
Merge "Aarch64: fix encoding map for kA64Fmov2xS."

10 years agoAarch64: 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

10 years agoMerge "Add make rule to debug interpreter-only mode"
Sebastien Hertz [Fri, 4 Jul 2014 09:07:47 +0000 (09:07 +0000)]
Merge "Add make rule to debug interpreter-only mode"

10 years agoAdd 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

10 years agoMerge "Do not attempt to compile on architectures we do not support."
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."

10 years agoDo 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

10 years agoMerge "More checks in JNI RegisterNatives"
Sebastien Hertz [Fri, 4 Jul 2014 08:11:20 +0000 (08:11 +0000)]
Merge "More checks in JNI RegisterNatives"

10 years agoMore 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

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

10 years agox86_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>
10 years agoMerge "Register promotion support for 64-bit targets"
Andreas Gampe [Thu, 3 Jul 2014 20:10:57 +0000 (20:10 +0000)]
Merge "Register promotion support for 64-bit targets"

10 years agoRegister 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

10 years agoMerge "Fix build-art-target and build-art-host rules."
Nicolas Geoffray [Thu, 3 Jul 2014 08:01:16 +0000 (08:01 +0000)]
Merge "Fix build-art-target and build-art-host rules."

10 years agoMerge "Aarch64: fix references handling in Load*Indexed."
Andreas Gampe [Mon, 7 Jul 2014 15:39:09 +0000 (15:39 +0000)]
Merge "Aarch64: fix references handling in Load*Indexed."

10 years agoAarch64: 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

10 years agoMerge "Fix missing dependency in new X86 instruction"
Andreas Gampe [Sun, 6 Jul 2014 17:57:54 +0000 (17:57 +0000)]
Merge "Fix missing dependency in new X86 instruction"

10 years agoFix 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>
10 years agoMerge "x86_64: Fix InstanceofFinal"
Andreas Gampe [Sun, 6 Jul 2014 17:35:52 +0000 (17:35 +0000)]
Merge "x86_64: Fix InstanceofFinal"

10 years agox86_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>
10 years agoMerge "x86_64: Fix intrinsics"
Andreas Gampe [Fri, 4 Jul 2014 01:38:56 +0000 (01:38 +0000)]
Merge "x86_64: Fix intrinsics"

10 years agox86_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

10 years agoMerge "AArch64: Add few more inline functions"
Andreas Gampe [Fri, 4 Jul 2014 00:42:46 +0000 (00:42 +0000)]
Merge "AArch64: Add few more inline functions"

10 years agoAArch64: 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>
10 years agoMerge "ART: FF-opcodes are target-specific"
Andreas Gampe [Thu, 3 Jul 2014 23:24:49 +0000 (23:24 +0000)]
Merge "ART: FF-opcodes are target-specific"

10 years agoART: 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>
10 years agoam 555377d5: Merge "Add a local elf.h"
Brian Carlstrom [Wed, 2 Jul 2014 17:39:36 +0000 (17:39 +0000)]
am 555377d5: Merge "Add a local elf.h"

* commit '555377d55c37db860583e0655f63a1dacb589921':
  Add a local elf.h

10 years agoam ffcdd9f1: Merge "x86_64: Unify 64-bit check in x86 compiler"
Andreas Gampe [Wed, 2 Jul 2014 16:55:15 +0000 (16:55 +0000)]
am ffcdd9f1: Merge "x86_64: Unify 64-bit check in x86 compiler"

* commit 'ffcdd9f13daba70a64bb85688726ae23aa7a6eda':
  x86_64: Unify 64-bit check in x86 compiler

10 years agoFix build-art-target and build-art-host rules.
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

10 years agoam 02c9d40c: Merge "Fix art script for \'clean\' environments."
Nicolas Geoffray [Wed, 2 Jul 2014 15:37:57 +0000 (15:37 +0000)]
am 02c9d40c: Merge "Fix art script for \'clean\' environments."

* commit '02c9d40cb30ce88444b7852114b47b0805517fd8':
  Fix art script for 'clean' environments.

10 years agoam bcf40221: Merge "ART: JNI ExceptionDescribe crashes if no exception occurred"
Andreas Gampe [Wed, 2 Jul 2014 15:37:56 +0000 (15:37 +0000)]
am bcf40221: Merge "ART: JNI ExceptionDescribe crashes if no exception occurred"

* commit 'bcf40221d747c05be7cb78d92a20caff240291d5':
  ART: JNI ExceptionDescribe crashes if no exception occurred

10 years agoam 395fa728: Merge "Support longs in the register allocator for x86_64."
Nicolas Geoffray [Wed, 2 Jul 2014 15:11:01 +0000 (15:11 +0000)]
am 395fa728: Merge "Support longs in the register allocator for x86_64."

* commit '395fa7286ca2c6cd3dd55c0eab5b0f69dc063fb8':
  Support longs in the register allocator for x86_64.

10 years agoam d6ab0464: Merge "Fix art-host rule and art script after build changes."
Nicolas Geoffray [Wed, 2 Jul 2014 14:11:51 +0000 (14:11 +0000)]
am d6ab0464: Merge "Fix art-host rule and art script after build changes."

* commit 'd6ab04646d8eec6f24b200f8649f3d942d9ad17e':
  Fix art-host rule and art script after build changes.

10 years agoam ea7ead2d: Merge "Relax limits for profiler based compilation options."
Calin Juravle [Wed, 2 Jul 2014 13:23:22 +0000 (13:23 +0000)]
am ea7ead2d: Merge "Relax limits for profiler based compilation options."

* commit 'ea7ead2d98d812a4a8967934630cacfba41dc552':
  Relax limits for profiler based compilation options.

10 years agoLoad 64 bit constant into GPR by single instruction for 64bit mode
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>
10 years agoMerge "x86_64: Unify 64-bit check in x86 compiler"
Andreas Gampe [Wed, 2 Jul 2014 16:45:07 +0000 (16:45 +0000)]
Merge "x86_64: Unify 64-bit check in x86 compiler"

10 years agox86_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>
10 years agoam 08d891cd: am 1a7d4bfe: Merge "ART: Fix size error reported by ARM64 backend"
Andreas Gampe [Wed, 2 Jul 2014 02:24:40 +0000 (02:24 +0000)]
am 08d891cd: am 1a7d4bfe: Merge "ART: Fix size error reported by ARM64 backend"

* commit '08d891cd3a14a6ecfc682bab89d86539599b80e4':
  ART: Fix size error reported by ARM64 backend

10 years agoam 1a7d4bfe: Merge "ART: Fix size error reported by ARM64 backend"
Andreas Gampe [Wed, 2 Jul 2014 02:22:03 +0000 (02:22 +0000)]
am 1a7d4bfe: Merge "ART: Fix size error reported by ARM64 backend"

* commit '1a7d4bfeabc5987e95ff8e102f600360c264cf5a':
  ART: Fix size error reported by ARM64 backend

10 years agoam 9eea73a7: am 7a59a249: Merge "ART: FPU instructions support in disassembler"
Andreas Gampe [Tue, 1 Jul 2014 23:32:20 +0000 (23:32 +0000)]
am 9eea73a7: am 7a59a249: Merge "ART: FPU instructions support in disassembler"

* commit '9eea73a7098064990bbbd252c4cd9d7a8fb3baf9':
  ART: FPU instructions support in disassembler

10 years agoam 7a59a249: Merge "ART: FPU instructions support in disassembler"
Andreas Gampe [Tue, 1 Jul 2014 23:26:47 +0000 (23:26 +0000)]
am 7a59a249: Merge "ART: FPU instructions support in disassembler"

* commit '7a59a24987beb52877b72b4e3f841e406413bb6d':
  ART: FPU instructions support in disassembler

10 years agoam c4e5fb61: am 6f9dbb8d: Merge "ART: Quick compiler: More size checks, add TargetReg...
Andreas Gampe [Tue, 1 Jul 2014 22:43:21 +0000 (22:43 +0000)]
am c4e5fb61: am 6f9dbb8d: Merge "ART: Quick compiler: More size checks, add TargetReg variants"

* commit 'c4e5fb61ab916044dadce485177a9ee9a384ac1b':
  ART: Quick compiler: More size checks, add TargetReg variants

10 years agoam 6f9dbb8d: Merge "ART: Quick compiler: More size checks, add TargetReg variants"
Andreas Gampe [Tue, 1 Jul 2014 22:33:44 +0000 (22:33 +0000)]
am 6f9dbb8d: Merge "ART: Quick compiler: More size checks, add TargetReg variants"

* commit '6f9dbb8d4aa72c9b24ea45358751123b6e4c7488':
  ART: Quick compiler: More size checks, add TargetReg variants

10 years agoam 4742ba3f: am e03e5a3c: Merge "x86_64: Simplify FlushIns"
Andreas Gampe [Tue, 1 Jul 2014 21:55:56 +0000 (21:55 +0000)]
am 4742ba3f: am e03e5a3c: Merge "x86_64: Simplify FlushIns"

* commit '4742ba3f2657a50e7e4dc520b6c459b8b939eddf':
  x86_64: Simplify FlushIns

10 years agoam e03e5a3c: Merge "x86_64: Simplify FlushIns"
Andreas Gampe [Tue, 1 Jul 2014 21:50:00 +0000 (21:50 +0000)]
am e03e5a3c: Merge "x86_64: Simplify FlushIns"

* commit 'e03e5a3c90565155e04e4a877f6353d83c9e888d':
  x86_64: Simplify FlushIns

10 years agoMerge "ART: JNI ExceptionDescribe crashes if no exception occurred"
Andreas Gampe [Wed, 2 Jul 2014 15:27:18 +0000 (15:27 +0000)]
Merge "ART: JNI ExceptionDescribe crashes if no exception occurred"

10 years agoART: 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>
10 years agoMerge "x86_64: Simplify FlushIns"
Andreas Gampe [Tue, 1 Jul 2014 21:39:50 +0000 (21:39 +0000)]
Merge "x86_64: Simplify FlushIns"

10 years agox86_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>