OSDN Git Service

android-x86/art.git
9 years agoam 82aba97c: am fc5b096f: Merge "Fix codegen_test."
Roland Levillain [Tue, 18 Aug 2015 17:53:59 +0000 (17:53 +0000)]
am 82aba97c: am fc5b096f: Merge "Fix codegen_test."

* commit '82aba97c37883f8a239ed1ef85e0a503c600883f':
  Fix codegen_test.

9 years agoam fc5b096f: Merge "Fix codegen_test."
Roland Levillain [Tue, 18 Aug 2015 17:49:18 +0000 (17:49 +0000)]
am fc5b096f: Merge "Fix codegen_test."

* commit 'fc5b096fcddb0ddb2d01e2b28e86ed5a02d37b2e':
  Fix codegen_test.

9 years agoMerge "Fix codegen_test."
Roland Levillain [Tue, 18 Aug 2015 17:43:29 +0000 (17:43 +0000)]
Merge "Fix codegen_test."

9 years agoFix codegen_test.
Roland Levillain [Tue, 18 Aug 2015 17:36:20 +0000 (18:36 +0100)]
Fix codegen_test.

Allow the execution of Thumb-2 code on ARM32 hardware.

Change-Id: I2fec71e39d538249569ffa88435f3198e8c28c01

9 years agoam 05ec299c: am a539ec06: Merge "Introduce support for hardware simulators, starting...
Roland Levillain [Tue, 18 Aug 2015 13:40:07 +0000 (13:40 +0000)]
am 05ec299c: am a539ec06: Merge "Introduce support for hardware simulators, starting with ARM64"

* commit '05ec299c211d372b459839f879f1c4901bfb84e2':
  Introduce support for hardware simulators, starting with ARM64

9 years agoam a539ec06: Merge "Introduce support for hardware simulators, starting with ARM64"
Roland Levillain [Tue, 18 Aug 2015 13:32:44 +0000 (13:32 +0000)]
am a539ec06: Merge "Introduce support for hardware simulators, starting with ARM64"

* commit 'a539ec06503766fcad4be71480c194a225fb037c':
  Introduce support for hardware simulators, starting with ARM64

9 years agoMerge "Introduce support for hardware simulators, starting with ARM64"
Roland Levillain [Tue, 18 Aug 2015 13:28:20 +0000 (13:28 +0000)]
Merge "Introduce support for hardware simulators, starting with ARM64"

9 years agoIntroduce support for hardware simulators, starting with ARM64
Phil Wang [Wed, 29 Jul 2015 07:14:09 +0000 (15:14 +0800)]
Introduce support for hardware simulators, starting with ARM64

Simulator support for ARM64 is implemented with VIXL.
Now codegen_test will also run on all supported hardware simulators.

Change-Id: Idc740f566175d1a23c373ea9292b8fc5ba526d00

9 years agoam e9293889: am 009c34cb: Merge "Fix and improve reference cache mod-union table"
Mathieu Chartier [Tue, 18 Aug 2015 00:53:05 +0000 (00:53 +0000)]
am e9293889: am 009c34cb: Merge "Fix and improve reference cache mod-union table"

* commit 'e9293889cd2dc312a9443e50fc324621ac2eb2eb':
  Fix and improve reference cache mod-union table

9 years agoam 009c34cb: Merge "Fix and improve reference cache mod-union table"
Mathieu Chartier [Tue, 18 Aug 2015 00:44:45 +0000 (00:44 +0000)]
am 009c34cb: Merge "Fix and improve reference cache mod-union table"

* commit '009c34cba875885d9540696f33255a9b355d6e15':
  Fix and improve reference cache mod-union table

9 years agoMerge "Fix and improve reference cache mod-union table"
Mathieu Chartier [Tue, 18 Aug 2015 00:40:27 +0000 (00:40 +0000)]
Merge "Fix and improve reference cache mod-union table"

9 years agoFix and improve reference cache mod-union table
Mathieu Chartier [Sun, 16 Aug 2015 21:37:04 +0000 (14:37 -0700)]
Fix and improve reference cache mod-union table

Improvements:
Remove cards that only contain null references, this can save memory
in some cases.

Fixes:
Fix a bug where the mod-union table didn't properly handle class
loaders in the boot image. This was cause by not adding the new
classes as references. The fix is to leave these cards dirty.

Bug: 23203999
Change-Id: Ib1f1f74154df976dd8abaf2430c6dabd4cae2dbe

9 years agoam b3973efb: am f0917e0e: Merge "ART: Some header cleaning around bit-utils"
Andreas Gampe [Mon, 17 Aug 2015 23:15:13 +0000 (23:15 +0000)]
am b3973efb: am f0917e0e: Merge "ART: Some header cleaning around bit-utils"

* commit 'b3973efb14c9a2c6df95d3e2a288a69fb84d8c08':
  ART: Some header cleaning around bit-utils

9 years agoam f0917e0e: Merge "ART: Some header cleaning around bit-utils"
Andreas Gampe [Mon, 17 Aug 2015 23:04:47 +0000 (23:04 +0000)]
am f0917e0e: Merge "ART: Some header cleaning around bit-utils"

* commit 'f0917e0e4b5a4e10bbe33f23f6ea6f73d36d8c52':
  ART: Some header cleaning around bit-utils

9 years agoMerge "ART: Some header cleaning around bit-utils"
Andreas Gampe [Mon, 17 Aug 2015 22:59:27 +0000 (22:59 +0000)]
Merge "ART: Some header cleaning around bit-utils"

9 years agoART: Some header cleaning around bit-utils
Andreas Gampe [Fri, 14 Aug 2015 15:22:54 +0000 (08:22 -0700)]
ART: Some header cleaning around bit-utils

Try to remove dependencies where they are not necessary.

Change-Id: I5ff35cb17aea369bed3725b1610b50d7eb05b81e

9 years agoam 0d4a564f: am 0d52a673: Merge "Correct for 115-native-bridge hard-coded x86/x86_64...
Andreas Gampe [Mon, 17 Aug 2015 22:37:09 +0000 (22:37 +0000)]
am 0d4a564f: am 0d52a673: Merge "Correct for 115-native-bridge hard-coded x86/x86_64 signal handling values"

* commit '0d4a564fd13a4863e5088d86f16ff201d55e0de3':
  Correct for 115-native-bridge hard-coded x86/x86_64 signal handling values

9 years agoam 0d52a673: Merge "Correct for 115-native-bridge hard-coded x86/x86_64 signal handli...
Andreas Gampe [Mon, 17 Aug 2015 22:30:32 +0000 (22:30 +0000)]
am 0d52a673: Merge "Correct for 115-native-bridge hard-coded x86/x86_64 signal handling values"

* commit '0d52a6738f55d9610f08d3be24270bd0eeb88edc':
  Correct for 115-native-bridge hard-coded x86/x86_64 signal handling values

9 years agoMerge "Correct for 115-native-bridge hard-coded x86/x86_64 signal handling values"
Andreas Gampe [Mon, 17 Aug 2015 22:24:30 +0000 (22:24 +0000)]
Merge "Correct for 115-native-bridge hard-coded x86/x86_64 signal handling values"

9 years agoam 5f6f2a72: am b0aeeb77: Merge "ART: Follow-up fixes"
Andreas Gampe [Mon, 17 Aug 2015 21:29:41 +0000 (21:29 +0000)]
am 5f6f2a72: am b0aeeb77: Merge "ART: Follow-up fixes"

* commit '5f6f2a720decdfffeb75b0300a05f03beabe9bf1':
  ART: Follow-up fixes

9 years agoam c93e4cde: am 228b3973: Merge "ART: Dex2oat lint fix"
Andreas Gampe [Mon, 17 Aug 2015 21:29:40 +0000 (21:29 +0000)]
am c93e4cde: am 228b3973: Merge "ART: Dex2oat lint fix"

* commit 'c93e4cde2472782ae6a30c5fa95d543403101b01':
  ART: Dex2oat lint fix

9 years agoam b0aeeb77: Merge "ART: Follow-up fixes"
Andreas Gampe [Mon, 17 Aug 2015 21:26:44 +0000 (21:26 +0000)]
am b0aeeb77: Merge "ART: Follow-up fixes"

* commit 'b0aeeb777f6c2567a9ea038c9442c1df592b7e04':
  ART: Follow-up fixes

9 years agoam 228b3973: Merge "ART: Dex2oat lint fix"
Andreas Gampe [Mon, 17 Aug 2015 21:21:59 +0000 (21:21 +0000)]
am 228b3973: Merge "ART: Dex2oat lint fix"

* commit '228b3973b2b24783c727a55fda2b4b80375f7207':
  ART: Dex2oat lint fix

9 years agoMerge "ART: Follow-up fixes"
Andreas Gampe [Mon, 17 Aug 2015 21:19:23 +0000 (21:19 +0000)]
Merge "ART: Follow-up fixes"

9 years agoam b0283845: am 18d54cda: Merge "Revert "Revert "ART: DCHECK zero case for CLZ/CTZ"""
Andreas Gampe [Mon, 17 Aug 2015 21:15:41 +0000 (21:15 +0000)]
am b0283845: am 18d54cda: Merge "Revert "Revert "ART: DCHECK zero case for CLZ/CTZ"""

* commit 'b0283845c342fe744c2740f5b7a4d8cdec06fca8':
  Revert "Revert "ART: DCHECK zero case for CLZ/CTZ""

9 years agoMerge "ART: Dex2oat lint fix"
Andreas Gampe [Mon, 17 Aug 2015 21:15:15 +0000 (21:15 +0000)]
Merge "ART: Dex2oat lint fix"

9 years agoART: Dex2oat lint fix
Andreas Gampe [Mon, 17 Aug 2015 21:14:25 +0000 (14:14 -0700)]
ART: Dex2oat lint fix

Lint fix.

Change-Id: Id45bc246645715afaca58c145a70c3b319e5d673

9 years agoCorrect for 115-native-bridge hard-coded x86/x86_64 signal handling values
Agi Csaki [Mon, 17 Aug 2015 20:40:45 +0000 (13:40 -0700)]
Correct for 115-native-bridge hard-coded x86/x86_64 signal handling values

Added inline assembly to ensure that the instruction causing a segfault
in x86/x86_64 for the 115-native-bridge test always has a size of 3 bytes,
in response to a bug that caused the test to fail when this instruction
had variable sizes.

Bug: 22876261
Change-Id: I296e623f170fd1925919bedf913c569a6563e3dc

9 years agoam 18d54cda: Merge "Revert "Revert "ART: DCHECK zero case for CLZ/CTZ"""
Andreas Gampe [Mon, 17 Aug 2015 21:02:01 +0000 (21:02 +0000)]
am 18d54cda: Merge "Revert "Revert "ART: DCHECK zero case for CLZ/CTZ"""

* commit '18d54cda7d9a0e6846a1c7b9b72c07598f3d1855':
  Revert "Revert "ART: DCHECK zero case for CLZ/CTZ""

9 years agoMerge "Revert "Revert "ART: DCHECK zero case for CLZ/CTZ"""
Andreas Gampe [Mon, 17 Aug 2015 20:52:26 +0000 (20:52 +0000)]
Merge "Revert "Revert "ART: DCHECK zero case for CLZ/CTZ"""

9 years agoRevert "Revert "ART: DCHECK zero case for CLZ/CTZ""
Andreas Gampe [Fri, 14 Aug 2015 23:01:49 +0000 (23:01 +0000)]
Revert "Revert "ART: DCHECK zero case for CLZ/CTZ""

This reverts commit 4318d91ea4be673d4deba39d33ac4718d77986a7.

Fix up the lit=-1 case in the arm32 Quick backend; add test case.

Change-Id: I8d0861133db950090ee959f532ede1448683dfa9

9 years agoART: Follow-up fixes
Andreas Gampe [Mon, 17 Aug 2015 20:43:55 +0000 (13:43 -0700)]
ART: Follow-up fixes

Addressing comments for CL 166499, commit
5073fedd553afeb6ccdb49c1a1ab2cc2947c0870.

Change-Id: I359e5a4c026d58d75cb62b90c495796855302b94

9 years agoam 7bba112c: am 381e58a4: Merge "Only apply aarch64 clang WAR to the target."
Dan Albert [Mon, 17 Aug 2015 20:43:53 +0000 (20:43 +0000)]
am 7bba112c: am 381e58a4: Merge "Only apply aarch64 clang WAR to the target."

* commit '7bba112cdcd90f20ee21bd6d5c49202841b47dc6':
  Only apply aarch64 clang WAR to the target.

9 years agoam 58f8a1ca: am 0b9c2424: Merge "Refactor art::Dex2Oat::ParseArg."
Dan Albert [Mon, 17 Aug 2015 20:38:45 +0000 (20:38 +0000)]
am 58f8a1ca: am 0b9c2424: Merge "Refactor art::Dex2Oat::ParseArg."

* commit '58f8a1caa23f02111dee92c67c30d292ef4bc223':
  Refactor art::Dex2Oat::ParseArg.

9 years agoam 381e58a4: Merge "Only apply aarch64 clang WAR to the target."
Dan Albert [Mon, 17 Aug 2015 20:37:04 +0000 (20:37 +0000)]
am 381e58a4: Merge "Only apply aarch64 clang WAR to the target."

* commit '381e58a43c6833f7fa7018cf0545681d3ebea4c3':
  Only apply aarch64 clang WAR to the target.

9 years agoam 0b9c2424: Merge "Refactor art::Dex2Oat::ParseArg."
Dan Albert [Mon, 17 Aug 2015 20:31:53 +0000 (20:31 +0000)]
am 0b9c2424: Merge "Refactor art::Dex2Oat::ParseArg."

* commit '0b9c24247d40e9ff1909fcc89cb01d89f2469721':
  Refactor art::Dex2Oat::ParseArg.

9 years agoMerge "Only apply aarch64 clang WAR to the target."
Dan Albert [Mon, 17 Aug 2015 20:31:27 +0000 (20:31 +0000)]
Merge "Only apply aarch64 clang WAR to the target."

9 years agoOnly apply aarch64 clang WAR to the target.
Dan Albert [Mon, 17 Aug 2015 17:14:51 +0000 (10:14 -0700)]
Only apply aarch64 clang WAR to the target.

Note that the ART_TARGET_CLANG_CFLAGS_$(arch) was actually broken over a
year ago. This patch fixes that and drops the no longer needed
-DNVALGRIND for clang aarch64.

Bug: http://b/23256622
Change-Id: I749db286c0fd533aeb50744b323c1faddf951d79

9 years agoMerge "Refactor art::Dex2Oat::ParseArg."
Dan Albert [Mon, 17 Aug 2015 20:25:39 +0000 (20:25 +0000)]
Merge "Refactor art::Dex2Oat::ParseArg."

9 years agoRefactor art::Dex2Oat::ParseArg.
Roland Levillain [Mon, 17 Aug 2015 19:18:41 +0000 (20:18 +0100)]
Refactor art::Dex2Oat::ParseArg.

Split up art::Dex2Oat::ParseArg to allow
`clang++ -01 -Werror -Wframe-larger-than=1728` to compile
dex2oat.cc.

Change-Id: I0b45f394568765ccd849c87a7cf910507291e65d

9 years agoam 5857bad0: am 5e289b2b: Merge "Make patchoat match offset when given a patched...
Alex Light [Mon, 17 Aug 2015 17:36:23 +0000 (17:36 +0000)]
am 5857bad0: am 5e289b2b: Merge "Make patchoat match offset when given a patched image"

* commit '5857bad032ab01736ec30207c12a3625ca0536ad':
  Make patchoat match offset when given a patched image

9 years agoam 5e289b2b: Merge "Make patchoat match offset when given a patched image"
Alex Light [Mon, 17 Aug 2015 17:29:49 +0000 (17:29 +0000)]
am 5e289b2b: Merge "Make patchoat match offset when given a patched image"

* commit '5e289b2bca7a0bc67fcf00a1017d70db8b363113':
  Make patchoat match offset when given a patched image

9 years agoMerge "Make patchoat match offset when given a patched image"
Alex Light [Mon, 17 Aug 2015 17:20:46 +0000 (17:20 +0000)]
Merge "Make patchoat match offset when given a patched image"

9 years agoam 74d6b323: am 4b7b5fcd: Merge "ART: Rename ArtMethod\'s size and alignment methods."
Vladimir Marko [Mon, 17 Aug 2015 16:09:42 +0000 (16:09 +0000)]
am 74d6b323: am 4b7b5fcd: Merge "ART: Rename ArtMethod\'s size and alignment methods."

* commit '74d6b323b1a9933a3a8b4baae508aea58a83a51b':
  ART: Rename ArtMethod's size and alignment methods.

9 years agoam 4b7b5fcd: Merge "ART: Rename ArtMethod\'s size and alignment methods."
Vladimir Marko [Mon, 17 Aug 2015 16:03:50 +0000 (16:03 +0000)]
am 4b7b5fcd: Merge "ART: Rename ArtMethod\'s size and alignment methods."

* commit '4b7b5fcda0f97ed874de0ccd18940030e6c71f04':
  ART: Rename ArtMethod's size and alignment methods.

9 years agoMerge "ART: Rename ArtMethod's size and alignment methods."
Vladimir Marko [Mon, 17 Aug 2015 15:57:24 +0000 (15:57 +0000)]
Merge "ART: Rename ArtMethod's size and alignment methods."

9 years agoART: Rename ArtMethod's size and alignment methods.
Vladimir Marko [Mon, 17 Aug 2015 11:07:23 +0000 (12:07 +0100)]
ART: Rename ArtMethod's size and alignment methods.

Remove the historical prefix "Object" to avoid confusion
with Java objects.

Change-Id: Ib36422c9a24878d8d4bd757977d99cbf66b3d567

9 years agoam 63c5f38b: am 8ecc1357: Merge "ART: Compress LengthPrefixedArray on 32-bit targets."
Vladimir Marko [Mon, 17 Aug 2015 12:07:21 +0000 (12:07 +0000)]
am 63c5f38b: am 8ecc1357: Merge "ART: Compress LengthPrefixedArray on 32-bit targets."

* commit '63c5f38b54e2600cf5eaf62eb73a0f9f2883d466':
  ART: Compress LengthPrefixedArray on 32-bit targets.

9 years agoam 22a96685: am 6103d962: Merge "Add \'bsr\' instruction to x86 and x86_64"
Roland Levillain [Mon, 17 Aug 2015 12:07:19 +0000 (12:07 +0000)]
am 22a96685: am 6103d962: Merge "Add \'bsr\' instruction to x86 and x86_64"

* commit '22a9668587adace171aeb7b152148654779495a7':
  Add 'bsr' instruction to x86 and x86_64

9 years agoam 8ecc1357: Merge "ART: Compress LengthPrefixedArray on 32-bit targets."
Vladimir Marko [Mon, 17 Aug 2015 12:01:07 +0000 (12:01 +0000)]
am 8ecc1357: Merge "ART: Compress LengthPrefixedArray on 32-bit targets."

* commit '8ecc1357e2c682165467ca8e10c7a748f7554df2':
  ART: Compress LengthPrefixedArray on 32-bit targets.

9 years agoam 6103d962: Merge "Add \'bsr\' instruction to x86 and x86_64"
Roland Levillain [Mon, 17 Aug 2015 12:01:05 +0000 (12:01 +0000)]
am 6103d962: Merge "Add \'bsr\' instruction to x86 and x86_64"

* commit '6103d9624f0d2f3e4a486d9f1b188fddf26c8e7c':
  Add 'bsr' instruction to x86 and x86_64

9 years agoMerge "ART: Compress LengthPrefixedArray on 32-bit targets."
Vladimir Marko [Mon, 17 Aug 2015 10:49:15 +0000 (10:49 +0000)]
Merge "ART: Compress LengthPrefixedArray on 32-bit targets."

9 years agoMerge "Add 'bsr' instruction to x86 and x86_64"
Roland Levillain [Mon, 17 Aug 2015 10:06:07 +0000 (10:06 +0000)]
Merge "Add 'bsr' instruction to x86 and x86_64"

9 years agoART: Compress LengthPrefixedArray on 32-bit targets.
Vladimir Marko [Wed, 12 Aug 2015 18:27:26 +0000 (19:27 +0100)]
ART: Compress LengthPrefixedArray on 32-bit targets.

Previously, the LengthPrefixedArray<ArtMethod> on 32-bit
targets contained a 64-bit length field followed by the
ArtMethod elements with size only a multiple of 4, not 8.
Consequently, an odd-length array broke the alignment for
the following array which would have the 64-bit length
placed at an unaligned address.

To fix that, we make the length field 32-bit and explicitly
pass the alignment information to the LengthPrefixedArray.
This also makes the 32-bit boot image a bit smaller.
On Nexus 5, AOSP, ToT, the field section is 11528B smaller
and the method section is 21036B smaller. 64-bit targets
should see the same savings for the field section but no
difference for the methods section.

Change-Id: I3e03e7b94129025c8a1c117c27645a34dec516d2

9 years agoam 0795b8f7: am 9d0f8210: Merge "Force Clang aarch64 builds to -O1."
Dan Albert [Mon, 17 Aug 2015 01:19:34 +0000 (01:19 +0000)]
am 0795b8f7: am 9d0f8210: Merge "Force Clang aarch64 builds to -O1."

* commit '0795b8f715bb58e31de203e8ec8b6bfb227a5af8':
  Force Clang aarch64 builds to -O1.

9 years agoam 9d0f8210: Merge "Force Clang aarch64 builds to -O1."
Dan Albert [Mon, 17 Aug 2015 01:11:01 +0000 (01:11 +0000)]
am 9d0f8210: Merge "Force Clang aarch64 builds to -O1."

* commit '9d0f8210973aa0d823df3274f63b86116f2c58a8':
  Force Clang aarch64 builds to -O1.

9 years agoMerge "Force Clang aarch64 builds to -O1."
Dan Albert [Sun, 16 Aug 2015 23:57:36 +0000 (23:57 +0000)]
Merge "Force Clang aarch64 builds to -O1."

9 years agoForce Clang aarch64 builds to -O1.
Dan Albert [Sun, 16 Aug 2015 23:49:29 +0000 (16:49 -0700)]
Force Clang aarch64 builds to -O1.

Bug: http://b/23256622
Change-Id: Icab87964576f12a671e255500dec901f3558e7ad

9 years agoam 1cb93f02: am eb9d1f79: ART: Relax verifier aput checking
Andreas Gampe [Sun, 16 Aug 2015 02:54:22 +0000 (02:54 +0000)]
am 1cb93f02: am eb9d1f79: ART: Relax verifier aput checking

* commit '1cb93f02f5338aaaae4c5cbb7680b385b6bedf70':
  ART: Relax verifier aput checking

9 years agoam eb9d1f79: ART: Relax verifier aput checking
Andreas Gampe [Sun, 16 Aug 2015 02:48:03 +0000 (02:48 +0000)]
am eb9d1f79: ART: Relax verifier aput checking

* commit 'eb9d1f79a79e3235f25889a25cdba465a7a0f7bf':
  ART: Relax verifier aput checking

9 years agoam ebb39598: am 799e81c5: Merge "Add -Wno-pessimizing-move to Clang flags"
Stephen Hines [Sat, 15 Aug 2015 02:23:06 +0000 (02:23 +0000)]
am ebb39598: am 799e81c5: Merge "Add -Wno-pessimizing-move to Clang flags"

* commit 'ebb39598ae2ff875ce84ea829bb53bc91652ccaf':
  Add -Wno-pessimizing-move to Clang flags

9 years agoam 799e81c5: Merge "Add -Wno-pessimizing-move to Clang flags"
Stephen Hines [Sat, 15 Aug 2015 02:12:54 +0000 (02:12 +0000)]
am 799e81c5: Merge "Add -Wno-pessimizing-move to Clang flags"

* commit '799e81c5bd283bdaed07c4712a3e9df014230d12':
  Add -Wno-pessimizing-move to Clang flags

9 years agoMerge "Add -Wno-pessimizing-move to Clang flags"
Stephen Hines [Sat, 15 Aug 2015 02:04:56 +0000 (02:04 +0000)]
Merge "Add -Wno-pessimizing-move to Clang flags"

9 years agoam 422bee85: am 63fdedf3: Merge "Optimizing String.Equals as an intrinsic (x86_64)"
Andreas Gampe [Sat, 15 Aug 2015 00:04:27 +0000 (00:04 +0000)]
am 422bee85: am 63fdedf3: Merge "Optimizing String.Equals as an intrinsic (x86_64)"

* commit '422bee85f8204976d911ad512f10e383719809d9':
  Optimizing String.Equals as an intrinsic (x86_64)

9 years agoam 63fdedf3: Merge "Optimizing String.Equals as an intrinsic (x86_64)"
Andreas Gampe [Fri, 14 Aug 2015 23:56:59 +0000 (23:56 +0000)]
am 63fdedf3: Merge "Optimizing String.Equals as an intrinsic (x86_64)"

* commit '63fdedf3c46a42c77713b5cc5abce47defaf5550':
  Optimizing String.Equals as an intrinsic (x86_64)

9 years agoMerge "Optimizing String.Equals as an intrinsic (x86_64)"
Andreas Gampe [Fri, 14 Aug 2015 23:49:45 +0000 (23:49 +0000)]
Merge "Optimizing String.Equals as an intrinsic (x86_64)"

9 years agoam 0fbe90db: am b31de31c: Merge "ART: Fix verifier dumping, add hard-fail dumping"
Andreas Gampe [Fri, 14 Aug 2015 23:33:13 +0000 (23:33 +0000)]
am 0fbe90db: am b31de31c: Merge "ART: Fix verifier dumping, add hard-fail dumping"

* commit '0fbe90db83ae890e48ca9a7c7aa2c943f1bc5158':
  ART: Fix verifier dumping, add hard-fail dumping

9 years agoam b31de31c: Merge "ART: Fix verifier dumping, add hard-fail dumping"
Andreas Gampe [Fri, 14 Aug 2015 22:54:53 +0000 (22:54 +0000)]
am b31de31c: Merge "ART: Fix verifier dumping, add hard-fail dumping"

* commit 'b31de31c4559c8434aa37701ef2f9e0ba3d2ad44':
  ART: Fix verifier dumping, add hard-fail dumping

9 years agoMerge "ART: Fix verifier dumping, add hard-fail dumping"
Andreas Gampe [Fri, 14 Aug 2015 22:47:09 +0000 (22:47 +0000)]
Merge "ART: Fix verifier dumping, add hard-fail dumping"

9 years agoART: Fix verifier dumping, add hard-fail dumping
Andreas Gampe [Fri, 14 Aug 2015 22:37:35 +0000 (15:37 -0700)]
ART: Fix verifier dumping, add hard-fail dumping

Fix the dumping code in the verifier.

Add an option to dump the verifier state on hard failure when
verbose:verifier.

Change-Id: Iccea92fcbcb2301356d86004ea0f5f3e5da84f3c

9 years agoam 3463a56f: am 933fdd0b: Merge "ART: Relax verifier aput checking"
Andreas Gampe [Fri, 14 Aug 2015 21:47:47 +0000 (21:47 +0000)]
am 3463a56f: am 933fdd0b: Merge "ART: Relax verifier aput checking"

* commit '3463a56f4a73fc12f367b52eb9460825795f4a54':
  ART: Relax verifier aput checking

9 years agoam 933fdd0b: Merge "ART: Relax verifier aput checking"
Andreas Gampe [Fri, 14 Aug 2015 21:40:49 +0000 (21:40 +0000)]
am 933fdd0b: Merge "ART: Relax verifier aput checking"

* commit '933fdd0b0e7b1f831033d70b922d1845955caa53':
  ART: Relax verifier aput checking

9 years agoART: Relax verifier aput checking
Andreas Gampe [Fri, 14 Aug 2015 21:07:43 +0000 (14:07 -0700)]
ART: Relax verifier aput checking

When checking on a null array, the cases of aput and aput-wide are
shared between integral and floating point types. Be careful to not
reject a valid program.

Bug: 21867457
Bug: 23201502

(cherry picked from commit 4bf4c78a6e8b7da7cf306e1dd17ff5a55d0c6c98)

Change-Id: I6c54a389c06e40a2dae00995aa16ff08a089e512

9 years agoMerge "ART: Relax verifier aput checking"
Andreas Gampe [Fri, 14 Aug 2015 21:32:53 +0000 (21:32 +0000)]
Merge "ART: Relax verifier aput checking"

9 years agoART: Relax verifier aput checking
Andreas Gampe [Fri, 14 Aug 2015 21:07:43 +0000 (14:07 -0700)]
ART: Relax verifier aput checking

When checking on a null array, the cases of aput and aput-wide are
shared between integral and floating point types. Be careful to not
reject a valid program.

Bug: 21867457
Bug: 23201502
Change-Id: I6c54a389c06e40a2dae00995aa16ff08a089e512

9 years agoMake patchoat match offset when given a patched image
Alex Light [Wed, 12 Aug 2015 01:03:47 +0000 (18:03 -0700)]
Make patchoat match offset when given a patched image

Previously if we gave patchoat a patched image and a already patched
(but improperly relocated) oat file it would not correctly patch the
oat file to the same offset as the image.

Bug: 22599792
Bug: 23119724
Change-Id: I8773022bd75c2e0b7eb529893b147cbd8792bcad

9 years agoam 729829e4: am a0856f51: Merge "Revert "ART: DCHECK zero case for CLZ/CTZ""
Andreas Gampe [Fri, 14 Aug 2015 18:55:27 +0000 (18:55 +0000)]
am 729829e4: am a0856f51: Merge "Revert "ART: DCHECK zero case for CLZ/CTZ""

* commit '729829e435ec95fe230819c4526779b47b0298ba':
  Revert "ART: DCHECK zero case for CLZ/CTZ"

9 years agoam a0856f51: Merge "Revert "ART: DCHECK zero case for CLZ/CTZ""
Andreas Gampe [Fri, 14 Aug 2015 18:46:29 +0000 (18:46 +0000)]
am a0856f51: Merge "Revert "ART: DCHECK zero case for CLZ/CTZ""

* commit 'a0856f5158e35e8cd83b36ece16c58915292653a':
  Revert "ART: DCHECK zero case for CLZ/CTZ"

9 years agoMerge "Revert "ART: DCHECK zero case for CLZ/CTZ""
Andreas Gampe [Fri, 14 Aug 2015 18:39:46 +0000 (18:39 +0000)]
Merge "Revert "ART: DCHECK zero case for CLZ/CTZ""

9 years agoRevert "ART: DCHECK zero case for CLZ/CTZ"
Andreas Gampe [Fri, 14 Aug 2015 18:39:30 +0000 (18:39 +0000)]
Revert "ART: DCHECK zero case for CLZ/CTZ"

This reverts commit 51db2c217052fd6881b81f3ac5162fe88c36dbf0.

Still breaks for arm32. :(

Change-Id: I5fe6fc0cc410cc1c5b6bd68028ce9bf835cb94d5

9 years agoam 0da5ddbe: am b2812de0: Merge "Change SS to use MarkObjectIfNotInToSpace for roots"
Mathieu Chartier [Fri, 14 Aug 2015 18:05:27 +0000 (18:05 +0000)]
am 0da5ddbe: am b2812de0: Merge "Change SS to use MarkObjectIfNotInToSpace for roots"

* commit '0da5ddbe483ec5cc375f6684ea3ddee4ea8855d0':
  Change SS to use MarkObjectIfNotInToSpace for roots

9 years agoam fd0c74a5: am 72eb673b: Merge "ART: Add utility function to dump dex CFG"
Andreas Gampe [Fri, 14 Aug 2015 18:05:26 +0000 (18:05 +0000)]
am fd0c74a5: am 72eb673b: Merge "ART: Add utility function to dump dex CFG"

* commit 'fd0c74a5d3db8cef0fa2b71aed8a3ffd0d6fcdc5':
  ART: Add utility function to dump dex CFG

9 years agoam b2812de0: Merge "Change SS to use MarkObjectIfNotInToSpace for roots"
Mathieu Chartier [Fri, 14 Aug 2015 17:59:26 +0000 (17:59 +0000)]
am b2812de0: Merge "Change SS to use MarkObjectIfNotInToSpace for roots"

* commit 'b2812de049b55dabf6bf39535a5c9ea26d477be0':
  Change SS to use MarkObjectIfNotInToSpace for roots

9 years agoam 72eb673b: Merge "ART: Add utility function to dump dex CFG"
Andreas Gampe [Fri, 14 Aug 2015 17:59:24 +0000 (17:59 +0000)]
am 72eb673b: Merge "ART: Add utility function to dump dex CFG"

* commit '72eb673bf8e2da90f1454cd0591a9c8173ed9213':
  ART: Add utility function to dump dex CFG

9 years agoMerge "Change SS to use MarkObjectIfNotInToSpace for roots"
Mathieu Chartier [Fri, 14 Aug 2015 17:54:21 +0000 (17:54 +0000)]
Merge "Change SS to use MarkObjectIfNotInToSpace for roots"

9 years agoMerge "ART: Add utility function to dump dex CFG"
Andreas Gampe [Fri, 14 Aug 2015 17:51:51 +0000 (17:51 +0000)]
Merge "ART: Add utility function to dump dex CFG"

9 years agoOptimizing String.Equals as an intrinsic (x86_64)
Agi Csaki [Fri, 14 Aug 2015 00:54:54 +0000 (17:54 -0700)]
Optimizing String.Equals as an intrinsic (x86_64)

The fourth implementation of String.Equals. I added an intrinsic
in x86_64 which is similar to the original java implementation
of String.equals: an instanceof check, null check,length check,
and reference equality check followed by a loop comparing strings
four characters at a time.

Interesting Benchmarking Values:

Optimizing Compiler on 64-bit Emulator
        Intrinsic 1-5 Character Strings: 48 ns
        Original 1-5 Character Strings: 56 ns
        Intrinsic 1000+ Character Strings: 4009 ns
        Original 1000+ Character Strings: 4704 ns
        Intrinsic Non-String Argument: 35 ns
        Original Non-String Argument: 42 ns

Bug: 21481923
Change-Id: I17d0d2e24a670a898ab1729669d3990403b9a853

9 years agoChange SS to use MarkObjectIfNotInToSpace for roots
Mathieu Chartier [Fri, 14 Aug 2015 17:37:28 +0000 (10:37 -0700)]
Change SS to use MarkObjectIfNotInToSpace for roots

The roots can be in the to-space since we may visit the declaring
class of an ArtMethod multiple times if it is on the call stack.

Fixes GSS/SS tests for a few test cases.

Change-Id: Iba354340289fc49987d06e70929dadb2f367734b

9 years agoAdd 'bsr' instruction to x86 and x86_64
Mark Mendell [Thu, 13 Aug 2015 01:16:41 +0000 (21:16 -0400)]
Add 'bsr' instruction to x86 and x86_64

Add support for 'bsr' instruction.  Add tests.

Change-Id: I1cd8b30d7f3f5ee7fbeef8124cc6a31bf8ce59d5
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
9 years agoam cdfb1f24: am f67ab129: Merge "Add rep movsw to x86 and x86_64 instructions."
Roland Levillain [Fri, 14 Aug 2015 16:22:40 +0000 (16:22 +0000)]
am cdfb1f24: am f67ab129: Merge "Add rep movsw to x86 and x86_64 instructions."

* commit 'cdfb1f24128167cf2a0db98135941bb57b00313e':
  Add rep movsw to x86 and x86_64 instructions.

9 years agoam f67ab129: Merge "Add rep movsw to x86 and x86_64 instructions."
Roland Levillain [Fri, 14 Aug 2015 16:15:18 +0000 (16:15 +0000)]
am f67ab129: Merge "Add rep movsw to x86 and x86_64 instructions."

* commit 'f67ab129d868b8355a8403a9627f96ac1e41a796':
  Add rep movsw to x86 and x86_64 instructions.

9 years agoMerge "Add rep movsw to x86 and x86_64 instructions."
Roland Levillain [Fri, 14 Aug 2015 16:07:50 +0000 (16:07 +0000)]
Merge "Add rep movsw to x86 and x86_64 instructions."

9 years agoam 37f89746: am d95ab77f: Merge "Revert "Revert "Optimizing String.Equals as an intri...
Andreas Gampe [Fri, 14 Aug 2015 15:34:05 +0000 (15:34 +0000)]
am 37f89746: am d95ab77f: Merge "Revert "Revert "Optimizing String.Equals as an intrinsic (x86)"""

* commit '37f89746c8ed876983dd1bc1a03fd4aff8e3f416':
  Revert "Revert "Optimizing String.Equals as an intrinsic (x86)""

9 years agoam d95ab77f: Merge "Revert "Revert "Optimizing String.Equals as an intrinsic (x86)"""
Andreas Gampe [Fri, 14 Aug 2015 15:28:38 +0000 (15:28 +0000)]
am d95ab77f: Merge "Revert "Revert "Optimizing String.Equals as an intrinsic (x86)"""

* commit 'd95ab77f5db43767fc78f9be42c1dd991033d682':
  Revert "Revert "Optimizing String.Equals as an intrinsic (x86)""

9 years agoMerge "Revert "Revert "Optimizing String.Equals as an intrinsic (x86)"""
Andreas Gampe [Fri, 14 Aug 2015 15:21:14 +0000 (15:21 +0000)]
Merge "Revert "Revert "Optimizing String.Equals as an intrinsic (x86)"""

9 years agoam 3d19257d: am f1dacdd5: Merge "ART: DCHECK zero case for CLZ/CTZ"
Andreas Gampe [Fri, 14 Aug 2015 15:20:22 +0000 (15:20 +0000)]
am 3d19257d: am f1dacdd5: Merge "ART: DCHECK zero case for CLZ/CTZ"

* commit '3d19257d815526539964239f132655211b0daea6':
  ART: DCHECK zero case for CLZ/CTZ

9 years agoam f1dacdd5: Merge "ART: DCHECK zero case for CLZ/CTZ"
Andreas Gampe [Fri, 14 Aug 2015 15:12:33 +0000 (15:12 +0000)]
am f1dacdd5: Merge "ART: DCHECK zero case for CLZ/CTZ"

* commit 'f1dacdd52146841fc69949b3f485922debed9237':
  ART: DCHECK zero case for CLZ/CTZ

9 years agoAdd rep movsw to x86 and x86_64 instructions.
Mark Mendell [Wed, 1 Jul 2015 18:26:52 +0000 (14:26 -0400)]
Add rep movsw to x86 and x86_64 instructions.

Add 'REP MOVSW' as a supported instruction for x86 32 and 64 bit.

Added tests.

Change-Id: I1c615ac1e7fa46c48983c90f791b92be0375c8b8
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
9 years agoMerge "ART: DCHECK zero case for CLZ/CTZ"
Andreas Gampe [Fri, 14 Aug 2015 15:06:46 +0000 (15:06 +0000)]
Merge "ART: DCHECK zero case for CLZ/CTZ"

9 years agoam cf2668fa: am 1cad8c7c: Merge "Fix a bug in the register allocator when allocating...
Nicolas Geoffray [Fri, 14 Aug 2015 11:09:34 +0000 (11:09 +0000)]
am cf2668fa: am 1cad8c7c: Merge "Fix a bug in the register allocator when allocating pairs."

* commit 'cf2668fa8d063d159407612c6b1203390720da8b':
  Fix a bug in the register allocator when allocating pairs.