OSDN Git Service

android-x86/art.git
9 years agoam 7fbaa22e: Merge "ART: Fix the simplifier for add/sub"
Calin Juravle [Thu, 6 Aug 2015 17:58:12 +0000 (17:58 +0000)]
am 7fbaa22e: Merge "ART: Fix the simplifier for add/sub"

* commit '7fbaa22e10979cf17b8c1c0c96bef4919e9d4163':
  ART: Fix the simplifier for add/sub

9 years agoMerge "ART: Fix the simplifier for add/sub"
Calin Juravle [Thu, 6 Aug 2015 17:49:55 +0000 (17:49 +0000)]
Merge "ART: Fix the simplifier for add/sub"

9 years agoART: Fix the simplifier for add/sub
Serguei Katkov [Wed, 5 Aug 2015 11:03:30 +0000 (17:03 +0600)]
ART: Fix the simplifier for add/sub

Instruction simplifier for add/sub should not proceed with floats
because that might cause the incorrect behavior with signed zero.

Change-Id: If0c9bf3931bcbf96b0814f8605a86997aea37145
Signed-off-by: Serguei Katkov <serguei.i.katkov@intel.com>
9 years agoam a27a67c9: Merge "Fix image loading in interpeter-only mode"
Sebastien Hertz [Thu, 6 Aug 2015 14:52:47 +0000 (14:52 +0000)]
am a27a67c9: Merge "Fix image loading in interpeter-only mode"

* commit 'a27a67c98e12cd1a90431704a6d7bcbd546667fd':
  Fix image loading in interpeter-only mode

9 years agoam bc7db535: Merge "Fix DDM reply buffer deallocation"
Sebastien Hertz [Thu, 6 Aug 2015 14:48:55 +0000 (14:48 +0000)]
am bc7db535: Merge "Fix DDM reply buffer deallocation"

* commit 'bc7db5356a68cf44d6497f6956e8a97dc9355b80':
  Fix DDM reply buffer deallocation

9 years agoMerge "Fix image loading in interpeter-only mode"
Sebastien Hertz [Thu, 6 Aug 2015 14:46:41 +0000 (14:46 +0000)]
Merge "Fix image loading in interpeter-only mode"

9 years agoMerge "Fix DDM reply buffer deallocation"
Sebastien Hertz [Thu, 6 Aug 2015 14:43:58 +0000 (14:43 +0000)]
Merge "Fix DDM reply buffer deallocation"

9 years agoFix image loading in interpeter-only mode
Sebastien Hertz [Thu, 6 Aug 2015 10:52:43 +0000 (12:52 +0200)]
Fix image loading in interpeter-only mode

Follow-up https://android-review.googlesource.com/162935. We now need
an ArtMethodVisitor to update entrypoints of methods in the image.

Bug: 22832610
Change-Id: I30ca9c369a73c3372694b446e73afa2e37890a65

9 years agoam 1f3f766d: Merge "Move ArtFields and ArtMethods to be a length prefixed array"
Mathieu Chartier [Thu, 6 Aug 2015 12:33:35 +0000 (12:33 +0000)]
am 1f3f766d: Merge "Move ArtFields and ArtMethods to be a length prefixed array"

* commit '1f3f766d3b365d01f36b85dc19d40f754fa48533':
  Move ArtFields and ArtMethods to be a length prefixed array

9 years agoFix DDM reply buffer deallocation
Sebastien Hertz [Thu, 6 Aug 2015 09:37:02 +0000 (11:37 +0200)]
Fix DDM reply buffer deallocation

Reply buffer is an uint8_t* allocated with new uint8_t[...] so it
must be deallocated with delete[], not free.

Change-Id: Ib5d6387aa63f1e0393113f82602f661bbada4aa2

9 years agoMerge "Move ArtFields and ArtMethods to be a length prefixed array"
Mathieu Chartier [Thu, 6 Aug 2015 03:12:39 +0000 (03:12 +0000)]
Merge "Move ArtFields and ArtMethods to be a length prefixed array"

9 years agoMove ArtFields and ArtMethods to be a length prefixed array
Mathieu Chartier [Thu, 30 Jul 2015 23:20:06 +0000 (16:20 -0700)]
Move ArtFields and ArtMethods to be a length prefixed array

Fixes race conditions between changing method and fields arrays
being seen in the wrong order by the GC.

Bug: 22832610
Change-Id: Ia21d6698f73ba207a6392c3d6b9be2658933073f

9 years agoam 275bc5e5: Merge "ART: Extend ISA features option for (host) run tests"
Andreas Gampe [Wed, 5 Aug 2015 23:38:50 +0000 (23:38 +0000)]
am 275bc5e5: Merge "ART: Extend ISA features option for (host) run tests"

* commit '275bc5e5f318ba6ea1bad6c89c2924d1248b7523':
  ART: Extend ISA features option for (host) run tests

9 years agoMerge "ART: Extend ISA features option for (host) run tests"
Andreas Gampe [Wed, 5 Aug 2015 23:06:02 +0000 (23:06 +0000)]
Merge "ART: Extend ISA features option for (host) run tests"

9 years agoART: Extend ISA features option for (host) run tests
Andreas Gampe [Wed, 5 Aug 2015 16:24:45 +0000 (09:24 -0700)]
ART: Extend ISA features option for (host) run tests

To allow to test advanced intrinsics only available on (fairly)
modern processors, and because our build requirements are still
too low to enable them in the build system, pipe through the
existing make variables to the run-tests to allow to override
the dex2oat autodetection scheme.

Usage (standalone run-test): use the new --instruction-set-features
command line parameter to set the value for dex2oat (in the prebuild
configuration) or as an -Xcompiler-option (for no-prebuild). Note:
this is general and also works for target tests.

Usage (through make): set DEX2OAT_HOST_INSTRUCTION_SET_FEATURES and
2ND_DEX2OAT_HOST_INSTRUCTION_SET_FEATURES to set instruction set
features, as was possible before for the compilation of core files.
This option is now forwarded to host run-tests.

Change-Id: I9d89c82b6a5c8853748e5d1c153dde5d4050757a

9 years agoam d8406781: Merge "ART: Wire up DexToDexCompiler without extern"
Andreas Gampe [Wed, 5 Aug 2015 19:06:54 +0000 (19:06 +0000)]
am d8406781: Merge "ART: Wire up DexToDexCompiler without extern"

* commit 'd8406781fdb8917ae0c45c1e2194f9a5ab874e78':
  ART: Wire up DexToDexCompiler without extern

9 years agoMerge "ART: Wire up DexToDexCompiler without extern"
Andreas Gampe [Wed, 5 Aug 2015 18:59:25 +0000 (18:59 +0000)]
Merge "ART: Wire up DexToDexCompiler without extern"

9 years agoART: Wire up DexToDexCompiler without extern
Andreas Gampe [Thu, 23 Jul 2015 08:19:26 +0000 (01:19 -0700)]
ART: Wire up DexToDexCompiler without extern

The extern declaration actually had the wrong signature, a parameter
was missing, and we never noticed.

Remove the function field and extern. Add a header for the compiler.
Use the header file.

Change-Id: Ia4d4dd86211da6045709a45c7bf8430471d1b62b

9 years agoam 02f0771b: Merge "Revert "cleanup: Replace pointers with out-parameters and fix...
Igor Murashkin [Wed, 5 Aug 2015 18:23:03 +0000 (18:23 +0000)]
am 02f0771b: Merge "Revert "cleanup: Replace pointers with out-parameters and fix-up formatting""

* commit '02f0771bba69edd34b0b112902bb9132ed099c75':
  Revert "cleanup: Replace pointers with out-parameters and fix-up formatting"

9 years agoMerge "Revert "cleanup: Replace pointers with out-parameters and fix-up formatting""
Igor Murashkin [Wed, 5 Aug 2015 18:18:59 +0000 (18:18 +0000)]
Merge "Revert "cleanup: Replace pointers with out-parameters and fix-up formatting""

9 years agoam 94800f46: Merge "Address some comments and clean up"
Mathieu Chartier [Wed, 5 Aug 2015 18:08:39 +0000 (18:08 +0000)]
am 94800f46: Merge "Address some comments and clean up"

* commit '94800f46da0aded5152545322ad842f89e8a21d8':
  Address some comments and clean up

9 years agoMerge "Address some comments and clean up"
Mathieu Chartier [Wed, 5 Aug 2015 18:02:53 +0000 (18:02 +0000)]
Merge "Address some comments and clean up"

9 years agoam 46e0f460: Merge "Fix mod-union logic for native roots"
Mathieu Chartier [Wed, 5 Aug 2015 17:49:05 +0000 (17:49 +0000)]
am 46e0f460: Merge "Fix mod-union logic for native roots"

* commit '46e0f460aa233a4a0ac161bfafde164357fe2b26':
  Fix mod-union logic for native roots

9 years agoMerge "Fix mod-union logic for native roots"
Mathieu Chartier [Wed, 5 Aug 2015 17:42:56 +0000 (17:42 +0000)]
Merge "Fix mod-union logic for native roots"

9 years agoFix mod-union logic for native roots
Mathieu Chartier [Wed, 5 Aug 2015 17:10:07 +0000 (10:10 -0700)]
Fix mod-union logic for native roots

Bug: 22949217
Change-Id: I9e4631870160d5a9412df1eec2a7b79c65668542

9 years agoam 13394093: Merge "Have constant folding be more flexible."
Roland Levillain [Wed, 5 Aug 2015 12:57:11 +0000 (12:57 +0000)]
am 13394093: Merge "Have constant folding be more flexible."

* commit '1339409345cc8b46d64570430ca3197408fda159':
  Have constant folding be more flexible.

9 years agoMerge "Have constant folding be more flexible."
Roland Levillain [Wed, 5 Aug 2015 12:52:12 +0000 (12:52 +0000)]
Merge "Have constant folding be more flexible."

9 years agoam 902ec264: Merge "Add constant folding for long unary operations in opt. compiler."
Roland Levillain [Wed, 5 Aug 2015 10:11:10 +0000 (10:11 +0000)]
am 902ec264: Merge "Add constant folding for long unary operations in opt. compiler."

* commit '902ec264e1040cbfd783c44809ed10b261bd78ee':
  Add constant folding for long unary operations in opt. compiler.

9 years agoMerge "Add constant folding for long unary operations in opt. compiler."
Roland Levillain [Wed, 5 Aug 2015 10:03:46 +0000 (10:03 +0000)]
Merge "Add constant folding for long unary operations in opt. compiler."

9 years agoHave constant folding be more flexible.
Roland Levillain [Wed, 5 Aug 2015 09:21:34 +0000 (10:21 +0100)]
Have constant folding be more flexible.

- Have Evaluate methods take as argument(s) and return value
  instances of HConstant (instead of built-in 32- or 64-bit
  integer values), to let the evaluated instruction choose
  the type of the statically evaluated node; for instance,
  art::HEqual::Evaluate shall return a HIntConstant
  node (as implementation of a Boolean constant) whatever
  the type of its inputs (a pair of HIntConstant or a pair
  of HLongConstant).
- Split the evaluation job from the operation logic: the
  former is addressed by Evaluate methods, while the latter
  is done by a generic Compute method.
- Adress valid BinOp(int, long) and BinOp(long, int) cases.
- Add a constructor to art::HIntConstant to build an integer
  constant from a `bool` value.

Change-Id: If84b6fe8406bb94ddb1aa8b02e36628dff526db3

9 years agoAdd constant folding for long unary operations in opt. compiler.
Roland Levillain [Thu, 11 Dec 2014 12:14:33 +0000 (12:14 +0000)]
Add constant folding for long unary operations in opt. compiler.

Add tests to exercise the constant folding of these
instructions.

Also, prevent Java methods from run-tests exercising the
code generation of these instruction from being inlined,
so that they continue to check the generated code (and
not the code produced by the constant folding pass).

Change-Id: I28efca7cdb5142ac2b6d158ba296fb9136d62481

9 years agoam d4fd5914: Merge "ART: Move exception clearing into own instruction"
David Brazdil [Wed, 5 Aug 2015 09:54:44 +0000 (09:54 +0000)]
am d4fd5914: Merge "ART: Move exception clearing into own instruction"

* commit 'd4fd591406f356dcb8feaa262c19983cacb9116d':
  ART: Move exception clearing into own instruction

9 years agoMerge "ART: Move exception clearing into own instruction"
David Brazdil [Wed, 5 Aug 2015 08:34:24 +0000 (08:34 +0000)]
Merge "ART: Move exception clearing into own instruction"

9 years agoam 8bfc949a: Merge "Revert "Revert "ART: Use bionic TLS slot for thread-self"""
Andreas Gampe [Wed, 5 Aug 2015 03:02:58 +0000 (03:02 +0000)]
am 8bfc949a: Merge "Revert "Revert "ART: Use bionic TLS slot for thread-self"""

* commit '8bfc949ae075d66d1d6fbf36d7ed774b6da1f62a':
  Revert "Revert "ART: Use bionic TLS slot for thread-self""

9 years agoMerge "Revert "Revert "ART: Use bionic TLS slot for thread-self"""
Andreas Gampe [Wed, 5 Aug 2015 02:55:46 +0000 (02:55 +0000)]
Merge "Revert "Revert "ART: Use bionic TLS slot for thread-self"""

9 years agoam 10569198: Merge "ART: x86_64 RoundDouble/Float intrinsics should initialize out...
Nicolas Geoffray [Wed, 5 Aug 2015 02:20:42 +0000 (02:20 +0000)]
am 10569198: Merge "ART: x86_64 RoundDouble/Float intrinsics should initialize out value."

* commit '1056919800f5db8d7a9607835fa34254eae51ec3':
  ART: x86_64 RoundDouble/Float intrinsics should initialize out value.

9 years agoRevert "Revert "ART: Use bionic TLS slot for thread-self""
Andreas Gampe [Wed, 5 Aug 2015 01:08:53 +0000 (01:08 +0000)]
Revert "Revert "ART: Use bionic TLS slot for thread-self""

This reverts commit 50832b6804d15ea5ddfe99a2753a09111b5bfe37.

Fix clearing the TLS on detach.

Change-Id: I75ed5ccccb4f31800e5f893055e96067a9695258

9 years agoMerge "ART: x86_64 RoundDouble/Float intrinsics should initialize out value."
Nicolas Geoffray [Wed, 5 Aug 2015 02:11:01 +0000 (02:11 +0000)]
Merge "ART: x86_64 RoundDouble/Float intrinsics should initialize out value."

9 years agoAddress some comments and clean up
Mathieu Chartier [Tue, 4 Aug 2015 22:19:41 +0000 (15:19 -0700)]
Address some comments and clean up

Change-Id: I538cf204f1c89d5fc81f8fc5e5800fcf1cf87359

9 years agoam 1cf85515: Merge "Revert "ART: Use bionic TLS slot for thread-self""
Andreas Gampe [Wed, 5 Aug 2015 00:42:41 +0000 (00:42 +0000)]
am 1cf85515: Merge "Revert "ART: Use bionic TLS slot for thread-self""

* commit '1cf85515600d298a2c9e4de137c0926949205097':
  Revert "ART: Use bionic TLS slot for thread-self"

9 years agoMerge "Revert "ART: Use bionic TLS slot for thread-self""
Andreas Gampe [Wed, 5 Aug 2015 00:36:05 +0000 (00:36 +0000)]
Merge "Revert "ART: Use bionic TLS slot for thread-self""

9 years agoRevert "ART: Use bionic TLS slot for thread-self"
Andreas Gampe [Wed, 5 Aug 2015 00:31:02 +0000 (00:31 +0000)]
Revert "ART: Use bionic TLS slot for thread-self"

This reverts commit b81535875ff46d1630c76091fe969a9eb7fc4d16.

Breaking tests, need to investigate.

Change-Id: Iab8c4f6136e6cb9bd6cf3c3495aa33962ef890ee

9 years agoam d2606b1b: Merge "Parallel Move Resolver: Perform Stack/Stack first"
Nicolas Geoffray [Wed, 5 Aug 2015 00:17:12 +0000 (00:17 +0000)]
am d2606b1b: Merge "Parallel Move Resolver: Perform Stack/Stack first"

* commit 'd2606b1b922573d45707931bc387cbf990771238':
  Parallel Move Resolver: Perform Stack/Stack first

9 years agoMerge "Parallel Move Resolver: Perform Stack/Stack first"
Nicolas Geoffray [Wed, 5 Aug 2015 00:10:01 +0000 (00:10 +0000)]
Merge "Parallel Move Resolver: Perform Stack/Stack first"

9 years agoam bab71e2a: Merge "ART: Use bionic TLS slot for thread-self"
Andreas Gampe [Tue, 4 Aug 2015 22:44:31 +0000 (22:44 +0000)]
am bab71e2a: Merge "ART: Use bionic TLS slot for thread-self"

* commit 'bab71e2a51834dd6986f2166d332f540824687f9':
  ART: Use bionic TLS slot for thread-self

9 years agoMerge "ART: Use bionic TLS slot for thread-self"
Andreas Gampe [Tue, 4 Aug 2015 22:35:34 +0000 (22:35 +0000)]
Merge "ART: Use bionic TLS slot for thread-self"

9 years agoam fd38927d: Merge "Update expectation."
Nicolas Geoffray [Tue, 4 Aug 2015 19:11:56 +0000 (19:11 +0000)]
am fd38927d: Merge "Update expectation."

* commit 'fd38927d03a5fdf4ccfce8b9e0ffb1a99c4f0b37':
  Update expectation.

9 years agoMerge "Update expectation."
Nicolas Geoffray [Tue, 4 Aug 2015 19:06:16 +0000 (19:06 +0000)]
Merge "Update expectation."

9 years agoRevert "cleanup: Replace pointers with out-parameters and fix-up formatting"
Igor Murashkin [Tue, 4 Aug 2015 18:18:43 +0000 (11:18 -0700)]
Revert "cleanup: Replace pointers with out-parameters and fix-up formatting"

This reverts commit a315f5c546b796f55f4872bb6efc15eb858d9639.

--

Revert "runtime: cleanup class_linker out-parameters and formatting"

This reverts commit bc1d78daa463572c5a770cdca858a3b51d8e1b7b.

--

Revert "base: replace raw pointers for out-parameters with safer out<T>"

This reverts commit fb326cffc679cab8eb873b9e44795706f023cb3c.

9 years agoUpdate expectation.
Nicolas Geoffray [Tue, 4 Aug 2015 17:16:43 +0000 (18:16 +0100)]
Update expectation.

Vogar wants # between class and method.

Change-Id: I3e4d54e2cc22bac6b73fe611fcbfcbe39095159c

9 years agoam 1d558db0: Merge "ART: Use Clang default integrated assembler."
Andreas Gampe [Tue, 4 Aug 2015 16:55:32 +0000 (16:55 +0000)]
am 1d558db0: Merge "ART: Use Clang default integrated assembler."

* commit '1d558db0bcd841140f6fe1c6ba2e9a6de131649d':
  ART: Use Clang default integrated assembler.

9 years agoMerge "ART: Use Clang default integrated assembler."
Andreas Gampe [Tue, 4 Aug 2015 16:47:39 +0000 (16:47 +0000)]
Merge "ART: Use Clang default integrated assembler."

9 years agoART: Use Clang default integrated assembler.
Chih-Hung Hsieh [Mon, 27 Jul 2015 17:10:44 +0000 (10:10 -0700)]
ART: Use Clang default integrated assembler.

Issues with x86, arm32 and arm64 have been fixed.
Allow the use of the integrated assembler.

Bug: 22874917
Change-Id: Iacfffda29d57bfc931da568a9436c2e34cb38df6

9 years agoART: Move exception clearing into own instruction
David Brazdil [Tue, 4 Aug 2015 15:22:25 +0000 (16:22 +0100)]
ART: Move exception clearing into own instruction

Runtime delivers exceptions only to catch blocks which begin with a
MOVE_EXCEPTION instruction (in DEX). In that case, the catch block is
expected to clear the thread-local exception storage after having
read the exception reference.

This patch changes Optimizing to represent MOVE_EXCEPTION with two
instructions - HLoadException and HClearException - instead of one.
If the exception reference is not used, HLoadException can be safely
removed, saving a memory load without breaking the runtime behaviour.

Change-Id: Idad8a714467bf9d9d5fccefbc43c0bd8ae13ddba

9 years agoam 28a94765: Merge "ART: Fix arm32 assembly for Clang"
Andreas Gampe [Tue, 4 Aug 2015 15:22:47 +0000 (15:22 +0000)]
am 28a94765: Merge "ART: Fix arm32 assembly for Clang"

* commit '28a94765b4188faf51eb20d9a400273cf12136d0':
  ART: Fix arm32 assembly for Clang

9 years agoMerge "ART: Fix arm32 assembly for Clang"
Andreas Gampe [Tue, 4 Aug 2015 15:16:33 +0000 (15:16 +0000)]
Merge "ART: Fix arm32 assembly for Clang"

9 years agoART: Fix arm32 assembly for Clang
Chih-Hung Hsieh [Mon, 27 Jul 2015 17:10:44 +0000 (10:10 -0700)]
ART: Fix arm32 assembly for Clang

Clang ignores .thumb_func and requires an explicit
.thumb directive, as given by the ARM Unified Assembler
Language. Conditionally add .thumb to thumb2 functions.

Bug: 22762844
Change-Id: I08abdb5f4e0ba5135d4ed850ca3e284203f95a03

9 years agoART: x86_64 RoundDouble/Float intrinsics should initialize out value.
Pavel Vyssotski [Fri, 31 Jul 2015 07:03:17 +0000 (13:03 +0600)]
ART: x86_64 RoundDouble/Float intrinsics should initialize out value.

x86_64 RoundDouble intrinsic should initialize output register for the case of
"inPlusPointFive >= maxLong" as expected. The same for the RoundFloat intrinsic.
Fixed also the out register type in CreateSSE41FPToIntLocations provoking
a DCHECK failure.

Change-Id: I0a910682e2917214861683c678ffba8e0f4bfed8
Signed-off-by: Pavel Vyssotski <pavel.n.vyssotski@intel.com>
9 years agoam fe092ab1: Merge "Added repe_cmpsq instruction to x86_64 assembler"
Vladimir Marko [Tue, 4 Aug 2015 11:28:43 +0000 (11:28 +0000)]
am fe092ab1: Merge "Added repe_cmpsq instruction to x86_64 assembler"

* commit 'fe092ab1e3cfc106216aa5518393a55786f9ab0b':
  Added repe_cmpsq instruction to x86_64 assembler

9 years agoMerge "Added repe_cmpsq instruction to x86_64 assembler"
Vladimir Marko [Tue, 4 Aug 2015 11:20:31 +0000 (11:20 +0000)]
Merge "Added repe_cmpsq instruction to x86_64 assembler"

9 years agoam 718a2451: Merge "ARM/ARM64: Implement numberOfLeadingZeros intrinsic."
Vladimir Marko [Tue, 4 Aug 2015 09:51:57 +0000 (09:51 +0000)]
am 718a2451: Merge "ARM/ARM64: Implement numberOfLeadingZeros intrinsic."

* commit '718a24514b736c3db49eac9f5b39a097a6c74856':
  ARM/ARM64: Implement numberOfLeadingZeros intrinsic.

9 years agoMerge "ARM/ARM64: Implement numberOfLeadingZeros intrinsic."
Vladimir Marko [Tue, 4 Aug 2015 09:05:51 +0000 (09:05 +0000)]
Merge "ARM/ARM64: Implement numberOfLeadingZeros intrinsic."

9 years agoARM/ARM64: Implement numberOfLeadingZeros intrinsic.
Scott Wakeling [Fri, 10 Jul 2015 10:42:06 +0000 (11:42 +0100)]
ARM/ARM64: Implement numberOfLeadingZeros intrinsic.

Change-Id: I4042fb7a0b75140475dcfca23e8f79d310f5333b

9 years agoAdded repe_cmpsq instruction to x86_64 assembler
agicsaki [Tue, 4 Aug 2015 03:14:29 +0000 (20:14 -0700)]
Added repe_cmpsq instruction to x86_64 assembler

Change-Id: I9085694fd3313581b2775a8267ccda58fec19a1a

9 years agoam 0c9c5bbd: Merge "ART: Fix stub_test"
Andreas Gampe [Mon, 3 Aug 2015 22:15:50 +0000 (22:15 +0000)]
am 0c9c5bbd: Merge "ART: Fix stub_test"

* commit '0c9c5bbdd6976c21602b92d9b455e6fe5d769fb0':
  ART: Fix stub_test

9 years agoMerge "ART: Fix stub_test"
Andreas Gampe [Mon, 3 Aug 2015 22:07:15 +0000 (22:07 +0000)]
Merge "ART: Fix stub_test"

9 years agoam e3d598e2: Merge "cleanup: Replace pointers with out-parameters and fix-up formatting"
Igor Murashkin [Mon, 3 Aug 2015 21:33:49 +0000 (21:33 +0000)]
am e3d598e2: Merge "cleanup: Replace pointers with out-parameters and fix-up formatting"

* commit 'e3d598e240dd9ac26b4894dbb1312f42c4047fb3':
  cleanup: Replace pointers with out-parameters and fix-up formatting

9 years agoMerge "cleanup: Replace pointers with out-parameters and fix-up formatting"
Igor Murashkin [Mon, 3 Aug 2015 21:27:27 +0000 (21:27 +0000)]
Merge "cleanup: Replace pointers with out-parameters and fix-up formatting"

9 years agoam 743e9625: Merge "Optimizing: Add Non Temporal Move support for x86"
Aart Bik [Mon, 3 Aug 2015 17:59:44 +0000 (17:59 +0000)]
am 743e9625: Merge "Optimizing: Add Non Temporal Move support for x86"

* commit '743e9625bd4b9bddc8752170e647660986c53f08':
  Optimizing: Add Non Temporal Move support for x86

9 years agoMerge "Optimizing: Add Non Temporal Move support for x86"
Aart Bik [Mon, 3 Aug 2015 17:48:11 +0000 (17:48 +0000)]
Merge "Optimizing: Add Non Temporal Move support for x86"

9 years agoART: Fix stub_test
Andreas Gampe [Mon, 3 Aug 2015 17:25:06 +0000 (10:25 -0700)]
ART: Fix stub_test

Clobber another register on arm32.

Change-Id: I0d355f69dfa7e6d86cb7c211f6ac2cb56f995d9d

9 years agoam e238414e: Merge "Optimizing: Use more X86 3 operand multiplies"
Roland Levillain [Mon, 3 Aug 2015 15:04:32 +0000 (15:04 +0000)]
am e238414e: Merge "Optimizing: Use more X86 3 operand multiplies"

* commit 'e238414eee3ec933a4ceb1894666c9ef331ace0c':
  Optimizing: Use more X86 3 operand multiplies

9 years agoam bc576cfd: Merge "Revert "Optimizing String.Equals as an intrinsic (x86)""
Roland Levillain [Mon, 3 Aug 2015 15:04:30 +0000 (15:04 +0000)]
am bc576cfd: Merge "Revert "Optimizing String.Equals as an intrinsic (x86)""

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

9 years agoMerge "Optimizing: Use more X86 3 operand multiplies"
Roland Levillain [Mon, 3 Aug 2015 14:57:38 +0000 (14:57 +0000)]
Merge "Optimizing: Use more X86 3 operand multiplies"

9 years agoMerge "Revert "Optimizing String.Equals as an intrinsic (x86)""
Roland Levillain [Mon, 3 Aug 2015 14:55:11 +0000 (14:55 +0000)]
Merge "Revert "Optimizing String.Equals as an intrinsic (x86)""

9 years agoRevert "Optimizing String.Equals as an intrinsic (x86)"
Roland Levillain [Mon, 3 Aug 2015 14:54:45 +0000 (14:54 +0000)]
Revert "Optimizing String.Equals as an intrinsic (x86)"

Reverted as it breaks the compilation of boot.{oat,art} on x86 (although this CL may not be the culprit, as the issue seems to come from Optimizing's register allocator).

This reverts commit 8ab7bd6c8b10ad58758c33a1dc9326212bd200e9.

Change-Id: If7c8b6258d1e690f4d2a06bcc82c92563ac6cdef

9 years agoam 855223fa: Merge "Fix ambiguous phrasing in tests comments regarding $."
Roland Levillain [Mon, 3 Aug 2015 14:42:46 +0000 (14:42 +0000)]
am 855223fa: Merge "Fix ambiguous phrasing in tests comments regarding $."

* commit '855223fa12fc1efc926c068ea5c536663f30030d':
  Fix ambiguous phrasing in tests comments regarding $opt$.

9 years agoMerge "Fix ambiguous phrasing in tests comments regarding $opt$."
Roland Levillain [Mon, 3 Aug 2015 14:34:42 +0000 (14:34 +0000)]
Merge "Fix ambiguous phrasing in tests comments regarding $opt$."

9 years agoFix ambiguous phrasing in tests comments regarding $opt$.
Roland Levillain [Mon, 3 Aug 2015 14:20:02 +0000 (15:20 +0100)]
Fix ambiguous phrasing in tests comments regarding $opt$.

Change-Id: I78e6bccbe35288df5de30700d3877bbcdef37d65

9 years agoam 7a58566d: Merge "Optimizing String.Equals as an intrinsic (x86)"
Roland Levillain [Mon, 3 Aug 2015 09:45:20 +0000 (09:45 +0000)]
am 7a58566d: Merge "Optimizing String.Equals as an intrinsic (x86)"

* commit '7a58566d2b0ad051b8ccaf5614ad986979af8ef4':
  Optimizing String.Equals as an intrinsic (x86)

9 years agoMerge "Optimizing String.Equals as an intrinsic (x86)"
Roland Levillain [Mon, 3 Aug 2015 08:48:11 +0000 (08:48 +0000)]
Merge "Optimizing String.Equals as an intrinsic (x86)"

9 years agoam 7879f711: Merge "ART: Check a RETURN_VOID_NO_BARRIER like a RETURN_VOID"
Andreas Gampe [Sat, 1 Aug 2015 04:20:08 +0000 (04:20 +0000)]
am 7879f711: Merge "ART: Check a RETURN_VOID_NO_BARRIER like a RETURN_VOID"

* commit '7879f7119d7a88a71f6c31c9b8eac27cdba8a123':
  ART: Check a RETURN_VOID_NO_BARRIER like a RETURN_VOID

9 years agoMerge "ART: Check a RETURN_VOID_NO_BARRIER like a RETURN_VOID"
Andreas Gampe [Sat, 1 Aug 2015 04:14:14 +0000 (04:14 +0000)]
Merge "ART: Check a RETURN_VOID_NO_BARRIER like a RETURN_VOID"

9 years agoART: Check a RETURN_VOID_NO_BARRIER like a RETURN_VOID
Andreas Gampe [Fri, 31 Jul 2015 20:36:10 +0000 (13:36 -0700)]
ART: Check a RETURN_VOID_NO_BARRIER like a RETURN_VOID

RETURN_VOID_NO_BARRIER is used in all methods with return-void,
as long as they're not a constructor and have been quickened. As
such, do the regular checking of the return type.

Bug: https://code.google.com/p/android/issues/detail?id=181700
Bug: 22871329
Change-Id: I11bcf7bffd91fc01995b703a99e603ddb370016e

9 years agocleanup: Replace pointers with out-parameters and fix-up formatting
Igor Murashkin [Sat, 1 Aug 2015 00:35:52 +0000 (17:35 -0700)]
cleanup: Replace pointers with out-parameters and fix-up formatting

Cleans all of oat_file.h/.cc, parsed_options.h./cc, runtime.h/.cc

Other files are touched only incidentally to use outof(x) instead of &x.

Change-Id: I0bb15111149d53bb21aac2199ef33bd35333b0ca

9 years agoam 66c50ccc: Merge "runtime: cleanup class_linker out-parameters and formatting"
Igor Murashkin [Fri, 31 Jul 2015 23:07:30 +0000 (23:07 +0000)]
am 66c50ccc: Merge "runtime: cleanup class_linker out-parameters and formatting"

* commit '66c50cccd9dda431b2017ad04dc72b0c0f17d74e':
  runtime: cleanup class_linker out-parameters and formatting

9 years agoam 5cdee205: Merge "Revert "runtime: cleanup class_linker out-parameters and formatting""
Igor Murashkin [Fri, 31 Jul 2015 23:07:28 +0000 (23:07 +0000)]
am 5cdee205: Merge "Revert "runtime: cleanup class_linker out-parameters and formatting""

* commit '5cdee205231993c5f3a5f815f614d9d460448615':
  Revert "runtime: cleanup class_linker out-parameters and formatting"

9 years agoam 9c977b92: Merge "runtime: cleanup class_linker out-parameters and formatting"
Igor Murashkin [Fri, 31 Jul 2015 23:07:27 +0000 (23:07 +0000)]
am 9c977b92: Merge "runtime: cleanup class_linker out-parameters and formatting"

* commit '9c977b9260927d14c6d6c5bbdd7d16e1aebbf2fa':
  runtime: cleanup class_linker out-parameters and formatting

9 years agoMerge "runtime: cleanup class_linker out-parameters and formatting"
Igor Murashkin [Fri, 31 Jul 2015 23:03:58 +0000 (23:03 +0000)]
Merge "runtime: cleanup class_linker out-parameters and formatting"

9 years agoruntime: cleanup class_linker out-parameters and formatting
Igor Murashkin [Thu, 30 Jul 2015 23:39:45 +0000 (16:39 -0700)]
runtime: cleanup class_linker out-parameters and formatting

* Use out<T> instead of parameters
* Fixes up some other signatures to be more correct
* Reformat parameters to be one per line if they can't fit on one line
* Reformat locks to be one per line if they can't fit on the decl line

Change-Id: Ib71b08707d3ed0bb85299406c0b23a1de4e92a1c

9 years agoMerge "Revert "runtime: cleanup class_linker out-parameters and formatting""
Igor Murashkin [Fri, 31 Jul 2015 23:02:50 +0000 (23:02 +0000)]
Merge "Revert "runtime: cleanup class_linker out-parameters and formatting""

9 years agoRevert "runtime: cleanup class_linker out-parameters and formatting"
Igor Murashkin [Fri, 31 Jul 2015 23:02:30 +0000 (23:02 +0000)]
Revert "runtime: cleanup class_linker out-parameters and formatting"

This reverts commit 0de694ed3efe8412b83622a24074831edcc7e384.

Change-Id: I4b185584d6e47918179b16d76709cc3366872f3c

9 years agoMerge "runtime: cleanup class_linker out-parameters and formatting"
Igor Murashkin [Fri, 31 Jul 2015 23:02:04 +0000 (23:02 +0000)]
Merge "runtime: cleanup class_linker out-parameters and formatting"

9 years agoOptimizing String.Equals as an intrinsic (x86)
agicsaki [Mon, 27 Jul 2015 17:25:10 +0000 (10:25 -0700)]
Optimizing String.Equals as an intrinsic (x86)

The third implementation of String.Equals.  I added an intrinsic
in x86 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
character by character.

Interesting Benchmarking Values:

Optimizing Compiler on Nexus Player
Intrinsic 15-30 Character Strings: 177 ns
Original 15-30 Character Strings: 275 ns
Intrinsic Null Argument: 59 ns
Original Null Argument: 137 ns
Intrinsic 100-1000 Character Strings: 1812 ns
Original 100-1000 Character Strings: 6334 ns

Bug: 21481923
Change-Id: Ia386e19b9dbfe0dac688b20ec93d8f90f67af47e

9 years agoruntime: cleanup class_linker out-parameters and formatting
Igor Murashkin [Thu, 30 Jul 2015 23:39:45 +0000 (16:39 -0700)]
runtime: cleanup class_linker out-parameters and formatting

* Use out<T> instead of parameters
* Fixes up some other signatures to be more correct
* Reformat parameters to be one per line if they can't fit on one line
* Reformat locks to be one per line if they can't fit on the decl line

Change-Id: I1031cf4edc41f95b89edb343d43ef93e15384206

9 years agoam 0d72ce0b: Merge "Revert "ART: Do not allow RETURN_VOID_NO_BARRIER outside construc...
Andreas Gampe [Fri, 31 Jul 2015 20:35:29 +0000 (20:35 +0000)]
am 0d72ce0b: Merge "Revert "ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors""

* commit '0d72ce0b4f9eaf0f60c70a2901198099086795e0':
  Revert "ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors"

9 years agoMerge "Revert "ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors""
Andreas Gampe [Fri, 31 Jul 2015 20:31:40 +0000 (20:31 +0000)]
Merge "Revert "ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors""

9 years agoRevert "ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors"
Andreas Gampe [Fri, 31 Jul 2015 20:31:24 +0000 (20:31 +0000)]
Revert "ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors"

This reverts commit e93505f599682a2e95c4dac1c8633dec79c602bc.

This isn't the right thing to do, actually.

Bug: 22871329
Change-Id: I0a0a5a86c7c8d8afdf417444ca7d73e56e040515

9 years agoam 7423f0b6: Merge "ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors"
Andreas Gampe [Fri, 31 Jul 2015 19:11:46 +0000 (19:11 +0000)]
am 7423f0b6: Merge "ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors"

* commit '7423f0b66060711cddcdbc7ba5b0dd3f2df36718':
  ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors

9 years agoMerge "ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors"
Andreas Gampe [Fri, 31 Jul 2015 19:04:29 +0000 (19:04 +0000)]
Merge "ART: Do not allow RETURN_VOID_NO_BARRIER outside constructors"