OSDN Git Service

android-x86/art.git
9 years agoam 24898d44: Merge "Disable test, it fails on target and read-barrier config."
Nicolas Geoffray [Thu, 5 Feb 2015 15:22:40 +0000 (15:22 +0000)]
am 24898d44: Merge "Disable test, it fails on target and read-barrier config."

* commit '24898d447640c3a45e6fc9f404b049eddc5a2709':
  Disable test, it fails on target and read-barrier config.

9 years agoam 911b4be5: Merge "Fix transaction aborting"
Sebastien Hertz [Thu, 5 Feb 2015 15:22:39 +0000 (15:22 +0000)]
am 911b4be5: Merge "Fix transaction aborting"

* commit '911b4be50c379d052dd9e5f9b59ce91df1340453':
  Fix transaction aborting

9 years agoMerge "Disable test, it fails on target and read-barrier config."
Nicolas Geoffray [Thu, 5 Feb 2015 10:31:57 +0000 (10:31 +0000)]
Merge "Disable test, it fails on target and read-barrier config."

9 years agoDisable test, it fails on target and read-barrier config.
Nicolas Geoffray [Thu, 5 Feb 2015 10:14:10 +0000 (10:14 +0000)]
Disable test, it fails on target and read-barrier config.

Change-Id: Ib1ae28b1e81a1355196c32c43765a6f5466ca728

9 years agoMerge "Fix transaction aborting"
Sebastien Hertz [Thu, 5 Feb 2015 08:19:21 +0000 (08:19 +0000)]
Merge "Fix transaction aborting"

9 years agoFix transaction aborting
Sebastien Hertz [Tue, 3 Feb 2015 10:58:06 +0000 (11:58 +0100)]
Fix transaction aborting

During compilation, a java.lang.InternalError is used to indicate
that class initialization failed and the enclosing transaction
should be aborted and the changes rolled back. However there is
nothing preventing the code executed from a class initializer from
catching that exception (like catching Throwable and ignore it).
Therefore we may return from the class initializer with no pending
exception, even if the transaction was aborted, and not rollback
the changes properly.

To fix this, we now rely on the new Transaction::aborted_ field to
know whether a transaction aborted. When returning from the class
initializer without pending exception, we now check wether we aborted
the enclosing transaction. If that's the case, we set the status of
the class to kStatusError and throw a new java.lang.InternalError
with the original abort message.

This CL also contains some cleanup:
- Renames Transaction::Abort to Transaction::Rollback which is less
ambiguous and more reflect what is done.
- Moves the code throwing the java.lang.InternalError exception into
the Transaction::ThrowInternalError method so we do not duplicate
code. Now we may abort transaction more than once (because we may
have caught the java.lang.InternalError then execute code causing
new transaction abort), we only keep the first abort message to
throw the exception.
- Updates transaction_test with more cases and more checks.
- Bumps oat version to force recompilation with this fix.

Bug: 19202032
Change-Id: Iedc6969528a68bbdf3123146e990df4dbc57834b

9 years agoam 7e6a918e: Merge "Clear thread local freed bits in RosAlloc::Run::InspectAllSlots"
Mathieu Chartier [Thu, 5 Feb 2015 02:49:15 +0000 (02:49 +0000)]
am 7e6a918e: Merge "Clear thread local freed bits in RosAlloc::Run::InspectAllSlots"

* commit '7e6a918ecfbe786c060bce0eeddd55c4c70f819d':
  Clear thread local freed bits in RosAlloc::Run::InspectAllSlots

9 years agoMerge "Clear thread local freed bits in RosAlloc::Run::InspectAllSlots"
Mathieu Chartier [Thu, 5 Feb 2015 02:45:25 +0000 (02:45 +0000)]
Merge "Clear thread local freed bits in RosAlloc::Run::InspectAllSlots"

9 years agoam 19929654: Merge "art: Try to fix parsed_options_test on the build server"
Igor Murashkin [Thu, 5 Feb 2015 02:24:24 +0000 (02:24 +0000)]
am 19929654: Merge "art: Try to fix parsed_options_test on the build server"

* commit '19929654ddf3bce1b89db92a9b7fb47d6e91e2f8':
  art: Try to fix parsed_options_test on the build server

9 years agoam edf45678: Merge "Fix broken volantis build"
Igor Murashkin [Thu, 5 Feb 2015 02:24:22 +0000 (02:24 +0000)]
am edf45678: Merge "Fix broken volantis build"

* commit 'edf45678f133ce51d7aff43be68d9be3936ffca2':
  Fix broken volantis build

9 years agoClear thread local freed bits in RosAlloc::Run::InspectAllSlots
Mathieu Chartier [Thu, 5 Feb 2015 01:46:29 +0000 (17:46 -0800)]
Clear thread local freed bits in RosAlloc::Run::InspectAllSlots

Previously we didn't take these bits into consideration. This could
cause RosAlloc::Run::InspectAllSlots to inspect recently freed
allocations as allocated.

Bug: 19193521
Change-Id: I56b3c089e2a36098423261cda623fc834069f832

9 years agoMerge "art: Try to fix parsed_options_test on the build server"
Igor Murashkin [Thu, 5 Feb 2015 01:35:28 +0000 (01:35 +0000)]
Merge "art: Try to fix parsed_options_test on the build server"

9 years agoart: Try to fix parsed_options_test on the build server
Igor Murashkin [Thu, 5 Feb 2015 01:30:43 +0000 (17:30 -0800)]
art: Try to fix parsed_options_test on the build server

(It works fine locally because environment variables are defined
differently)

Also some minor cleanup elsewhere pointed out in the previous code
review.

Change-Id: I80650d2be6ce467b838db85eb130a0020d7c1480

9 years agoMerge "Fix broken volantis build"
Igor Murashkin [Wed, 4 Feb 2015 23:35:52 +0000 (23:35 +0000)]
Merge "Fix broken volantis build"

9 years agoFix broken volantis build
Igor Murashkin [Wed, 4 Feb 2015 23:11:27 +0000 (15:11 -0800)]
Fix broken volantis build

Change-Id: Iedc1a94fd1ec4224b605b984c11cfcc8c1c510e3

9 years agoam 1bb6cb0b: Merge "art: Refactor RuntimeOptions/ParsedOptions"
Igor Murashkin [Wed, 4 Feb 2015 21:52:36 +0000 (21:52 +0000)]
am 1bb6cb0b: Merge "art: Refactor RuntimeOptions/ParsedOptions"

* commit '1bb6cb0b7e10698f12213f7a4fabc845057d9ab9':
  art: Refactor RuntimeOptions/ParsedOptions

9 years agoMerge "art: Refactor RuntimeOptions/ParsedOptions"
Igor Murashkin [Wed, 4 Feb 2015 21:45:13 +0000 (21:45 +0000)]
Merge "art: Refactor RuntimeOptions/ParsedOptions"

9 years agoart: Refactor RuntimeOptions/ParsedOptions
Igor Murashkin [Mon, 26 Jan 2015 18:55:53 +0000 (10:55 -0800)]
art: Refactor RuntimeOptions/ParsedOptions

Refactor the RuntimeOptions to be a
type-safe map (VariantMap, see runtime_options.h) and the ParsedOptions
to delegate the parsing to CmdlineParser (see cmdline/cmdline_parser.h).

This is the start of a command line parsing refactor, and may include
more in the future (dex2oat, patchoat, etc).

For more details of the command line parsing generator usage see cmdline/README.md

Change-Id: Ic67c6bca5e1f33bf2ec60e2e3ff8c366bab91563

9 years agoam a8fb460f: Merge "ART: Fix old run scripts"
Andreas Gampe [Wed, 4 Feb 2015 21:28:00 +0000 (21:28 +0000)]
am a8fb460f: Merge "ART: Fix old run scripts"

* commit 'a8fb460f0a5c96881c433f9586bdf1f705c97d35':
  ART: Fix old run scripts

9 years agoMerge "ART: Fix old run scripts"
Andreas Gampe [Wed, 4 Feb 2015 21:20:25 +0000 (21:20 +0000)]
Merge "ART: Fix old run scripts"

9 years agoART: Fix old run scripts
Andreas Gampe [Wed, 4 Feb 2015 02:26:55 +0000 (18:26 -0800)]
ART: Fix old run scripts

The run scripts had not been updated when the central command script
was unified, so they were always choosing target mode.

Also update the run scripts so they abort when wrong options are
used.

Also strip superfluous whitespace from commands.

Change-Id: I13cc59f43734a86062fc3ce5ff4ea308c301d4d3

9 years agoam f30c00fc: Merge "Fix incorrect static const"
Mathieu Chartier [Wed, 4 Feb 2015 21:12:19 +0000 (21:12 +0000)]
am f30c00fc: Merge "Fix incorrect static const"

* commit 'f30c00fc436264014338744f9902346f0642df3b':
  Fix incorrect static const

9 years agoMerge "Fix incorrect static const"
Mathieu Chartier [Wed, 4 Feb 2015 20:54:11 +0000 (20:54 +0000)]
Merge "Fix incorrect static const"

9 years agoFix incorrect static const
Mathieu Chartier [Wed, 4 Feb 2015 20:52:34 +0000 (12:52 -0800)]
Fix incorrect static const

Bug: 19265183
Change-Id: I573df60fe90952246d2126ced010f2bdac006bca

9 years agoam 7d318624: Merge "ART: Pass Options should be strings instead of integers"
Andreas Gampe [Wed, 4 Feb 2015 19:26:41 +0000 (19:26 +0000)]
am 7d318624: Merge "ART: Pass Options should be strings instead of integers"

* commit '7d3186247cd382c4f7cf8093961795e8565b00e0':
  ART: Pass Options should be strings instead of integers

9 years agoMerge "ART: Pass Options should be strings instead of integers"
Andreas Gampe [Wed, 4 Feb 2015 19:21:04 +0000 (19:21 +0000)]
Merge "ART: Pass Options should be strings instead of integers"

9 years agoam c470aefe: Merge "Fix occasional long ThreadSuspendSleep"
Mathieu Chartier [Wed, 4 Feb 2015 19:15:49 +0000 (19:15 +0000)]
am c470aefe: Merge "Fix occasional long ThreadSuspendSleep"

* commit 'c470aefe5abb9ab0b209c7c99139734efe97b177':
  Fix occasional long ThreadSuspendSleep

9 years agoMerge "Fix occasional long ThreadSuspendSleep"
Mathieu Chartier [Wed, 4 Feb 2015 19:07:24 +0000 (19:07 +0000)]
Merge "Fix occasional long ThreadSuspendSleep"

9 years agoam a4ddb549: Merge "Fix a bug in the inliner."
Nicolas Geoffray [Wed, 4 Feb 2015 15:43:39 +0000 (15:43 +0000)]
am a4ddb549: Merge "Fix a bug in the inliner."

* commit 'a4ddb5493e2426488074cfeccf1b1e779d5385ee':
  Fix a bug in the inliner.

9 years agoam a6919983: Merge "ART: Dump environment to cfg file."
Nicolas Geoffray [Wed, 4 Feb 2015 15:43:38 +0000 (15:43 +0000)]
am a6919983: Merge "ART: Dump environment to cfg file."

* commit 'a6919983bfc7e2c1eb69a4408f940146a2b78d59':
  ART: Dump environment to cfg file.

9 years agoam c2024144: Merge "Create HGraph outside Builder, print timings"
David Brazdil [Wed, 4 Feb 2015 15:43:37 +0000 (15:43 +0000)]
am c2024144: Merge "Create HGraph outside Builder, print timings"

* commit 'c2024144da54504d819869dc928ce4ac975634d4':
  Create HGraph outside Builder, print timings

9 years agoam 53150eb4: Merge "Fix a bug in combination of intrinsics and kNoOutputOverlap."
Nicolas Geoffray [Wed, 4 Feb 2015 15:43:36 +0000 (15:43 +0000)]
am 53150eb4: Merge "Fix a bug in combination of intrinsics and kNoOutputOverlap."

* commit '53150eb4fb5c3bbcb0138b8dccb481726299f6ab':
  Fix a bug in combination of intrinsics and kNoOutputOverlap.

9 years agoam f4b24f7e: Merge "ART: Change x86 long param ABI (Quick/JNI/Opt)"
Nicolas Geoffray [Wed, 4 Feb 2015 15:43:35 +0000 (15:43 +0000)]
am f4b24f7e: Merge "ART: Change x86 long param ABI (Quick/JNI/Opt)"

* commit 'f4b24f7ea507ff41db39154a1e6a681a582e224a':
  ART: Change x86 long param ABI (Quick/JNI/Opt)

9 years agoam 6bc17805: Merge "Fix test after register allocator changes."
Nicolas Geoffray [Wed, 4 Feb 2015 15:43:35 +0000 (15:43 +0000)]
am 6bc17805: Merge "Fix test after register allocator changes."

* commit '6bc17805d2df2678de186e3b4c3e2f959a48555f':
  Fix test after register allocator changes.

9 years agoam b73e4447: Merge "Finally implement Location::kNoOutputOverlap."
Nicolas Geoffray [Wed, 4 Feb 2015 15:43:33 +0000 (15:43 +0000)]
am b73e4447: Merge "Finally implement Location::kNoOutputOverlap."

* commit 'b73e4447736996f7cc8b193d7e3f5c38d5739d22':
  Finally implement Location::kNoOutputOverlap.

9 years agoMerge "Fix a bug in the inliner."
Nicolas Geoffray [Wed, 4 Feb 2015 15:28:41 +0000 (15:28 +0000)]
Merge "Fix a bug in the inliner."

9 years agoFix a bug in the inliner.
Nicolas Geoffray [Wed, 4 Feb 2015 14:52:20 +0000 (14:52 +0000)]
Fix a bug in the inliner.

Code did not work in the presence of multiple returns.
Spotted by Mark P. Mendell.

Change-Id: I237050a0d79c0cfaa479e9b886f7450879e84713

9 years agoMerge "ART: Dump environment to cfg file."
Nicolas Geoffray [Wed, 4 Feb 2015 14:02:24 +0000 (14:02 +0000)]
Merge "ART: Dump environment to cfg file."

9 years agoART: Dump environment to cfg file.
Zheng Xu [Fri, 9 Jan 2015 06:40:47 +0000 (14:40 +0800)]
ART: Dump environment to cfg file.

Environment shows additional dependency and instructions with environment
should usually be a safepoint as well.

Change-Id: I04606624e6ea212ab1dc7502cdb87b5d5d0e3ac2

9 years agoMerge "Create HGraph outside Builder, print timings"
David Brazdil [Wed, 4 Feb 2015 13:51:17 +0000 (13:51 +0000)]
Merge "Create HGraph outside Builder, print timings"

9 years agoCreate HGraph outside Builder, print timings
David Brazdil [Fri, 23 Jan 2015 14:39:08 +0000 (14:39 +0000)]
Create HGraph outside Builder, print timings

This patch refactors the way HGraph objects are created, moving the
instantiation out of the Builder class and creating the CodeGenerator
earlier. The patch uses this to build a single interface for printing
timings info and dumping the CFG.

Change-Id: I2eb63eabf28e2d0f5cdc7affaa690c3a4b1bdd21

9 years agoMerge "Fix a bug in combination of intrinsics and kNoOutputOverlap."
Nicolas Geoffray [Wed, 4 Feb 2015 10:58:28 +0000 (10:58 +0000)]
Merge "Fix a bug in combination of intrinsics and kNoOutputOverlap."

9 years agoFix a bug in combination of intrinsics and kNoOutputOverlap.
Nicolas Geoffray [Wed, 4 Feb 2015 10:44:23 +0000 (10:44 +0000)]
Fix a bug in combination of intrinsics and kNoOutputOverlap.

In case we need to go in the slow path for an intrinsic call,
we can't have the output be the same as the input: the current
liveness analysis considers the input to be live at the point of the call.

Change-Id: I5cbdc7f50dd06b4fefcbd3c213274fa645bd3fa0

9 years agoMerge "ART: Change x86 long param ABI (Quick/JNI/Opt)"
Nicolas Geoffray [Wed, 4 Feb 2015 09:45:14 +0000 (09:45 +0000)]
Merge "ART: Change x86 long param ABI (Quick/JNI/Opt)"

9 years agoMerge "Fix test after register allocator changes."
Nicolas Geoffray [Wed, 4 Feb 2015 09:39:31 +0000 (09:39 +0000)]
Merge "Fix test after register allocator changes."

9 years agoFix test after register allocator changes.
Nicolas Geoffray [Wed, 4 Feb 2015 09:38:49 +0000 (09:38 +0000)]
Fix test after register allocator changes.

Change-Id: I22b8faf7926d33ab19033deaba77001d164abd2a

9 years agoMerge "Finally implement Location::kNoOutputOverlap."
Nicolas Geoffray [Wed, 4 Feb 2015 09:13:32 +0000 (09:13 +0000)]
Merge "Finally implement Location::kNoOutputOverlap."

9 years agoFinally implement Location::kNoOutputOverlap.
Nicolas Geoffray [Wed, 28 Jan 2015 10:20:37 +0000 (10:20 +0000)]
Finally implement Location::kNoOutputOverlap.

The [i, i + 1) interval scheme we chose for representing
lifetime positions is not optimal for doing this optimization.
It however doesn't prevent recognizing a non-split interval
during the TryAllocateFreeReg phase, and try to re-use
its inputs' registers.

Change-Id: I80a2823b0048d3310becfc5f5fb7b1230dfd8201

9 years agoFix occasional long ThreadSuspendSleep
Mathieu Chartier [Tue, 3 Feb 2015 22:26:46 +0000 (14:26 -0800)]
Fix occasional long ThreadSuspendSleep

Since usleep can wait much longer than the specified us, we use
sched_yield instead for more predictable behavior.

Bug: 18379850
Change-Id: I729212251db1e86e470240b7a042bbf2d4e981cd

9 years agoam 69d69ea4: Merge "ART: checkpoint mechanism optimization"
Hiroshi Yamauchi [Tue, 3 Feb 2015 23:43:21 +0000 (23:43 +0000)]
am 69d69ea4: Merge "ART: checkpoint mechanism optimization"

* commit '69d69ea40fe64ff2e70daffc365a2fffe5964fcc':
  ART: checkpoint mechanism optimization

9 years agoMerge "ART: checkpoint mechanism optimization"
Hiroshi Yamauchi [Tue, 3 Feb 2015 23:39:13 +0000 (23:39 +0000)]
Merge "ART: checkpoint mechanism optimization"

9 years agoART: Pass Options should be strings instead of integers
Jean-Philippe Halimi [Tue, 20 Jan 2015 09:52:43 +0000 (10:52 +0100)]
ART: Pass Options should be strings instead of integers

This patch modifies the pass options to handle string
values as well as integers. This will allow for more
verbose pass customization.

Change-Id: Iaf9507ceaae2cef317a23f0783404bacfdcad023
Signed-off-by: Jean-Philippe Halimi <jean-philippe.halimi@intel.com>
9 years agoam 900e7b36: Merge "ARM/ARM64: Dump thread offset."
Andreas Gampe [Tue, 3 Feb 2015 18:44:41 +0000 (18:44 +0000)]
am 900e7b36: Merge "ARM/ARM64: Dump thread offset."

* commit '900e7b36057410cb12cc3c1a066dca04db3c2d45':
  ARM/ARM64: Dump thread offset.

9 years agoam f9af1941: Merge "Inline methods with multiple blocks."
Nicolas Geoffray [Tue, 3 Feb 2015 18:44:40 +0000 (18:44 +0000)]
am f9af1941: Merge "Inline methods with multiple blocks."

* commit 'f9af19413333c271192c3b11425f865bd8054c0c':
  Inline methods with multiple blocks.

9 years agoMerge "ARM/ARM64: Dump thread offset."
Andreas Gampe [Tue, 3 Feb 2015 18:26:48 +0000 (18:26 +0000)]
Merge "ARM/ARM64: Dump thread offset."

9 years agoMerge "Inline methods with multiple blocks."
Nicolas Geoffray [Tue, 3 Feb 2015 18:12:44 +0000 (18:12 +0000)]
Merge "Inline methods with multiple blocks."

9 years agoInline methods with multiple blocks.
Nicolas Geoffray [Mon, 2 Feb 2015 18:24:11 +0000 (18:24 +0000)]
Inline methods with multiple blocks.

Change-Id: I3431af60e97fae230e0b6e98bcf0acc0ee9abf8c

9 years agoam bd17c3b4: Merge "Use a different block order when not compiling baseline."
Nicolas Geoffray [Tue, 3 Feb 2015 17:23:42 +0000 (17:23 +0000)]
am bd17c3b4: Merge "Use a different block order when not compiling baseline."

* commit 'bd17c3b46b035861ced434d6ed4d4fe183736e65':
  Use a different block order when not compiling baseline.

9 years agoMerge "Use a different block order when not compiling baseline."
Nicolas Geoffray [Tue, 3 Feb 2015 17:20:45 +0000 (17:20 +0000)]
Merge "Use a different block order when not compiling baseline."

9 years agoUse a different block order when not compiling baseline.
Nicolas Geoffray [Tue, 3 Feb 2015 15:12:35 +0000 (15:12 +0000)]
Use a different block order when not compiling baseline.

Use the linearized order instead, as it puts blocks logically
next to each other in a better way. Also, it does not contain
dead blocks.

Change-Id: Ie65b56041a093c8155e6c1e06351cb36a4053505

9 years agoam bb2f65e6: Merge "Fix build by putting ATTRIBUTE_UNUSUED."
Nicolas Geoffray [Tue, 3 Feb 2015 14:36:32 +0000 (14:36 +0000)]
am bb2f65e6: Merge "Fix build by putting ATTRIBUTE_UNUSUED."

* commit 'bb2f65e64844bfca8d05d4c37991d858aa748648':
  Fix build by putting ATTRIBUTE_UNUSUED.

9 years agoam 0b87c470: Merge "Fix thumb2 assembler\'s ShifterOperandCanHold."
Nicolas Geoffray [Tue, 3 Feb 2015 14:32:40 +0000 (14:32 +0000)]
am 0b87c470: Merge "Fix thumb2 assembler\'s ShifterOperandCanHold."

* commit '0b87c47033081d4b86e6611d947d49926df6b577':
  Fix thumb2 assembler's ShifterOperandCanHold.

9 years agoMerge "Fix build by putting ATTRIBUTE_UNUSUED."
Nicolas Geoffray [Tue, 3 Feb 2015 14:31:47 +0000 (14:31 +0000)]
Merge "Fix build by putting ATTRIBUTE_UNUSUED."

9 years agoFix build by putting ATTRIBUTE_UNUSUED.
Nicolas Geoffray [Tue, 3 Feb 2015 13:59:52 +0000 (13:59 +0000)]
Fix build by putting ATTRIBUTE_UNUSUED.

Change-Id: If894fa1343a7c8a6456d707e815d803404a171d7

9 years agoMerge "Fix thumb2 assembler's ShifterOperandCanHold."
Nicolas Geoffray [Tue, 3 Feb 2015 14:26:59 +0000 (14:26 +0000)]
Merge "Fix thumb2 assembler's ShifterOperandCanHold."

9 years agoFix thumb2 assembler's ShifterOperandCanHold.
Nicolas Geoffray [Tue, 3 Feb 2015 13:59:52 +0000 (13:59 +0000)]
Fix thumb2 assembler's ShifterOperandCanHold.

Change-Id: Ica3c5f39d52722950725ba622fc67bd7f634918a

9 years agoam 08029544: Merge "ART: Fix to X86Mir2Lir::GenReduceVector"
Vladimir Marko [Tue, 3 Feb 2015 12:25:47 +0000 (12:25 +0000)]
am 08029544: Merge "ART: Fix to X86Mir2Lir::GenReduceVector"

* commit '08029544d72bd9bec162956978afcb59204ea97b':
  ART: Fix to X86Mir2Lir::GenReduceVector

9 years agoMerge "ART: Fix to X86Mir2Lir::GenReduceVector"
Vladimir Marko [Tue, 3 Feb 2015 12:20:44 +0000 (12:20 +0000)]
Merge "ART: Fix to X86Mir2Lir::GenReduceVector"

9 years agoam 09fbde3b: Merge "Allow nested inlining."
Nicolas Geoffray [Tue, 3 Feb 2015 12:11:13 +0000 (12:11 +0000)]
am 09fbde3b: Merge "Allow nested inlining."

* commit '09fbde3b2b4cad32059b0fd36524c11a808b2885':
  Allow nested inlining.

9 years agoam 515d828f: Merge "Go back to -O2."
Nicolas Geoffray [Tue, 3 Feb 2015 12:11:13 +0000 (12:11 +0000)]
am 515d828f: Merge "Go back to -O2."

* commit '515d828fd51f55bc71a6bcd268a7311f614d28b0':
  Go back to -O2.

9 years agoam d82b172b: Merge "Revert "Revert "ART: Make 074-gc-thrash more OOME tolerant"""
Nicolas Geoffray [Tue, 3 Feb 2015 12:11:12 +0000 (12:11 +0000)]
am d82b172b: Merge "Revert "Revert "ART: Make 074-gc-thrash more OOME tolerant"""

* commit 'd82b172b2b5f68f224ead383d35200123fa71119':
  Revert "Revert "ART: Make 074-gc-thrash more OOME tolerant""

9 years agoam 63aa9aec: Merge "Revert "ART: Make 074-gc-thrash more OOME tolerant""
Nicolas Geoffray [Tue, 3 Feb 2015 12:11:11 +0000 (12:11 +0000)]
am 63aa9aec: Merge "Revert "ART: Make 074-gc-thrash more OOME tolerant""

* commit '63aa9aec310dd0d49e66a6bba7777e56d544de01':
  Revert "ART: Make 074-gc-thrash more OOME tolerant"

9 years agoMerge "Allow nested inlining."
Nicolas Geoffray [Tue, 3 Feb 2015 11:22:35 +0000 (11:22 +0000)]
Merge "Allow nested inlining."

9 years agoAllow nested inlining.
Nicolas Geoffray [Fri, 30 Jan 2015 12:41:14 +0000 (12:41 +0000)]
Allow nested inlining.

Also run optimizations before iterating over
the instructions to get rid of, e.g., null checks.

Change-Id: I6e52e61ce4d0ccb63d687afea09bb4722453bb6a

9 years agoARM/ARM64: Dump thread offset.
Zheng Xu [Tue, 3 Feb 2015 04:03:15 +0000 (12:03 +0800)]
ARM/ARM64: Dump thread offset.

Dump thread offset in compiler verbose log for arm32/arm64 and
oatdump for arm64.

Before patch :
0x4e: ldr      lr, [rSELF, #604]
After patch :
0x4e: ldr      lr, [rSELF, #604]  ; pTestSuspend

Change-Id: I514e69dc44b1cf4c8a8fa085b31f93cf6a1b7c91

9 years agoMerge "Go back to -O2."
Nicolas Geoffray [Tue, 3 Feb 2015 10:14:54 +0000 (10:14 +0000)]
Merge "Go back to -O2."

9 years agoGo back to -O2.
Nicolas Geoffray [Tue, 3 Feb 2015 10:13:27 +0000 (10:13 +0000)]
Go back to -O2.

Stack space suffers otherwise.

Change-Id: I890a9714acd8500981c3d41df0f5f7fd63d48f8f

9 years agoMerge "Revert "Revert "ART: Make 074-gc-thrash more OOME tolerant"""
Nicolas Geoffray [Tue, 3 Feb 2015 10:11:09 +0000 (10:11 +0000)]
Merge "Revert "Revert "ART: Make 074-gc-thrash more OOME tolerant"""

9 years agoRevert "Revert "ART: Make 074-gc-thrash more OOME tolerant""
Nicolas Geoffray [Tue, 3 Feb 2015 10:10:52 +0000 (10:10 +0000)]
Revert "Revert "ART: Make 074-gc-thrash more OOME tolerant""

This reverts commit ed8b53d679d46891d8d405b0ce4a48c282d872f7.

This wasn't the reason for breakage. Instead, it was the Makefile change in:
https://android-review.googlesource.com/#/c/128250/

Change-Id: Ib94870c1eccbe821e3b4945ea92ca35ca0a8a9b9

9 years agoART: checkpoint mechanism optimization
Lei Li [Mon, 2 Feb 2015 06:24:44 +0000 (14:24 +0800)]
ART: checkpoint mechanism optimization

GC thread and trim thread are both using checkpoint mechanism. GC thread
will request java threads to mark their thread roots by themselves. Trim
thread will request java threads to trim their jni local reference
tables by themselves.

The checkpint mechanism semantics is that the runnable java threads will
run checkpoint function itself at safepoint, and finally the java
threads and gc thread or trim thread is synchronized via barrier. If the
java threads are not runnable, gc thread or trim thread will suspend
them and then run their checkpoint functions one by one on behalf of
them. If all the java threads are not runnable, then gc thread or trim
thread will do all the work itself. In this case, there is no need
synchronization. This will save unnecessary synchronization and thread
state transitions.

Change-Id: If55940946cb3f8b1af42c7237c334f09c8ec7a9f

9 years agoMerge "Revert "ART: Make 074-gc-thrash more OOME tolerant""
Nicolas Geoffray [Tue, 3 Feb 2015 08:48:43 +0000 (08:48 +0000)]
Merge "Revert "ART: Make 074-gc-thrash more OOME tolerant""

9 years agoRevert "ART: Make 074-gc-thrash more OOME tolerant"
Nicolas Geoffray [Tue, 3 Feb 2015 08:48:27 +0000 (08:48 +0000)]
Revert "ART: Make 074-gc-thrash more OOME tolerant"

Redness on the boards.

This reverts commit 2f6046edd7da9bb67e30b377955ff6faa8bff67e.

Change-Id: I8e169c537aaa76e34a7027460e3e9bff6f75a581

9 years agoam 5a7c6344: Merge "ART: Make 074-gc-thrash more OOME tolerant"
Andreas Gampe [Tue, 3 Feb 2015 03:41:00 +0000 (03:41 +0000)]
am 5a7c6344: Merge "ART: Make 074-gc-thrash more OOME tolerant"

* commit '5a7c634406b2acc4917009b43dcc7def2178a79b':
  ART: Make 074-gc-thrash more OOME tolerant

9 years agoam c398b058: Merge "ART: Fix assembler_thumb_test"
Andreas Gampe [Tue, 3 Feb 2015 03:40:59 +0000 (03:40 +0000)]
am c398b058: Merge "ART: Fix assembler_thumb_test"

* commit 'c398b0580fc7a7be768dcd6786d5ab6e7a892c9e':
  ART: Fix assembler_thumb_test

9 years agoMerge "ART: Make 074-gc-thrash more OOME tolerant"
Andreas Gampe [Tue, 3 Feb 2015 03:36:14 +0000 (03:36 +0000)]
Merge "ART: Make 074-gc-thrash more OOME tolerant"

9 years agoMerge "ART: Fix assembler_thumb_test"
Andreas Gampe [Tue, 3 Feb 2015 03:35:31 +0000 (03:35 +0000)]
Merge "ART: Fix assembler_thumb_test"

9 years agoART: Fix assembler_thumb_test
Andreas Gampe [Tue, 3 Feb 2015 03:17:11 +0000 (19:17 -0800)]
ART: Fix assembler_thumb_test

Fix the inconsistent calls. This was bad practice, requiring that
shape meant arm32 and thumb were not interchangeable.

Also fix an error in the assembler itself for tst and teq.

Change-Id: I50242801002aa81cc17bfaa53eb8b7c1d9488fbc

9 years agoART: Make 074-gc-thrash more OOME tolerant
Andreas Gampe [Tue, 3 Feb 2015 01:44:31 +0000 (17:44 -0800)]
ART: Make 074-gc-thrash more OOME tolerant

The strong and weak array need to stay in sync. Don't set the
strong reference when the weak reference can't be allocated.

Change-Id: I6c8f245627d206d89a378099cea97e4f1cd1d9fa

9 years agoam a1a0ffb7: Merge "ART: Fix thumb2 utils assembler"
Andreas Gampe [Tue, 3 Feb 2015 01:31:03 +0000 (01:31 +0000)]
am a1a0ffb7: Merge "ART: Fix thumb2 utils assembler"

* commit 'a1a0ffb72c4d7170dee9d46f055ca56932eedbae':
  ART: Fix thumb2 utils assembler

9 years agoMerge "ART: Fix thumb2 utils assembler"
Andreas Gampe [Tue, 3 Feb 2015 01:26:14 +0000 (01:26 +0000)]
Merge "ART: Fix thumb2 utils assembler"

9 years agoART: Fix thumb2 utils assembler
Andreas Gampe [Mon, 2 Feb 2015 21:17:52 +0000 (13:17 -0800)]
ART: Fix thumb2 utils assembler

It didn't correctly put down the 16b variants, as it was not
checking the ShifterOperand correctly.

Add one simple test. TODO: exhaustive testing.

Change-Id: Ied08da115f8417a3ca92bd9967c6dcdc102e7510

9 years agoam 7687b250: Merge "ART: Fix run-tests for emulator"
Andreas Gampe [Tue, 3 Feb 2015 01:17:36 +0000 (01:17 +0000)]
am 7687b250: Merge "ART: Fix run-tests for emulator"

* commit '7687b250a565f465e3222c8b5adda1427f10c5f6':
  ART: Fix run-tests for emulator

9 years agoMerge "ART: Fix run-tests for emulator"
Andreas Gampe [Tue, 3 Feb 2015 01:12:55 +0000 (01:12 +0000)]
Merge "ART: Fix run-tests for emulator"

9 years agoART: Fix to X86Mir2Lir::GenReduceVector
Mark Mendell [Tue, 27 Jan 2015 14:51:26 +0000 (09:51 -0500)]
ART: Fix to X86Mir2Lir::GenReduceVector

When generating the result to memory, the existing code didn't set the
aliasing correctly.

Mark the result as going to a Dalvik VR, and mark it as only a write.

Change-Id: I12f3156b7f84548b320a4fc142ff5a87a14e73d1
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
9 years agoam 4336b97f: Merge "Fix broken gtests after SuspendCheck optimization"
David Brazdil [Mon, 2 Feb 2015 19:25:06 +0000 (19:25 +0000)]
am 4336b97f: Merge "Fix broken gtests after SuspendCheck optimization"

* commit '4336b97fc291d28f883607c88feaff202a684a59':
  Fix broken gtests after SuspendCheck optimization

9 years agoMerge "Fix broken gtests after SuspendCheck optimization"
David Brazdil [Mon, 2 Feb 2015 19:11:29 +0000 (19:11 +0000)]
Merge "Fix broken gtests after SuspendCheck optimization"

9 years agoFix broken gtests after SuspendCheck optimization
David Brazdil [Mon, 2 Feb 2015 18:58:27 +0000 (18:58 +0000)]
Fix broken gtests after SuspendCheck optimization

Fixes hardcoded graph dumps in pretty printer tests and an assumption
that non-zero branch offset in dex implies presence of HInstructions.

Change-Id: Iee273c06b7b36410b4621107bef2f3592ece2f5b

9 years agoART: Fix run-tests for emulator
Andreas Gampe [Wed, 28 Jan 2015 00:12:08 +0000 (16:12 -0800)]
ART: Fix run-tests for emulator

On a standard emulator, there is no sdcard emulation, so trying to
create a temp file in /sdcard will fail - it will try to create in
the root file system, which is read-only.

Change-Id: If7d1ad82db156177a5be58c2f79ed730cf7ab6b9

9 years agoam ec57f287: Merge "No SuspendChecks when branching to return block"
David Brazdil [Mon, 2 Feb 2015 18:06:47 +0000 (18:06 +0000)]
am ec57f287: Merge "No SuspendChecks when branching to return block"

* commit 'ec57f287ba0475e9f9e6dad749b67625d0c0d92e':
  No SuspendChecks when branching to return block

9 years agoMerge "No SuspendChecks when branching to return block"
David Brazdil [Mon, 2 Feb 2015 18:01:39 +0000 (18:01 +0000)]
Merge "No SuspendChecks when branching to return block"