OSDN Git Service

android-x86/art.git
8 years agoMerge "MIPS64: Add java.lang.String.equals intrinsic." am: 34053d1f5a
Andreas Gampe [Thu, 19 Nov 2015 16:25:11 +0000 (16:25 +0000)]
Merge "MIPS64: Add java.lang.String.equals intrinsic." am: 34053d1f5a
am: 41817d467b

* commit '41817d467b3966fa39645a791ca372573caa07d3':
  MIPS64: Add java.lang.String.equals intrinsic.

8 years agoMerge "MIPS64: Add java.lang.String.equals intrinsic."
Andreas Gampe [Thu, 19 Nov 2015 16:19:53 +0000 (16:19 +0000)]
Merge "MIPS64: Add java.lang.String.equals intrinsic."
am: 34053d1f5a

* commit '34053d1f5a9a3d98b5e45d395ed95ba66b518d4d':
  MIPS64: Add java.lang.String.equals intrinsic.

8 years agoMerge "MIPS64: Add java.lang.String.equals intrinsic."
Andreas Gampe [Thu, 19 Nov 2015 16:12:57 +0000 (16:12 +0000)]
Merge "MIPS64: Add java.lang.String.equals intrinsic."

8 years agoMerge "Rename options for shorter names." am: bc58b020c8
Nicolas Geoffray [Thu, 19 Nov 2015 16:05:59 +0000 (16:05 +0000)]
Merge "Rename options for shorter names." am: bc58b020c8
am: b4bfd7f529

* commit 'b4bfd7f529d1376c841b3c079daf57785c6497df':
  Rename options for shorter names.

8 years agoMerge "Rename options for shorter names."
Nicolas Geoffray [Thu, 19 Nov 2015 15:55:17 +0000 (15:55 +0000)]
Merge "Rename options for shorter names."
am: bc58b020c8

* commit 'bc58b020c85d2bb66e21184b8969215d7ea817b0':
  Rename options for shorter names.

8 years agoMerge "Rename options for shorter names."
Nicolas Geoffray [Thu, 19 Nov 2015 15:48:01 +0000 (15:48 +0000)]
Merge "Rename options for shorter names."

8 years agoRename options for shorter names.
Nicolas Geoffray [Thu, 19 Nov 2015 14:25:43 +0000 (14:25 +0000)]
Rename options for shorter names.

Change-Id: I2ea98ead4cd99d6a51cbfa149b0aab5e036ffb96

8 years agoMerge "ARM read barrier support for concurrent GC in Optimizing." am: ee7d4a3d57
Roland Levillain [Thu, 19 Nov 2015 14:13:38 +0000 (14:13 +0000)]
Merge "ARM read barrier support for concurrent GC in Optimizing." am: ee7d4a3d57
am: a88884d62e

* commit 'a88884d62e6ec4a3e56bdba8a7af1865c927d7b2':
  ARM read barrier support for concurrent GC in Optimizing.

8 years agoMerge "ARM read barrier support for concurrent GC in Optimizing."
Roland Levillain [Thu, 19 Nov 2015 14:09:12 +0000 (14:09 +0000)]
Merge "ARM read barrier support for concurrent GC in Optimizing."
am: ee7d4a3d57

* commit 'ee7d4a3d574d8789fb0d1860eba284ae5099f10d':
  ARM read barrier support for concurrent GC in Optimizing.

8 years agoMerge "ARM read barrier support for concurrent GC in Optimizing."
Roland Levillain [Thu, 19 Nov 2015 14:01:37 +0000 (14:01 +0000)]
Merge "ARM read barrier support for concurrent GC in Optimizing."

8 years agoMerge "Fix ClinitCheck pruning." am: d846a2cc45
Vladimir Marko [Thu, 19 Nov 2015 13:22:29 +0000 (13:22 +0000)]
Merge "Fix ClinitCheck pruning." am: d846a2cc45
am: 5719078766

* commit '5719078766c6008a7db488c730c21cbf20f2fd60':
  Fix ClinitCheck pruning.

8 years agoMerge "Fix ClinitCheck pruning."
Vladimir Marko [Thu, 19 Nov 2015 13:18:05 +0000 (13:18 +0000)]
Merge "Fix ClinitCheck pruning."
am: d846a2cc45

* commit 'd846a2cc45aae5b1c84b5ac51cdd37a22b8447ff':
  Fix ClinitCheck pruning.

8 years agoMerge "Fix ClinitCheck pruning."
Vladimir Marko [Thu, 19 Nov 2015 13:12:09 +0000 (13:12 +0000)]
Merge "Fix ClinitCheck pruning."

8 years agoFix ClinitCheck pruning.
Vladimir Marko [Fri, 13 Nov 2015 14:47:00 +0000 (14:47 +0000)]
Fix ClinitCheck pruning.

Make sure we merge the ClinitCheck only with LoadClass and
HInvokeStaticOrDirect that is a part of the very same dex
instruction. This fixes incorrect stack traces from class
initializers (wrong dex pcs).

Rewrite the pruning to do all the ClinitCheck merging when
we see the ClinitCheck, instead of merging ClinitCheck into
LoadClass and then LoadClass into HInvokeStaticOrDirect.
When we later see an HInvokeStaticOrDirect with an explicit
check (i.e. not merged), we know that some other instruction
is doing the check and the invoke doesn't need to, so we
mark it as not requiring the check at all. (Previously it
would have been marked as having an implicit check.)

Remove the restriction on merging with inlined invoke static
as this is not necessary anymore. This was a workaround for
    X.test():
       invoke-static C.foo() [1]
    C.foo():
       invoke-static C.bar() [2]
After inlining and GVN we have
    X.test():
       LoadClass C (from [1])
       ClinitCheck C (from [1], to be merged to LoadClass)
       InvokeStaticOrDirect C.bar() (from [2])
and the LoadClass must not be merged into the invoke as this
would cause the resolution trampoline to see an inlined
frame from the not-yet-loaded class C during the stack walk
and try to load the class. However, we're not allowed to
load new classes at that point, so an attempt to do so leads
to an assertion failure. With this CL, LoadClass is not
merged when it comes from a different instruction, so we can
guarantee that all inlined frames seen by the stack walk in
the resolution trampoline belong to already loaded classes.

Change-Id: I2b8da8d4f295355dce17141f0fab2dace126684d

8 years agoMerge "Increase code cache after 1 full collection." am: 69edd0dbce
Nicolas Geoffray [Thu, 19 Nov 2015 11:52:31 +0000 (11:52 +0000)]
Merge "Increase code cache after 1 full collection." am: 69edd0dbce
am: 5e6c35e00d

* commit '5e6c35e00de5b2d8e3172aeaa2f2e4c27d234fac':
  Increase code cache after 1 full collection.

8 years agoMerge "Increase code cache after 1 full collection."
Nicolas Geoffray [Thu, 19 Nov 2015 11:47:58 +0000 (11:47 +0000)]
Merge "Increase code cache after 1 full collection."
am: 69edd0dbce

* commit '69edd0dbce97f786f71596d696e17be0f380f405':
  Increase code cache after 1 full collection.

8 years agoMerge "Increase code cache after 1 full collection."
Nicolas Geoffray [Thu, 19 Nov 2015 11:40:15 +0000 (11:40 +0000)]
Merge "Increase code cache after 1 full collection."

8 years agoMerge "Add jack as a build target for the buildbot." am: a43a851f50
Nicolas Geoffray [Thu, 19 Nov 2015 11:39:05 +0000 (11:39 +0000)]
Merge "Add jack as a build target for the buildbot." am: a43a851f50
am: 9319a694cf

* commit '9319a694cf2c1f162c1042baa3d7d0061c4c4c26':
  Add jack as a build target for the buildbot.

8 years agoMerge "Add jack as a build target for the buildbot."
Nicolas Geoffray [Thu, 19 Nov 2015 11:34:39 +0000 (11:34 +0000)]
Merge "Add jack as a build target for the buildbot."
am: a43a851f50

* commit 'a43a851f508b5034b39b98e838ce2be20298fbf3':
  Add jack as a build target for the buildbot.

8 years agoIncrease code cache after 1 full collection.
Nicolas Geoffray [Wed, 18 Nov 2015 11:15:22 +0000 (11:15 +0000)]
Increase code cache after 1 full collection.

Also add a max capacity option.

Change-Id: Icd442b72e9be0c6b091b588b4c4473c69b7cde10

8 years agoMerge "Add jack as a build target for the buildbot."
Nicolas Geoffray [Thu, 19 Nov 2015 11:29:36 +0000 (11:29 +0000)]
Merge "Add jack as a build target for the buildbot."

8 years agoAdd jack as a build target for the buildbot.
Nicolas Geoffray [Thu, 19 Nov 2015 11:02:50 +0000 (11:02 +0000)]
Add jack as a build target for the buildbot.

This avoids dist targets to try on killing the jack server.

Change-Id: Icb913f3ba70ef4c5abd46ebac56cb283e17f0f12

8 years agoMerge "ART: Change Init{From,Without}Image to return bool" am: 0f0d5f370d
Andreas Gampe [Thu, 19 Nov 2015 06:42:08 +0000 (06:42 +0000)]
Merge "ART: Change Init{From,Without}Image to return bool" am: 0f0d5f370d
am: 1291cfd7bd

* commit '1291cfd7bdd568b38c21a4cf3b57fb86f10534a5':
  ART: Change Init{From,Without}Image to return bool

8 years agoMerge "ART: Change Init{From,Without}Image to return bool"
Andreas Gampe [Thu, 19 Nov 2015 06:37:26 +0000 (06:37 +0000)]
Merge "ART: Change Init{From,Without}Image to return bool"
am: 0f0d5f370d

* commit '0f0d5f370dca8bbdb97c61ea30e1b0476ee7749a':
  ART: Change Init{From,Without}Image to return bool

8 years agoMerge "ART: Change Init{From,Without}Image to return bool"
Andreas Gampe [Thu, 19 Nov 2015 06:27:53 +0000 (06:27 +0000)]
Merge "ART: Change Init{From,Without}Image to return bool"

8 years agoART: Change Init{From,Without}Image to return bool
Andreas Gampe [Tue, 17 Nov 2015 19:52:46 +0000 (11:52 -0800)]
ART: Change Init{From,Without}Image to return bool

Rewrite some CHECKs to return false. For a common failure (missing)
image, this improves the abort (as it's not a runtime abort with
lots of stack traces anymore).

Change-Id: I717b1db74950267ced0ad3bafa1aed1693680062

8 years agoMerge "Add immune spaces abstraction" am: 31c0d484c1
Mathieu Chartier [Thu, 19 Nov 2015 02:09:20 +0000 (02:09 +0000)]
Merge "Add immune spaces abstraction" am: 31c0d484c1
am: 4eeea23e75

* commit '4eeea23e75b52873a2ea8f604543ae2d4e0dc259':
  Add immune spaces abstraction

8 years agoMerge "Add immune spaces abstraction"
Mathieu Chartier [Thu, 19 Nov 2015 02:03:18 +0000 (02:03 +0000)]
Merge "Add immune spaces abstraction"
am: 31c0d484c1

* commit '31c0d484c1f492909c4843c29c08c701f5b6eae9':
  Add immune spaces abstraction

8 years agoMerge "Add immune spaces abstraction"
Mathieu Chartier [Thu, 19 Nov 2015 01:55:31 +0000 (01:55 +0000)]
Merge "Add immune spaces abstraction"

8 years agoAdd immune spaces abstraction
Mathieu Chartier [Tue, 17 Nov 2015 00:05:55 +0000 (16:05 -0800)]
Add immune spaces abstraction

ImmuneSpaces is a set of spaces which are not reclaimable by the GC in
the current collection. This set of spaces does not have requirements
about space adjacency like the old ImmuneRegion. ImmuneSpaces generates
the largest immune region for the GC. Since there is no requirement on
adjacency, it is possible to have multiple non-adjacent applicaton
image files.

For image spaces, we also look at the oat code which is normally after
the application image. In this case, we add the code as part of the
immune region. This is required to have both the boot image and the
zygote space be in the same immune region (for performance reasons).

Bug: 22858531

Change-Id: I5103b31c0e39ad63c594f5557fc848a3b288b43e

8 years agoMerge "Fix an assert in lse." am: 2f99a1c5b7
Mingyao Yang [Wed, 18 Nov 2015 23:57:10 +0000 (23:57 +0000)]
Merge "Fix an assert in lse." am: 2f99a1c5b7
am: 0cf13112c7

* commit '0cf13112c74e1126733d492fff862fd4b2a58ebf':
  Fix an assert in lse.

8 years agoMerge "Fix an assert in lse."
Mingyao Yang [Wed, 18 Nov 2015 23:51:33 +0000 (23:51 +0000)]
Merge "Fix an assert in lse."
am: 2f99a1c5b7

* commit '2f99a1c5b70852533a1c7406c1965d753efc810c':
  Fix an assert in lse.

8 years agoMerge "Fix an assert in lse."
Mingyao Yang [Wed, 18 Nov 2015 23:33:40 +0000 (23:33 +0000)]
Merge "Fix an assert in lse."

8 years agoFix an assert in lse.
Mingyao Yang [Wed, 18 Nov 2015 23:20:37 +0000 (15:20 -0800)]
Fix an assert in lse.

Wrong assert. Just deleted it.

Change-Id: I6f051609d87b2c6da081ee63f783ce99462f8a09

8 years agoMerge "Revert "Revert "Enable store elimination for singleton objects.""" am: b9bbbeb2b0
Mingyao Yang [Wed, 18 Nov 2015 21:42:29 +0000 (21:42 +0000)]
Merge "Revert "Revert "Enable store elimination for singleton objects.""" am: b9bbbeb2b0
am: fde8cc594d

* commit 'fde8cc594d04320676b5927ab42a81e1926752dd':
  Revert "Revert "Enable store elimination for singleton objects.""

8 years agoMerge "Revert "Revert "Enable store elimination for singleton objects."""
Mingyao Yang [Wed, 18 Nov 2015 21:36:44 +0000 (21:36 +0000)]
Merge "Revert "Revert "Enable store elimination for singleton objects."""
am: b9bbbeb2b0

* commit 'b9bbbeb2b05d74cae0fe0682a26b19f5a7e68d8c':
  Revert "Revert "Enable store elimination for singleton objects.""

8 years agoMerge "Revert "Revert "Enable store elimination for singleton objects."""
Mingyao Yang [Wed, 18 Nov 2015 21:29:47 +0000 (21:29 +0000)]
Merge "Revert "Revert "Enable store elimination for singleton objects."""

8 years agoRevert "Revert "Enable store elimination for singleton objects.""
Mingyao Yang [Mon, 2 Nov 2015 18:56:59 +0000 (10:56 -0800)]
Revert "Revert "Enable store elimination for singleton objects.""

This reverts commit 55d02cf056f993aeafebd54e7b7c68c7a48507c9, and
makes the following change:
Currently we leverage loop side effects to decide whether heap values are
killed by the loop. Stores need to be kept if heap values may be killed
by loops and the corresponding loads cannot be eliminated. Similar thing
need to be done for each predecessor when we merge predecessor heap values.
To do that, the HInstanceFieldSet instruction itself is put in the heap
value array instead of the value of the store instruction. The store
instruction may be added to possibly_removed_stores_ first, but can later
be removed from possibly_removed_stores_ when it's found out that the store
needs to be kept due to merging/loop side effects.

Change-Id: I4f7bb1960f7b47240873e00ff1adac46fc102a02

8 years agoMerge "Remove incorrect iterator increment" am: a341377bd5
Mathieu Chartier [Wed, 18 Nov 2015 20:19:12 +0000 (20:19 +0000)]
Merge "Remove incorrect iterator increment" am: a341377bd5
am: 9cc29ef968

* commit '9cc29ef968e6a4fa25618a73cd9d170aec7f8471':
  Remove incorrect iterator increment

8 years agoMerge "Remove incorrect iterator increment"
Mathieu Chartier [Wed, 18 Nov 2015 20:12:30 +0000 (20:12 +0000)]
Merge "Remove incorrect iterator increment"
am: a341377bd5

* commit 'a341377bd5eb7cef471cb29a382e1614523e5a6c':
  Remove incorrect iterator increment

8 years agoMerge "Remove incorrect iterator increment"
Mathieu Chartier [Wed, 18 Nov 2015 20:06:43 +0000 (20:06 +0000)]
Merge "Remove incorrect iterator increment"

8 years agoRemove incorrect iterator increment
Mathieu Chartier [Wed, 18 Nov 2015 18:24:43 +0000 (10:24 -0800)]
Remove incorrect iterator increment

Erase already goes to the next element.

Bug: 25738102
Change-Id: Iea31a7fb27ce9f810acf019a7b59dda7704b8f26

8 years agoMerge "Opt compiler: Arm64 packed-switch jump tables." am: 9231730cd0
Vladimir Marko [Wed, 18 Nov 2015 18:03:42 +0000 (18:03 +0000)]
Merge "Opt compiler: Arm64 packed-switch jump tables." am: 9231730cd0
am: a30022e1e5

* commit 'a30022e1e57dd2c07e738e19f77a80d72eb0d65c':
  Opt compiler: Arm64 packed-switch jump tables.

8 years agoMerge "Opt compiler: Arm64 packed-switch jump tables."
Vladimir Marko [Wed, 18 Nov 2015 17:47:01 +0000 (17:47 +0000)]
Merge "Opt compiler: Arm64 packed-switch jump tables."
am: 9231730cd0

* commit '9231730cd0e285373afd73331168b289309ebee4':
  Opt compiler: Arm64 packed-switch jump tables.

8 years agoMerge "Opt compiler: Arm64 packed-switch jump tables."
Vladimir Marko [Wed, 18 Nov 2015 17:09:04 +0000 (17:09 +0000)]
Merge "Opt compiler: Arm64 packed-switch jump tables."

8 years agoOpt compiler: Arm64 packed-switch jump tables.
Zheng Xu [Wed, 18 Nov 2015 09:46:25 +0000 (17:46 +0800)]
Opt compiler: Arm64 packed-switch jump tables.

In this patch, we set a rough threshold and only generate jump table
with limited number of HIRs in the graph. This is because current VIXL
can only handle Adr with label in the range of +/-1Mb.

Change-Id: I42bff2095ec26caeacc5efc90afebe34e229b518

8 years agoMerge "Fix bogus DCHECK and rename DidForkFromZygote." am: 349baca032
Nicolas Geoffray [Wed, 18 Nov 2015 11:10:47 +0000 (11:10 +0000)]
Merge "Fix bogus DCHECK and rename DidForkFromZygote." am: 349baca032
am: bc13ef68ca

* commit 'bc13ef68ca632818e0686cd6ea0a971dddb1a2d3':
  Fix bogus DCHECK and rename DidForkFromZygote.

8 years agoMerge "Remove DEBUG_JIT from Zygote flags." am: f5dd91e046
Nicolas Geoffray [Wed, 18 Nov 2015 11:06:26 +0000 (11:06 +0000)]
Merge "Remove DEBUG_JIT from Zygote flags." am: f5dd91e046
am: 28e7fab960

* commit '28e7fab96032ca7a2135dd6d665dae83c44ed759':
  Remove DEBUG_JIT from Zygote flags.

8 years agoMerge "Fix bogus DCHECK and rename DidForkFromZygote."
Nicolas Geoffray [Wed, 18 Nov 2015 11:04:46 +0000 (11:04 +0000)]
Merge "Fix bogus DCHECK and rename DidForkFromZygote."
am: 349baca032

* commit '349baca032735e4a386b74709aa94d17f076cbce':
  Fix bogus DCHECK and rename DidForkFromZygote.

8 years agoMerge "Fix bogus DCHECK and rename DidForkFromZygote."
Nicolas Geoffray [Wed, 18 Nov 2015 10:56:51 +0000 (10:56 +0000)]
Merge "Fix bogus DCHECK and rename DidForkFromZygote."

8 years agoMerge "Remove DEBUG_JIT from Zygote flags."
Nicolas Geoffray [Wed, 18 Nov 2015 10:55:15 +0000 (10:55 +0000)]
Merge "Remove DEBUG_JIT from Zygote flags."
am: f5dd91e046

* commit 'f5dd91e0461b5bb0f401a51dee39f92d52b375e7':
  Remove DEBUG_JIT from Zygote flags.

8 years agoMerge "Implement common super type in reference type propagation." am: a4d1b6438f
Calin Juravle [Wed, 18 Nov 2015 10:53:42 +0000 (10:53 +0000)]
Merge "Implement common super type in reference type propagation." am: a4d1b6438f
am: f22e6c9833

* commit 'f22e6c9833507ccf16bda80167339312b9198994':
  Implement common super type in reference type propagation.

8 years agoFix bogus DCHECK and rename DidForkFromZygote.
Nicolas Geoffray [Tue, 17 Nov 2015 13:50:21 +0000 (13:50 +0000)]
Fix bogus DCHECK and rename DidForkFromZygote.

The method can also be called for non-zygote forked processes.

(cherry picked from commit 9d157e48e0abc48f08fd98e4c5e918d029c1b84c)

Change-Id: Id4f57b77c1a7f802f80e066afcf30afecc198bfc

8 years agoMerge "Implement common super type in reference type propagation."
Calin Juravle [Wed, 18 Nov 2015 10:48:19 +0000 (10:48 +0000)]
Merge "Implement common super type in reference type propagation."
am: a4d1b6438f

* commit 'a4d1b6438ffaa68307480e8bb40cd18842daa2f3':
  Implement common super type in reference type propagation.

8 years agoMerge "Remove DEBUG_JIT from Zygote flags."
Nicolas Geoffray [Wed, 18 Nov 2015 10:47:50 +0000 (10:47 +0000)]
Merge "Remove DEBUG_JIT from Zygote flags."

8 years agoMerge "Support deoptimization only to set vreg" am: a7a3ba792d
Sebastien Hertz [Wed, 18 Nov 2015 10:42:49 +0000 (10:42 +0000)]
Merge "Support deoptimization only to set vreg" am: a7a3ba792d
am: 5e939d8825

* commit '5e939d8825fbbdd6872bdca4eda630cb28a8d49f':
  Support deoptimization only to set vreg

8 years agoMerge "Implement common super type in reference type propagation."
Calin Juravle [Wed, 18 Nov 2015 10:41:41 +0000 (10:41 +0000)]
Merge "Implement common super type in reference type propagation."

8 years agoMerge "Support deoptimization only to set vreg"
Sebastien Hertz [Wed, 18 Nov 2015 10:37:48 +0000 (10:37 +0000)]
Merge "Support deoptimization only to set vreg"
am: a7a3ba792d

* commit 'a7a3ba792d608535e4d53ccc3b7a89d110609f12':
  Support deoptimization only to set vreg

8 years agoMerge "Support deoptimization only to set vreg"
Sebastien Hertz [Wed, 18 Nov 2015 10:29:22 +0000 (10:29 +0000)]
Merge "Support deoptimization only to set vreg"

8 years agoMerge "Fix StackVisitor::GetVReg for reference in shadow frame" am: 3e1ff83fb2
Sebastien Hertz [Wed, 18 Nov 2015 10:27:27 +0000 (10:27 +0000)]
Merge "Fix StackVisitor::GetVReg for reference in shadow frame" am: 3e1ff83fb2
am: 64a21f9904

* commit '64a21f990473039a1454d301c3e133416a1ad992':
  Fix StackVisitor::GetVReg for reference in shadow frame

8 years agoMerge "Fix StackVisitor::GetVReg for reference in shadow frame"
Sebastien Hertz [Wed, 18 Nov 2015 10:22:29 +0000 (10:22 +0000)]
Merge "Fix StackVisitor::GetVReg for reference in shadow frame"
am: 3e1ff83fb2

* commit '3e1ff83fb210818df66b7a0a7bc70dca6c7b9d47':
  Fix StackVisitor::GetVReg for reference in shadow frame

8 years agoMerge "Fix StackVisitor::GetVReg for reference in shadow frame"
Sebastien Hertz [Wed, 18 Nov 2015 10:17:46 +0000 (10:17 +0000)]
Merge "Fix StackVisitor::GetVReg for reference in shadow frame"

8 years agoRemove DEBUG_JIT from Zygote flags.
Nicolas Geoffray [Thu, 5 Nov 2015 11:32:24 +0000 (11:32 +0000)]
Remove DEBUG_JIT from Zygote flags.

The flag is being obsolete by the move to JIT.

(cherry picked from commit 0f042e04efba887557e40f981bd9c41b121c4652)

Change-Id: I32c3183e791690964c00fab02a6ee7bbacf6b665

8 years agoMerge "RosAlloc fast path inline in assembly for x86 32bit." am: cb6638ff66
Hiroshi Yamauchi [Tue, 17 Nov 2015 22:28:18 +0000 (22:28 +0000)]
Merge "RosAlloc fast path inline in assembly for x86 32bit." am: cb6638ff66
am: 48eb86bf6f

* commit '48eb86bf6f744730fa5054f0465eb4d96614ac9d':
  RosAlloc fast path inline in assembly for x86 32bit.

8 years agoMerge "RosAlloc fast path inline in assembly for x86 32bit."
Hiroshi Yamauchi [Tue, 17 Nov 2015 22:22:49 +0000 (22:22 +0000)]
Merge "RosAlloc fast path inline in assembly for x86 32bit."
am: cb6638ff66

* commit 'cb6638ff664e3136ccfee3cffb9307e0d43ffbc1':
  RosAlloc fast path inline in assembly for x86 32bit.

8 years agoMerge "RosAlloc fast path inline in assembly for x86 32bit."
Hiroshi Yamauchi [Tue, 17 Nov 2015 21:53:34 +0000 (21:53 +0000)]
Merge "RosAlloc fast path inline in assembly for x86 32bit."

8 years agoMerge "Refactor some patching logic" am: ed42f392f9
Mathieu Chartier [Tue, 17 Nov 2015 20:31:53 +0000 (20:31 +0000)]
Merge "Refactor some patching logic" am: ed42f392f9
am: faaa970d00

* commit 'faaa970d00a0542326b94e58702856aaa9feaa91':
  Refactor some patching logic

8 years agoMerge "Refactor some patching logic"
Mathieu Chartier [Tue, 17 Nov 2015 20:23:05 +0000 (20:23 +0000)]
Merge "Refactor some patching logic"
am: ed42f392f9

* commit 'ed42f392f9ae19d24ed2e18b60e146da3920cbf9':
  Refactor some patching logic

8 years agoMerge "Refactor some patching logic"
Mathieu Chartier [Tue, 17 Nov 2015 20:10:24 +0000 (20:10 +0000)]
Merge "Refactor some patching logic"

8 years agoARM read barrier support for concurrent GC in Optimizing.
Roland Levillain [Tue, 17 Nov 2015 19:35:12 +0000 (19:35 +0000)]
ARM read barrier support for concurrent GC in Optimizing.

This first implementation uses slow paths to instrument heap
reference loads and GC root loads for the concurrent copying
collector, respectively calling the artReadBarrierSlow and
artReadBarrierForRootSlow runtime entry points.

Notes:
- This implementation does not instrument HInvokeVirtual
  nor HInvokeInterface instructions (for class reference
  loads), as the corresponding read barriers are not stricly
  required with the current concurrent copying collector.
- Intrinsics which may eventually call (on slow path) are
  disabled when read barriers are enabled, as the current
  slow path infrastructure does not support this case.
- When read barriers are enabled, the code generated for a
  HArraySet instruction always go into the array set slow
  path for object arrays (delegating the operation to the
  runtime), as we are lacking a mechanism to keep a
  temporary register live accross a runtime call (needed for
  the instrumentation of type checking code, which requires
  two successive read barriers).

Bug: 12687968
Change-Id: I92e8db414d029f952c07f3d3a98069e46dfdbc2a

8 years agoImplement common super type in reference type propagation.
Calin Juravle [Wed, 11 Nov 2015 16:58:31 +0000 (16:58 +0000)]
Implement common super type in reference type propagation.

Currently only if both types are classes.

Change-Id: I06e98211ead56875a42bd17f099e319b107a50d4

8 years agoMerge "Minor fixes and cleaning of arm64 static and direct calls code." am: a04f57badc
Vladimir Marko [Tue, 17 Nov 2015 17:48:30 +0000 (17:48 +0000)]
Merge "Minor fixes and cleaning of arm64 static and direct calls code." am: a04f57badc
am: 1a669df880

* commit '1a669df880d0bc1f4f930a56c78edeca19160ce7':
  Minor fixes and cleaning of arm64 static and direct calls code.

8 years agoMerge "ART: add kryo to a53 #835769 & #843419 erratum exception list" am: 9013bb031c
Vladimir Marko [Tue, 17 Nov 2015 17:48:21 +0000 (17:48 +0000)]
Merge "ART: add kryo to a53 #835769 & #843419 erratum exception list" am: 9013bb031c
am: 508bb5a032

* commit '508bb5a0326ce112eb45a3164713e0443fe8380f':
  ART: add kryo to a53 #835769 & #843419 erratum exception list

8 years agoMerge "Minor fixes and cleaning of arm64 static and direct calls code."
Vladimir Marko [Tue, 17 Nov 2015 17:45:13 +0000 (17:45 +0000)]
Merge "Minor fixes and cleaning of arm64 static and direct calls code."
am: a04f57badc

* commit 'a04f57badca0a9211d45eb7bde44c1d1e8f159ff':
  Minor fixes and cleaning of arm64 static and direct calls code.

8 years agoMerge "ART: add kryo to a53 #835769 & #843419 erratum exception list"
Vladimir Marko [Tue, 17 Nov 2015 17:45:04 +0000 (17:45 +0000)]
Merge "ART: add kryo to a53 #835769 & #843419 erratum exception list"
am: 9013bb031c

* commit '9013bb031c1c3244e70ae246437604f2c094a671':
  ART: add kryo to a53 #835769 & #843419 erratum exception list

8 years agoMerge "Minor fixes and cleaning of arm64 static and direct calls code."
Vladimir Marko [Tue, 17 Nov 2015 17:40:57 +0000 (17:40 +0000)]
Merge "Minor fixes and cleaning of arm64 static and direct calls code."

8 years agoMerge "ART: add kryo to a53 #835769 & #843419 erratum exception list"
Vladimir Marko [Tue, 17 Nov 2015 17:40:34 +0000 (17:40 +0000)]
Merge "ART: add kryo to a53 #835769 & #843419 erratum exception list"

8 years agoMerge "ART: Refactor GenerateTestAndBranch" am: 3ce45f4e6a
David Brazdil [Tue, 17 Nov 2015 16:54:34 +0000 (16:54 +0000)]
Merge "ART: Refactor GenerateTestAndBranch" am: 3ce45f4e6a
am: 35f0015e7b

* commit '35f0015e7bd25e3769382b32e5e59d3d019efcb5':
  ART: Refactor GenerateTestAndBranch

8 years agoMerge "ART: Refactor GenerateTestAndBranch"
David Brazdil [Tue, 17 Nov 2015 16:51:33 +0000 (16:51 +0000)]
Merge "ART: Refactor GenerateTestAndBranch"
am: 3ce45f4e6a

* commit '3ce45f4e6abd725407a539521f69959a6ac5a9c1':
  ART: Refactor GenerateTestAndBranch

8 years agoMerge "ART: Refactor GenerateTestAndBranch"
David Brazdil [Tue, 17 Nov 2015 16:46:49 +0000 (16:46 +0000)]
Merge "ART: Refactor GenerateTestAndBranch"

8 years agoMerge "Change roots view to "rooted"." am: 886d1040c9
Richard Uhler [Tue, 17 Nov 2015 16:28:14 +0000 (16:28 +0000)]
Merge "Change roots view to "rooted"." am: 886d1040c9
am: f9a02c808f

* commit 'f9a02c808f6b88c1eddd5544ae6ae84bb324ee54':
  Change roots view to "rooted".

8 years agoMerge "Change roots view to "rooted"."
Richard Uhler [Tue, 17 Nov 2015 16:24:22 +0000 (16:24 +0000)]
Merge "Change roots view to "rooted"."
am: 886d1040c9

* commit '886d1040c99b521ca5a2d363242163c17a5776b1':
  Change roots view to "rooted".

8 years agoMerge "Change roots view to "rooted"."
Richard Uhler [Tue, 17 Nov 2015 16:21:12 +0000 (16:21 +0000)]
Merge "Change roots view to "rooted"."

8 years agoART: Refactor GenerateTestAndBranch
David Brazdil [Thu, 12 Nov 2015 18:37:00 +0000 (18:37 +0000)]
ART: Refactor GenerateTestAndBranch

Each code generator implements a method for generating condition
evaluation and branching to arbitrary labels. This patch refactors
it for better clarity but also to generate fewer jumps when the true
branch is the fallthrough successor.

This is preliminary work for implementing HSelect.

Change-Id: Iaa545a5ecbacb761c5aa241fa69140cf6eb5952f

8 years agoSupport deoptimization only to set vreg
Mingyao Yang [Fri, 31 Jul 2015 23:40:24 +0000 (16:40 -0700)]
Support deoptimization only to set vreg

This CL removes the old API that was used to update vreg. We now rely
exclusively on deoptimization to change the value of a vreg (mainly
from the debugger). This allows to have only one mechanism working
with both Quick and Optimizing compilers. It also remove run-test
455-set-vreg which was the only user of the old API.

This CL also renames StackVisitor::SetVReg[Pair]FromDebugger to
StackVisitor::SetVReg[Pair] to reflect that change.

Bug: 25428216
Change-Id: Ib09510185280dbd0f6d02c52549ae9671c187e32

8 years agoFix StackVisitor::GetVReg for reference in shadow frame
Sebastien Hertz [Tue, 17 Nov 2015 09:35:39 +0000 (10:35 +0100)]
Fix StackVisitor::GetVReg for reference in shadow frame

Also fixes 457-regs run-test that used to pass an incorrect
vreg kind.

Bug: 25428216
Change-Id: Ic31b51ca0f72350db6325f23087b06e93055d750

8 years agoRefactor some patching logic
Mathieu Chartier [Fri, 13 Nov 2015 18:42:08 +0000 (10:42 -0800)]
Refactor some patching logic

Reduce duplication since app images in-place relocation will require
this code also.

Bug: 22858531
Change-Id: Ibb901b67267e27ef3bc2a0baff77189d4dcd018a

8 years agoMerge "Add ability to skip run-tests with ART_TEST_RUN_TEST_SKIP." am: 991842a527
Alex Light [Mon, 16 Nov 2015 18:18:26 +0000 (18:18 +0000)]
Merge "Add ability to skip run-tests with ART_TEST_RUN_TEST_SKIP." am: 991842a527
am: 832a89cd79

* commit '832a89cd79b57a9f430533af493e6b5ff8642f8b':
  Add ability to skip run-tests with ART_TEST_RUN_TEST_SKIP.

8 years agoMerge "Add ability to skip run-tests with ART_TEST_RUN_TEST_SKIP."
Alex Light [Mon, 16 Nov 2015 18:14:17 +0000 (18:14 +0000)]
Merge "Add ability to skip run-tests with ART_TEST_RUN_TEST_SKIP."
am: 991842a527

* commit '991842a5273d20695dd5f35eb9a9e28c386c5b4b':
  Add ability to skip run-tests with ART_TEST_RUN_TEST_SKIP.

8 years agoMerge "Add ability to skip run-tests with ART_TEST_RUN_TEST_SKIP."
Alex Light [Mon, 16 Nov 2015 18:10:37 +0000 (18:10 +0000)]
Merge "Add ability to skip run-tests with ART_TEST_RUN_TEST_SKIP."

8 years agoMerge "Ignore NullConstants when computing the type for Phis." am: a663d67500
Calin Juravle [Mon, 16 Nov 2015 17:09:35 +0000 (17:09 +0000)]
Merge "Ignore NullConstants when computing the type for Phis." am: a663d67500
am: 043851a8c0

* commit '043851a8c0f3ffea22cf97f0697df641f74af89e':
  Ignore NullConstants when computing the type for Phis.

8 years agoMerge "Ignore NullConstants when computing the type for Phis."
Calin Juravle [Mon, 16 Nov 2015 17:05:40 +0000 (17:05 +0000)]
Merge "Ignore NullConstants when computing the type for Phis."
am: a663d67500

* commit 'a663d67500be03df7708afc059f135d2be76ef6e':
  Ignore NullConstants when computing the type for Phis.

8 years agoMerge "Ignore NullConstants when computing the type for Phis."
Calin Juravle [Mon, 16 Nov 2015 17:00:23 +0000 (17:00 +0000)]
Merge "Ignore NullConstants when computing the type for Phis."

8 years agoMerge "Implemented control of "export only" feature in dexdump." am: a445f7afbe
Aart Bik [Mon, 16 Nov 2015 16:48:26 +0000 (16:48 +0000)]
Merge "Implemented control of "export only" feature in dexdump." am: a445f7afbe
am: 9f3d8714d0

* commit '9f3d8714d04af59f76d2687919c5c4e71823f623':
  Implemented control of "export only" feature in dexdump.

8 years agoMerge "Implemented control of "export only" feature in dexdump."
Aart Bik [Mon, 16 Nov 2015 16:44:52 +0000 (16:44 +0000)]
Merge "Implemented control of "export only" feature in dexdump."
am: a445f7afbe

* commit 'a445f7afbe113186de97007891307065109a6b84':
  Implemented control of "export only" feature in dexdump.

8 years agoMerge "Implemented control of "export only" feature in dexdump."
Aart Bik [Mon, 16 Nov 2015 16:41:21 +0000 (16:41 +0000)]
Merge "Implemented control of "export only" feature in dexdump."

8 years agoMerge "Mark kQuickReadBarrierForRootSlow as direct entry point on MIPS." am: 72cc929186
Roland Levillain [Mon, 16 Nov 2015 16:18:20 +0000 (16:18 +0000)]
Merge "Mark kQuickReadBarrierForRootSlow as direct entry point on MIPS." am: 72cc929186
am: 95d1c7b823

* commit '95d1c7b82394ee8e3891ae58f0020488713668ef':
  Mark kQuickReadBarrierForRootSlow as direct entry point on MIPS.

8 years agoMerge "Mark kQuickReadBarrierForRootSlow as direct entry point on MIPS."
Roland Levillain [Mon, 16 Nov 2015 16:16:09 +0000 (16:16 +0000)]
Merge "Mark kQuickReadBarrierForRootSlow as direct entry point on MIPS."
am: 72cc929186

* commit '72cc92918665acb262f69e56be984e24bd15a223':
  Mark kQuickReadBarrierForRootSlow as direct entry point on MIPS.

8 years agoMerge "Mark kQuickReadBarrierForRootSlow as direct entry point on MIPS."
Roland Levillain [Mon, 16 Nov 2015 16:09:48 +0000 (16:09 +0000)]
Merge "Mark kQuickReadBarrierForRootSlow as direct entry point on MIPS."

8 years agoMark kQuickReadBarrierForRootSlow as direct entry point on MIPS.
Roland Levillain [Mon, 16 Nov 2015 15:59:08 +0000 (15:59 +0000)]
Mark kQuickReadBarrierForRootSlow as direct entry point on MIPS.

Change-Id: I35caa32c9773646692706642188ab522237a68ac