OSDN Git Service

android-x86/art.git
10 years agoam ea990fd3: am faa69743: Merge "ART: ReadFully needs to fail when EOF"
Andreas Gampe [Fri, 20 Jun 2014 23:14:32 +0000 (23:14 +0000)]
am ea990fd3: am faa69743: Merge "ART: ReadFully needs to fail when EOF"

* commit 'ea990fd3dee43503de602c0860047db5969ca9aa':
  ART: ReadFully needs to fail when EOF

10 years agoam 9df72deb: am 990f110b: Merge "ART: Fix StoreValue to use RefDisp when necessary."
Andreas Gampe [Fri, 20 Jun 2014 23:14:31 +0000 (23:14 +0000)]
am 9df72deb: am 990f110b: Merge "ART: Fix StoreValue to use RefDisp when necessary."

* commit '9df72deb086531cd962065f5425dffe0b2c7cd30':
  ART: Fix StoreValue to use RefDisp when necessary.

10 years agoam b790ee1e: am 40bdf97b: Merge "Quick compiler: enable Arm64 compilation"
buzbee [Fri, 20 Jun 2014 23:14:30 +0000 (23:14 +0000)]
am b790ee1e: am 40bdf97b: Merge "Quick compiler: enable Arm64 compilation"

* commit 'b790ee1e5d55ddc1b220e8a17fcb2f5443453314':
  Quick compiler: enable Arm64 compilation

10 years agoam 2b1b2ef0: am e617e9a1: Merge "ART: Fix register overlap checks in CopyArgumentRegs"
Bill Buzbee [Fri, 20 Jun 2014 23:14:29 +0000 (23:14 +0000)]
am 2b1b2ef0: am e617e9a1: Merge "ART: Fix register overlap checks in CopyArgumentRegs"

* commit '2b1b2ef0e37b441a0df11e80527723155b77bff3':
  ART: Fix register overlap checks in CopyArgumentRegs

10 years agoam f649d36f: am 8d16f203: Merge "Add more read barriers for JNI roots."
Hiroshi Yamauchi [Fri, 20 Jun 2014 23:14:28 +0000 (23:14 +0000)]
am f649d36f: am 8d16f203: Merge "Add more read barriers for JNI roots."

* commit 'f649d36fb7687a26575badc85f62e2b0373f10ad':
  Add more read barriers for JNI roots.

10 years agoam faa69743: Merge "ART: ReadFully needs to fail when EOF"
Andreas Gampe [Fri, 20 Jun 2014 22:40:32 +0000 (22:40 +0000)]
am faa69743: Merge "ART: ReadFully needs to fail when EOF"

* commit 'faa69743dc3e2c115d3807ada4a51951092d62a0':
  ART: ReadFully needs to fail when EOF

10 years agoam 990f110b: Merge "ART: Fix StoreValue to use RefDisp when necessary."
Andreas Gampe [Fri, 20 Jun 2014 22:40:31 +0000 (22:40 +0000)]
am 990f110b: Merge "ART: Fix StoreValue to use RefDisp when necessary."

* commit '990f110b45127055d99fe894afb1ae4cfd92046c':
  ART: Fix StoreValue to use RefDisp when necessary.

10 years agoam 40bdf97b: Merge "Quick compiler: enable Arm64 compilation"
buzbee [Fri, 20 Jun 2014 22:40:20 +0000 (22:40 +0000)]
am 40bdf97b: Merge "Quick compiler: enable Arm64 compilation"

* commit '40bdf97beffc4d85c966965bdbe81b243141312b':
  Quick compiler: enable Arm64 compilation

10 years agoam e617e9a1: Merge "ART: Fix register overlap checks in CopyArgumentRegs"
Bill Buzbee [Fri, 20 Jun 2014 22:40:19 +0000 (22:40 +0000)]
am e617e9a1: Merge "ART: Fix register overlap checks in CopyArgumentRegs"

* commit 'e617e9a1e5c70bd3fd1e68056fa4090a3486a0b7':
  ART: Fix register overlap checks in CopyArgumentRegs

10 years agoam 8d16f203: Merge "Add more read barriers for JNI roots."
Hiroshi Yamauchi [Fri, 20 Jun 2014 22:40:18 +0000 (22:40 +0000)]
am 8d16f203: Merge "Add more read barriers for JNI roots."

* commit '8d16f203d40ab4018986baa018e52185ad05dae6':
  Add more read barriers for JNI roots.

10 years agoam 18687abd: am 2d2d6bb1: Merge "ART: Do not try to pretty-print method in dex file"
Andreas Gampe [Fri, 20 Jun 2014 10:24:39 +0000 (10:24 +0000)]
am 18687abd: am 2d2d6bb1: Merge "ART: Do not try to pretty-print method in dex file"

* commit '18687abd786ca0d844ad08c776732543a335153e':
  ART: Do not try to pretty-print method in dex file

10 years agoam 2d2d6bb1: Merge "ART: Do not try to pretty-print method in dex file"
Andreas Gampe [Fri, 20 Jun 2014 09:23:41 +0000 (09:23 +0000)]
am 2d2d6bb1: Merge "ART: Do not try to pretty-print method in dex file"

* commit '2d2d6bb1ff8692efdddf104dabfb4a2d39877ff6':
  ART: Do not try to pretty-print method in dex file

10 years agoam f77b5f33: am 6d90efa6: Merge "ART: Method verifier needs to check 2-reg values"
Andreas Gampe [Fri, 20 Jun 2014 03:47:05 +0000 (03:47 +0000)]
am f77b5f33: am 6d90efa6: Merge "ART: Method verifier needs to check 2-reg values"

* commit 'f77b5f334fc9aa7db86069a297f4a3781b53caf1':
  ART: Method verifier needs to check 2-reg values

10 years agoam 6d90efa6: Merge "ART: Method verifier needs to check 2-reg values"
Andreas Gampe [Fri, 20 Jun 2014 03:44:02 +0000 (03:44 +0000)]
am 6d90efa6: Merge "ART: Method verifier needs to check 2-reg values"

* commit '6d90efa6a67a0de0dc6136874b3d9797c778e912':
  ART: Method verifier needs to check 2-reg values

10 years agoMerge "Quick compiler: enable Arm64 compilation"
buzbee [Fri, 20 Jun 2014 19:45:44 +0000 (19:45 +0000)]
Merge "Quick compiler: enable Arm64 compilation"

10 years agoQuick compiler: enable Arm64 compilation
buzbee [Thu, 19 Jun 2014 23:08:48 +0000 (16:08 -0700)]
Quick compiler: enable Arm64 compilation

Change-Id: I19058defaff1c60b4b6b4d1ad82e0a42d50506a6

10 years agoMerge "ART: Method verifier needs to check 2-reg values"
Andreas Gampe [Fri, 20 Jun 2014 03:39:07 +0000 (03:39 +0000)]
Merge "ART: Method verifier needs to check 2-reg values"

10 years agoMerge "ART: Fix StoreValue to use RefDisp when necessary."
Andreas Gampe [Fri, 20 Jun 2014 19:53:22 +0000 (19:53 +0000)]
Merge "ART: Fix StoreValue to use RefDisp when necessary."

10 years agoART: Fix StoreValue to use RefDisp when necessary.
Andreas Gampe [Fri, 20 Jun 2014 19:48:12 +0000 (12:48 -0700)]
ART: Fix StoreValue to use RefDisp when necessary.

Split from https://android-review.googlesource.com/#/c/98605

Change-Id: Ib3a03428ddbec659591b838404bbfa1553fe18e9

10 years agoMerge "Add more read barriers for JNI roots."
Hiroshi Yamauchi [Fri, 20 Jun 2014 19:30:53 +0000 (19:30 +0000)]
Merge "Add more read barriers for JNI roots."

10 years agoAdd more read barriers for JNI roots.
Hiroshi Yamauchi [Wed, 18 Jun 2014 20:47:35 +0000 (13:47 -0700)]
Add more read barriers for JNI roots.

To make it possible to concurrently scan the JNI global roots (that
is, the roots visited by JavaVMExt::VisitRoots()), add read barriers
to the indirect reference table and the reference table.

Also, add read barriers to the jmethodID/jfieldID decode routines
(ScopedObjectAccessAlreadyRunnable::DecodeField/DecodeMethod) so that
we can concurrently handle (encoded) fields and methods.

Bug: 12687968
Change-Id: I3df4e4e622a572ff0ea8d44b2dc70a4d6b3ba058

10 years agoMerge "ART: ReadFully needs to fail when EOF"
Andreas Gampe [Fri, 20 Jun 2014 19:53:56 +0000 (19:53 +0000)]
Merge "ART: ReadFully needs to fail when EOF"

10 years agoART: ReadFully needs to fail when EOF
Andreas Gampe [Fri, 20 Jun 2014 17:45:30 +0000 (10:45 -0700)]
ART: ReadFully needs to fail when EOF

Besides an explicit error, we should stop trying when we unexpectedly
reach the end of the file.

Change-Id: I16d601e1b5bcbc39cb8c4dd7fd3dbb7d69016579

10 years agoMerge "ART: Fix register overlap checks in CopyArgumentRegs"
Bill Buzbee [Fri, 20 Jun 2014 19:42:30 +0000 (19:42 +0000)]
Merge "ART: Fix register overlap checks in CopyArgumentRegs"

10 years agoART: Fix register overlap checks in CopyArgumentRegs
Andreas Gampe [Fri, 20 Jun 2014 18:34:17 +0000 (11:34 -0700)]
ART: Fix register overlap checks in CopyArgumentRegs

This is a make-shift CL. Expect this to be replaced by a reworked
implementation.

Change-Id: Ia74697d1436efd2971bc4c791fabed66d2e9d72d

10 years agoMerge "ART: Do not try to pretty-print method in dex file"
Andreas Gampe [Fri, 20 Jun 2014 05:58:42 +0000 (05:58 +0000)]
Merge "ART: Do not try to pretty-print method in dex file"

10 years agoART: Do not try to pretty-print method in dex file
Andreas Gampe [Fri, 20 Jun 2014 03:24:22 +0000 (20:24 -0700)]
ART: Do not try to pretty-print method in dex file

The code is called in verification when it is not clear yet whether
structures are valid. Simplify warning message.

Bug: 15754233
Change-Id: I85858a71143f41444ce9f00536d901c268afe547

10 years agoART: Method verifier needs to check 2-reg values
Andreas Gampe [Fri, 20 Jun 2014 00:29:48 +0000 (17:29 -0700)]
ART: Method verifier needs to check 2-reg values

The method verifier did not check against the second register
for a J or D parameter from a method signature.

The register line had a wrong DCHECK that did not catch this even
in debug mode.

Bug: 15751498
Change-Id: Ic6af08bf4704b3ab0f308dd9f0da28691a4cb024

10 years agoam b68bb3cb: am 4a47f829: Merge "Quick compiler: remove Arm64 "EXPERIMENTAL" filter"
buzbee [Thu, 19 Jun 2014 23:17:17 +0000 (23:17 +0000)]
am b68bb3cb: am 4a47f829: Merge "Quick compiler: remove Arm64 "EXPERIMENTAL" filter"

* commit 'b68bb3cb4e98777c59daf79b5529acd15bf1b4e7':
  Quick compiler: remove Arm64 "EXPERIMENTAL" filter

10 years agoam 4a47f829: Merge "Quick compiler: remove Arm64 "EXPERIMENTAL" filter"
buzbee [Thu, 19 Jun 2014 23:13:45 +0000 (23:13 +0000)]
am 4a47f829: Merge "Quick compiler: remove Arm64 "EXPERIMENTAL" filter"

* commit '4a47f829ddcb82ca88f2a64da35ceca332066929':
  Quick compiler: remove Arm64 "EXPERIMENTAL" filter

10 years agoam 25791f6f: am a81fe3d5: Merge "x86_64: Several fixes required for enabling promotion"
Bill Buzbee [Thu, 19 Jun 2014 21:54:19 +0000 (21:54 +0000)]
am 25791f6f: am a81fe3d5: Merge "x86_64: Several fixes required for enabling promotion"

* commit '25791f6fc4c9f52196e25c882e8e6201616ab69e':
  x86_64: Several fixes required for enabling promotion

10 years agoam a81fe3d5: Merge "x86_64: Several fixes required for enabling promotion"
Bill Buzbee [Thu, 19 Jun 2014 21:51:29 +0000 (21:51 +0000)]
am a81fe3d5: Merge "x86_64: Several fixes required for enabling promotion"

* commit 'a81fe3d512ef846aad3398222afd1f0588bbaf7c':
  x86_64: Several fixes required for enabling promotion

10 years agoam b18c42d2: am 7133659e: Merge "x86_64: Fix neg_double"
Bill Buzbee [Thu, 19 Jun 2014 21:29:15 +0000 (21:29 +0000)]
am b18c42d2: am 7133659e: Merge "x86_64: Fix neg_double"

* commit 'b18c42d268a286079324e5f11ed501804972f61d':
  x86_64: Fix neg_double

10 years agoam 7133659e: Merge "x86_64: Fix neg_double"
Bill Buzbee [Thu, 19 Jun 2014 21:26:12 +0000 (21:26 +0000)]
am 7133659e: Merge "x86_64: Fix neg_double"

* commit '7133659eeea45e391aa12affea75e39e8c300eb0':
  x86_64: Fix neg_double

10 years agoam e05fc9df: am 202e7478: Merge "ART: Log information when skipping method during...
Andreas Gampe [Thu, 19 Jun 2014 20:54:57 +0000 (20:54 +0000)]
am e05fc9df: am 202e7478: Merge "ART: Log information when skipping method during compilation"

* commit 'e05fc9dfe7ec032a59335e0700b402798e00e9fb':
  ART: Log information when skipping method during compilation

10 years agoam 879a6f91: am 4f975b9e: Merge "x86_64: Enable core.oat/boot.oat compilation"
Bill Buzbee [Thu, 19 Jun 2014 20:54:54 +0000 (20:54 +0000)]
am 879a6f91: am 4f975b9e: Merge "x86_64: Enable core.oat/boot.oat compilation"

* commit '879a6f91ca7d3762f43c302e9c051fb361d6d127':
  x86_64: Enable core.oat/boot.oat compilation

10 years agoam cf9cb967: am 70ac0d09: Merge "Add mark compact collector."
Mathieu Chartier [Thu, 19 Jun 2014 20:54:54 +0000 (20:54 +0000)]
am cf9cb967: am 70ac0d09: Merge "Add mark compact collector."

* commit 'cf9cb9670625a5eefe699069db1e7137191d6c74':
  Add mark compact collector.

10 years agoam 202e7478: Merge "ART: Log information when skipping method during compilation"
Andreas Gampe [Thu, 19 Jun 2014 20:49:52 +0000 (20:49 +0000)]
am 202e7478: Merge "ART: Log information when skipping method during compilation"

* commit '202e74780054ce2b0d87ddf0591cd83b6506de1d':
  ART: Log information when skipping method during compilation

10 years agoMerge "Quick compiler: remove Arm64 "EXPERIMENTAL" filter"
buzbee [Thu, 19 Jun 2014 23:05:02 +0000 (23:05 +0000)]
Merge "Quick compiler: remove Arm64 "EXPERIMENTAL" filter"

10 years agoQuick compiler: remove Arm64 "EXPERIMENTAL" filter
buzbee [Thu, 19 Jun 2014 22:04:12 +0000 (15:04 -0700)]
Quick compiler: remove Arm64 "EXPERIMENTAL" filter

Support for the compilation of all dex opcodes should now exist.
We'll go ahead and leave the filter code in for a new weeks, as it
may be handy if we need a quick workaround.

Change-Id: I8f1857136d78347b7d2337db2c793ad41ad45cb9

10 years agoMerge "x86_64: Fix neg_double"
Bill Buzbee [Thu, 19 Jun 2014 21:17:44 +0000 (21:17 +0000)]
Merge "x86_64: Fix neg_double"

10 years agoMerge "ART: Log information when skipping method during compilation"
Andreas Gampe [Thu, 19 Jun 2014 20:43:58 +0000 (20:43 +0000)]
Merge "ART: Log information when skipping method during compilation"

10 years agoam 4f975b9e: Merge "x86_64: Enable core.oat/boot.oat compilation"
Bill Buzbee [Thu, 19 Jun 2014 20:23:22 +0000 (20:23 +0000)]
am 4f975b9e: Merge "x86_64: Enable core.oat/boot.oat compilation"

* commit '4f975b9e2cb7eb50db27093eaa842b7400e52834':
  x86_64: Enable core.oat/boot.oat compilation

10 years agoam 70ac0d09: Merge "Add mark compact collector."
Mathieu Chartier [Thu, 19 Jun 2014 20:15:39 +0000 (20:15 +0000)]
am 70ac0d09: Merge "Add mark compact collector."

* commit '70ac0d09987eb38cc7f55a6b6f8fd92fa67706ce':
  Add mark compact collector.

10 years agoART: Log information when skipping method during compilation
Andreas Gampe [Thu, 19 Jun 2014 18:34:06 +0000 (11:34 -0700)]
ART: Log information when skipping method during compilation

Add a reason for skipping a method to the log.

Change-Id: I3b31ee64cce6b531b25397f646cdfee650704ad6

10 years agoMerge "x86_64: Enable core.oat/boot.oat compilation"
Bill Buzbee [Thu, 19 Jun 2014 20:18:35 +0000 (20:18 +0000)]
Merge "x86_64: Enable core.oat/boot.oat compilation"

10 years agoam 1d565eae: am 49e5ec42: Merge "ART: Start implementation of OpRegRegRegExtend for...
Andreas Gampe [Thu, 19 Jun 2014 17:35:43 +0000 (17:35 +0000)]
am 1d565eae: am 49e5ec42: Merge "ART: Start implementation of OpRegRegRegExtend for ARM64"

* commit '1d565eae33f7a24e1527cb05719ac7fdc34d280b':
  ART: Start implementation of OpRegRegRegExtend for ARM64

10 years agoam 49e5ec42: Merge "ART: Start implementation of OpRegRegRegExtend for ARM64"
Andreas Gampe [Thu, 19 Jun 2014 17:32:35 +0000 (17:32 +0000)]
am 49e5ec42: Merge "ART: Start implementation of OpRegRegRegExtend for ARM64"

* commit '49e5ec42595b29e233fb92b8bd2cf8ade77c6501':
  ART: Start implementation of OpRegRegRegExtend for ARM64

10 years agoam 9aa8d68b: am 249fa663: Merge "Fix art_quick_instrumentation_exit for ARM64"
Sebastien Hertz [Thu, 19 Jun 2014 15:12:16 +0000 (15:12 +0000)]
am 9aa8d68b: am 249fa663: Merge "Fix art_quick_instrumentation_exit for ARM64"

* commit '9aa8d68bf9ae140b675000151c3e2a34ef33c933':
  Fix art_quick_instrumentation_exit for ARM64

10 years agoam 249fa663: Merge "Fix art_quick_instrumentation_exit for ARM64"
Sebastien Hertz [Thu, 19 Jun 2014 15:03:26 +0000 (15:03 +0000)]
am 249fa663: Merge "Fix art_quick_instrumentation_exit for ARM64"

* commit '249fa66368ba83d1c6b593259a9021861f32897b':
  Fix art_quick_instrumentation_exit for ARM64

10 years agoMerge "x86_64: Several fixes required for enabling promotion"
Bill Buzbee [Thu, 19 Jun 2014 21:44:43 +0000 (21:44 +0000)]
Merge "x86_64: Several fixes required for enabling promotion"

10 years agoam 9c3c686e: am 4ef30e97: Merge "Add an option to enable collecting dex pc in ART...
Calin Juravle [Thu, 19 Jun 2014 12:21:08 +0000 (12:21 +0000)]
am 9c3c686e: am 4ef30e97: Merge "Add an option to enable collecting dex pc in ART profiler"

* commit '9c3c686ef5674260b7858f62e003f57b6ecddc6a':
  Add an option to enable collecting dex pc in ART profiler

10 years agoam 4ef30e97: Merge "Add an option to enable collecting dex pc in ART profiler"
Calin Juravle [Thu, 19 Jun 2014 12:17:38 +0000 (12:17 +0000)]
am 4ef30e97: Merge "Add an option to enable collecting dex pc in ART profiler"

* commit '4ef30e9712ec4d61370a57351232edca723dff6b':
  Add an option to enable collecting dex pc in ART profiler

10 years agox86_64: Fix neg_double
Alexei Zavjalov [Wed, 18 Jun 2014 10:18:36 +0000 (17:18 +0700)]
x86_64: Fix neg_double

In a case, when src and dest regs are the same, previous
implementation of the neg_double bytecode returns an
incorrect result.

This implementation uses shifts and xor and works for both
cases.

Change-Id: I137d9a90298ec225d80435d35558da8abb69cd01
Signed-off-by: Alexei Zavjalov <alexei.zavjalov@intel.com>
10 years agoam 14f742dd: am 995b32cc: Merge "ART: Implicit checks in the compiler are independent...
Andreas Gampe [Thu, 19 Jun 2014 09:54:54 +0000 (09:54 +0000)]
am 14f742dd: am 995b32cc: Merge "ART: Implicit checks in the compiler are independent from Runtime"

* commit '14f742dd6f6b8eb6b0adfd7f33ea0825f7f01d36':
  ART: Implicit checks in the compiler are independent from Runtime

10 years agoam 8501e3d2: am 69070788: Merge "ART: Reserve 8B for float literals on ARM64"
Andreas Gampe [Thu, 19 Jun 2014 09:54:53 +0000 (09:54 +0000)]
am 8501e3d2: am 69070788: Merge "ART: Reserve 8B for float literals on ARM64"

* commit '8501e3d24f92992d94af5e4de3edf0861461ec2a':
  ART: Reserve 8B for float literals on ARM64

10 years agoam 995b32cc: Merge "ART: Implicit checks in the compiler are independent from Runtime"
Andreas Gampe [Thu, 19 Jun 2014 09:22:19 +0000 (09:22 +0000)]
am 995b32cc: Merge "ART: Implicit checks in the compiler are independent from Runtime"

* commit '995b32cc8e94a9730d6cf663a23afc9c997c1771':
  ART: Implicit checks in the compiler are independent from Runtime

10 years agoam 69070788: Merge "ART: Reserve 8B for float literals on ARM64"
Andreas Gampe [Thu, 19 Jun 2014 09:22:16 +0000 (09:22 +0000)]
am 69070788: Merge "ART: Reserve 8B for float literals on ARM64"

* commit '69070788c5ed3e58303355277f746e834e677741':
  ART: Reserve 8B for float literals on ARM64

10 years agoam c648c4cc: am 57eb0b46: Merge "ART: Change rrr add and sub for ARM64"
Andreas Gampe [Thu, 19 Jun 2014 02:52:47 +0000 (02:52 +0000)]
am c648c4cc: am 57eb0b46: Merge "ART: Change rrr add and sub for ARM64"

* commit 'c648c4ccc4206a6f693f338154420f5c297ed86e':
  ART: Change rrr add and sub for ARM64

10 years agoam 167b1eb7: am 48bb32a4: Merge "ART: Target-dependent stack overflow, less check...
Andreas Gampe [Thu, 19 Jun 2014 02:52:46 +0000 (02:52 +0000)]
am 167b1eb7: am 48bb32a4: Merge "ART: Target-dependent stack overflow, less check elision"

* commit '167b1eb7c3b61d30c466b0810e3aa8ba174b04fd':
  ART: Target-dependent stack overflow, less check elision

10 years agoam 57eb0b46: Merge "ART: Change rrr add and sub for ARM64"
Andreas Gampe [Thu, 19 Jun 2014 02:48:00 +0000 (02:48 +0000)]
am 57eb0b46: Merge "ART: Change rrr add and sub for ARM64"

* commit '57eb0b46e4b6ff91b5b74010057d6f733d869bfd':
  ART: Change rrr add and sub for ARM64

10 years agoam 48bb32a4: Merge "ART: Target-dependent stack overflow, less check elision"
Andreas Gampe [Thu, 19 Jun 2014 02:47:59 +0000 (02:47 +0000)]
am 48bb32a4: Merge "ART: Target-dependent stack overflow, less check elision"

* commit '48bb32a4373b42f649d6f7e53f77413acc94cbaf':
  ART: Target-dependent stack overflow, less check elision

10 years agoam 054b29e1: am ef38670c: Merge "Ensure classes are initialized rather than initializ...
Ian Rogers [Thu, 19 Jun 2014 00:14:51 +0000 (00:14 +0000)]
am 054b29e1: am ef38670c: Merge "Ensure classes are initialized rather than initializing."

* commit '054b29e178dd21b546201be17c96266d240c791f':
  Ensure classes are initialized rather than initializing.

10 years agoam ef38670c: Merge "Ensure classes are initialized rather than initializing."
Ian Rogers [Thu, 19 Jun 2014 00:10:05 +0000 (00:10 +0000)]
am ef38670c: Merge "Ensure classes are initialized rather than initializing."

* commit 'ef38670cae8462d579da983c1863f96717cccee6':
  Ensure classes are initialized rather than initializing.

10 years agoam 5e0ec3f5: am 0c29909c: Merge "Assign a lower Locklevel for Mutexes used in QuasiAt...
Ian Rogers [Wed, 18 Jun 2014 23:38:55 +0000 (23:38 +0000)]
am 5e0ec3f5: am 0c29909c: Merge "Assign a lower Locklevel for Mutexes used in QuasiAtomic operations. This fixes the CompilerDriverTest on MIPS. The test was failing when Transaction::Abort() acquired intern_table_lock_ and log_lock_ and subsequently performed QuasiAt

* commit '5e0ec3f57932b942359a9a153e2db35d20c0de98':
  Assign a lower Locklevel for Mutexes used in QuasiAtomic operations. This fixes the CompilerDriverTest on MIPS. The test was failing when Transaction::Abort() acquired intern_table_lock_ and log_lock_ and subsequently performed QuasiAtomic operations.

10 years agoam 0c29909c: Merge "Assign a lower Locklevel for Mutexes used in QuasiAtomic operatio...
Ian Rogers [Wed, 18 Jun 2014 23:35:14 +0000 (23:35 +0000)]
am 0c29909c: Merge "Assign a lower Locklevel for Mutexes used in QuasiAtomic operations. This fixes the CompilerDriverTest on MIPS. The test was failing when Transaction::Abort() acquired intern_table_lock_ and log_lock_ and subsequently performed QuasiAtomic operatio

* commit '0c29909cbde112bc9c04da4ce81421e1a0b39f36':
  Assign a lower Locklevel for Mutexes used in QuasiAtomic operations. This fixes the CompilerDriverTest on MIPS. The test was failing when Transaction::Abort() acquired intern_table_lock_ and log_lock_ and subsequently performed QuasiAtomic operations.

10 years agoMerge "Assign a lower Locklevel for Mutexes used in QuasiAtomic operations. This...
Ian Rogers [Wed, 18 Jun 2014 23:24:40 +0000 (23:24 +0000)]
Merge "Assign a lower Locklevel for Mutexes used in QuasiAtomic operations. This fixes the CompilerDriverTest on MIPS. The test was failing when Transaction::Abort() acquired intern_table_lock_ and log_lock_ and subsequently performed QuasiAtomic operations."

10 years agoMerge "ART: Implicit checks in the compiler are independent from Runtime"
Andreas Gampe [Thu, 19 Jun 2014 06:56:51 +0000 (06:56 +0000)]
Merge "ART: Implicit checks in the compiler are independent from Runtime"

10 years agoART: Implicit checks in the compiler are independent from Runtime
Andreas Gampe [Tue, 17 Jun 2014 23:36:07 +0000 (16:36 -0700)]
ART: Implicit checks in the compiler are independent from Runtime

When cross-compiling, those flags are independent. This is an
initial CL that helps bypass fatal failures when cross-compiling,
as not all architectures support (and have turned on) implicit
checks.

The actual transport for the target architecture when it is
different from the runtime needs to be implemented in a follow-up
CL.

Bug: 15703710
Change-Id: Idc881a9a4abfd38643b862a491a5af9b8841f693

10 years agoMerge "ART: Reserve 8B for float literals on ARM64"
Andreas Gampe [Thu, 19 Jun 2014 06:42:33 +0000 (06:42 +0000)]
Merge "ART: Reserve 8B for float literals on ARM64"

10 years agoART: Reserve 8B for float literals on ARM64
Andreas Gampe [Thu, 19 Jun 2014 06:19:07 +0000 (23:19 -0700)]
ART: Reserve 8B for float literals on ARM64

This is a cludge to make sure literal pools will be 8B aligned.
A better approach would be post-processing - that way we could
pack the floats.

Change-Id: Ia9c6f53e0f6e37b4be79e1efe7f14feb49f2052b

10 years agoMerge "ART: Change rrr add and sub for ARM64"
Andreas Gampe [Thu, 19 Jun 2014 02:39:37 +0000 (02:39 +0000)]
Merge "ART: Change rrr add and sub for ARM64"

10 years agoART: Change rrr add and sub for ARM64
Andreas Gampe [Thu, 19 Jun 2014 00:45:32 +0000 (17:45 -0700)]
ART: Change rrr add and sub for ARM64

OpRegRegImm will fall back to loading a constant into a register
and then doing the operation with three registers. That is, for
example, the case when we allocate large stack frames. However,
the currently chosen operations are add/sub shifted, which does
*not* allow to specify SP (x31 will be interpreted as xzr). Switch
to add/sub extended. There won't be a practical difference, as we
do not call with anything other than 0 shift.

Change-Id: I2b78df9f044d2963e3e890777c855b339952f9f4

10 years agoMerge "ART: Target-dependent stack overflow, less check elision"
Andreas Gampe [Thu, 19 Jun 2014 02:39:21 +0000 (02:39 +0000)]
Merge "ART: Target-dependent stack overflow, less check elision"

10 years agoART: Target-dependent stack overflow, less check elision
Andreas Gampe [Thu, 19 Jun 2014 00:01:15 +0000 (17:01 -0700)]
ART: Target-dependent stack overflow, less check elision

Refactor the separate stack overflow reserved sizes from thread.h
into instruction_set.h and make sure they're used in the compiler.

Refactor the decision on when to elide stack overflow checks:
especially with large interpreter stack frames, it is not a good
idea to elide checks when the frame size is even close to the
reserved size. Currently enforce checks when the frame size is
>= 2KB, but make sure that frame sizes 1KB and below will elide
the checks (number from experience).

Bug: 15728765
Change-Id: I016bfd3d8218170cbccbd123ed5e2203db167c06

10 years agoMerge "Ensure classes are initialized rather than initializing."
Ian Rogers [Wed, 18 Jun 2014 23:56:39 +0000 (23:56 +0000)]
Merge "Ensure classes are initialized rather than initializing."

10 years agoEnsure classes are initialized rather than initializing.
Ian Rogers [Wed, 18 Jun 2014 23:07:20 +0000 (16:07 -0700)]
Ensure classes are initialized rather than initializing.

A class can be being initialized on a different thread, in that case other
threads should block trying to access the class. The initializing state shows
the class is being initialized but not that its safe for other threads to
access. Change occurances of IsInitializing to IsInitialized primarily in
slow-path code.
Bug: 15347354

Change-Id: Ib586d0a385be6086a890dfbf8868d76f16767fac

10 years agoMerge "ART: Start implementation of OpRegRegRegExtend for ARM64"
Andreas Gampe [Thu, 19 Jun 2014 17:23:37 +0000 (17:23 +0000)]
Merge "ART: Start implementation of OpRegRegRegExtend for ARM64"

10 years agoART: Start implementation of OpRegRegRegExtend for ARM64
Andreas Gampe [Thu, 19 Jun 2014 08:10:07 +0000 (01:10 -0700)]
ART: Start implementation of OpRegRegRegExtend for ARM64

We need a sign-extending add for packed-switch and sparse-switch,
as the 32b values are signed offsets. This starts an implementation
that is sufficient for the use cases.

Change-Id: Ib5bae24b902077346a97d5e9e061533f9cdfcdb0

10 years agoam b190b494: am 241fd119: Merge "Fix GetMethodID to find an interface method from...
Brian Carlstrom [Wed, 18 Jun 2014 17:02:17 +0000 (17:02 +0000)]
am b190b494: am 241fd119: Merge "Fix GetMethodID to find an interface method from a super-interface"

* commit 'b190b494f9b11e4d5ff67a4a43c624edfbd89894':
  Fix GetMethodID to find an interface method from a super-interface

10 years agoam 241fd119: Merge "Fix GetMethodID to find an interface method from a super-interface"
Brian Carlstrom [Wed, 18 Jun 2014 16:57:07 +0000 (16:57 +0000)]
am 241fd119: Merge "Fix GetMethodID to find an interface method from a super-interface"

* commit '241fd1192dfc0f7322660343179f9fc0591ed9ff':
  Fix GetMethodID to find an interface method from a super-interface

10 years agox86_64: Enable core.oat/boot.oat compilation
Dmitry Petrochenko [Fri, 13 Jun 2014 08:15:32 +0000 (15:15 +0700)]
x86_64: Enable core.oat/boot.oat compilation

This patch enabled compilation of image.

Change-Id: Idacce4a3898964d3a05762925dba236d7254a254
Signed-off-by: Dmitry Petrochenko <dmitry.petrochenko@intel.com>
10 years agoam c56c4383: am 06729a64: Merge "Add missing parens to Makefile rule."
Nicolas Geoffray [Wed, 18 Jun 2014 15:25:09 +0000 (15:25 +0000)]
am c56c4383: am 06729a64: Merge "Add missing parens to Makefile rule."

* commit 'c56c438324dbb80ac9f604e3edf84b3f6d63008a':
  Add missing parens to Makefile rule.

10 years agoam 06729a64: Merge "Add missing parens to Makefile rule."
Nicolas Geoffray [Wed, 18 Jun 2014 15:21:22 +0000 (15:21 +0000)]
am 06729a64: Merge "Add missing parens to Makefile rule."

* commit '06729a643fe4a2b70f2c9258cd0a8eb23eb45df4':
  Add missing parens to Makefile rule.

10 years agoam 8b005fe1: am 7258eaa0: Merge "Build rules for running run-test with optimizing...
Nicolas Geoffray [Wed, 18 Jun 2014 14:48:07 +0000 (14:48 +0000)]
am 8b005fe1: am 7258eaa0: Merge "Build rules for running run-test with optimizing compiler."

* commit '8b005fe16e7bf6ca66dcbdfdaa3a86bc14ecb26f':
  Build rules for running run-test with optimizing compiler.

10 years agoam 7258eaa0: Merge "Build rules for running run-test with optimizing compiler."
Nicolas Geoffray [Wed, 18 Jun 2014 14:44:32 +0000 (14:44 +0000)]
am 7258eaa0: Merge "Build rules for running run-test with optimizing compiler."

* commit '7258eaa0c78d14c779231c025608dc617a6dca69':
  Build rules for running run-test with optimizing compiler.

10 years agoam b1934a8c: am 9b743ef7: Merge "AArch64: Fix OpCmpMemImmBranch."
Bill Buzbee [Wed, 18 Jun 2014 13:30:04 +0000 (13:30 +0000)]
am b1934a8c: am 9b743ef7: Merge "AArch64: Fix OpCmpMemImmBranch."

* commit 'b1934a8c4dd7dd5ab02e858f207871ef6fde8d1a':
  AArch64: Fix OpCmpMemImmBranch.

10 years agoam 9b743ef7: Merge "AArch64: Fix OpCmpMemImmBranch."
Bill Buzbee [Wed, 18 Jun 2014 13:26:33 +0000 (13:26 +0000)]
am 9b743ef7: Merge "AArch64: Fix OpCmpMemImmBranch."

* commit '9b743ef7955a70952f3e147f9ce8d9d47c9051f9':
  AArch64: Fix OpCmpMemImmBranch.

10 years agox86_64: Several fixes required for enabling promotion
Dmitry Petrochenko [Wed, 18 Jun 2014 12:11:41 +0000 (19:11 +0700)]
x86_64: Several fixes required for enabling promotion

This patch includes x86_64 fixes which solve the issues
reproducible with promotion optimization enabled.

Change-Id: I3a3b0d290380d639705cd58f38b8d62b1eb930d3
Signed-off-by: Serguei Katkov <serguei.i.katkov@intel.com>
Signed-off-by: Dmitry Petrochenko <dmitry.petrochenko@intel.com>
10 years agoam aa47fbf6: am 5969734b: Merge "Add x86 inlined abs method for float/double"
Vladimir Marko [Wed, 18 Jun 2014 11:27:02 +0000 (11:27 +0000)]
am aa47fbf6: am 5969734b: Merge "Add x86 inlined abs method for float/double"

* commit 'aa47fbf6ae2f64d2ab19f0d261e069bfa7984aa7':
  Add x86 inlined abs method for float/double

10 years agoam 5969734b: Merge "Add x86 inlined abs method for float/double"
Vladimir Marko [Wed, 18 Jun 2014 11:23:03 +0000 (11:23 +0000)]
am 5969734b: Merge "Add x86 inlined abs method for float/double"

* commit '5969734b3036a7073c378e0687dd3e90c43d21a7':
  Add x86 inlined abs method for float/double

10 years agoam d0d07fca: am 71921a3f: Merge "x86_64: Clobber r8 to r11 and xmm0 to xmm15"
Ian Rogers [Wed, 18 Jun 2014 10:19:15 +0000 (10:19 +0000)]
am d0d07fca: am 71921a3f: Merge "x86_64: Clobber r8 to r11 and xmm0 to xmm15"

* commit 'd0d07fca560841ae4ac62abca62554ce7e0a041b':
  x86_64: Clobber r8 to r11 and xmm0 to xmm15

10 years agoam 71921a3f: Merge "x86_64: Clobber r8 to r11 and xmm0 to xmm15"
Ian Rogers [Wed, 18 Jun 2014 10:05:09 +0000 (10:05 +0000)]
am 71921a3f: Merge "x86_64: Clobber r8 to r11 and xmm0 to xmm15"

* commit '71921a3ff18ba27061a013465c1b2d850a235dfa':
  x86_64: Clobber r8 to r11 and xmm0 to xmm15

10 years agoam ccb3d4c4: am ad6a3285: Merge "Fix systrace logging, total paused time, and bytes...
Mathieu Chartier [Tue, 17 Jun 2014 23:16:24 +0000 (23:16 +0000)]
am ccb3d4c4: am ad6a3285: Merge "Fix systrace logging, total paused time, and bytes saved message."

* commit 'ccb3d4c490faa651bc18e95836a97c329fb7f42d':
  Fix systrace logging, total paused time, and bytes saved message.

10 years agoam ad6a3285: Merge "Fix systrace logging, total paused time, and bytes saved message."
Mathieu Chartier [Tue, 17 Jun 2014 23:12:01 +0000 (23:12 +0000)]
am ad6a3285: Merge "Fix systrace logging, total paused time, and bytes saved message."

* commit 'ad6a328506e30b7feb8ddfd2867dec7633a3e52b':
  Fix systrace logging, total paused time, and bytes saved message.

10 years agoMerge "Fix systrace logging, total paused time, and bytes saved message."
Mathieu Chartier [Tue, 17 Jun 2014 23:00:01 +0000 (23:00 +0000)]
Merge "Fix systrace logging, total paused time, and bytes saved message."

10 years agoam e3ae7c12: am 4fab5a1f: Merge "Enable background compaction by default"
Mathieu Chartier [Tue, 17 Jun 2014 22:45:45 +0000 (22:45 +0000)]
am e3ae7c12: am 4fab5a1f: Merge "Enable background compaction by default"

* commit 'e3ae7c12c821591b56856dbbc568f7cc4b7bcf47':
  Enable background compaction by default

10 years agoFix systrace logging, total paused time, and bytes saved message.
Mathieu Chartier [Tue, 17 Jun 2014 22:04:40 +0000 (15:04 -0700)]
Fix systrace logging, total paused time, and bytes saved message.

Moved the GC top level systrace logging to be inside of Collector::Run.
This prevents cases where we forgot to call it such as background
compaction. Fixed a unit error regarding total pause time. Fixed
negative bytes saved to use the word "expanded".

Bug: 15702709

Change-Id: Ic2991ecad2daa000d0aee9d559b8bc77d8c160aa

10 years agoam 4fab5a1f: Merge "Enable background compaction by default"
Mathieu Chartier [Tue, 17 Jun 2014 22:42:16 +0000 (22:42 +0000)]
am 4fab5a1f: Merge "Enable background compaction by default"

* commit '4fab5a1f9b34f558d1f4002de73e233d8a0d47b7':
  Enable background compaction by default

10 years agoMerge "Add an option to enable collecting dex pc in ART profiler"
Calin Juravle [Thu, 19 Jun 2014 12:09:33 +0000 (12:09 +0000)]
Merge "Add an option to enable collecting dex pc in ART profiler"