OSDN Git Service
Igor Murashkin [Wed, 4 Feb 2015 23:35:52 +0000 (23:35 +0000)]
Merge "Fix broken volantis build"
Igor Murashkin [Wed, 4 Feb 2015 23:11:27 +0000 (15:11 -0800)]
Fix broken volantis build
Change-Id: Iedc1a94fd1ec4224b605b984c11cfcc8c1c510e3
Igor Murashkin [Wed, 4 Feb 2015 21:45:13 +0000 (21:45 +0000)]
Merge "art: 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
Andreas Gampe [Wed, 4 Feb 2015 21:20:25 +0000 (21:20 +0000)]
Merge "ART: 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
Mathieu Chartier [Wed, 4 Feb 2015 20:54:11 +0000 (20:54 +0000)]
Merge "Fix 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
Andreas Gampe [Wed, 4 Feb 2015 19:21:04 +0000 (19:21 +0000)]
Merge "ART: Pass Options should be strings instead of integers"
Mathieu Chartier [Wed, 4 Feb 2015 19:07:24 +0000 (19:07 +0000)]
Merge "Fix occasional long ThreadSuspendSleep"
Nicolas Geoffray [Wed, 4 Feb 2015 15:28:41 +0000 (15:28 +0000)]
Merge "Fix 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
Nicolas Geoffray [Wed, 4 Feb 2015 14:02:24 +0000 (14:02 +0000)]
Merge "ART: 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
David Brazdil [Wed, 4 Feb 2015 13:51:17 +0000 (13:51 +0000)]
Merge "Create 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
Nicolas Geoffray [Wed, 4 Feb 2015 10:58:28 +0000 (10:58 +0000)]
Merge "Fix 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
Nicolas Geoffray [Wed, 4 Feb 2015 09:45:14 +0000 (09:45 +0000)]
Merge "ART: Change x86 long param ABI (Quick/JNI/Opt)"
Nicolas Geoffray [Wed, 4 Feb 2015 09:39:31 +0000 (09:39 +0000)]
Merge "Fix 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
Nicolas Geoffray [Wed, 4 Feb 2015 09:13:32 +0000 (09:13 +0000)]
Merge "Finally 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
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
Hiroshi Yamauchi [Tue, 3 Feb 2015 23:39:13 +0000 (23:39 +0000)]
Merge "ART: checkpoint mechanism optimization"
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>
Andreas Gampe [Tue, 3 Feb 2015 18:26:48 +0000 (18:26 +0000)]
Merge "ARM/ARM64: Dump thread offset."
Nicolas Geoffray [Tue, 3 Feb 2015 18:12:44 +0000 (18:12 +0000)]
Merge "Inline 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
Nicolas Geoffray [Tue, 3 Feb 2015 17:20:45 +0000 (17:20 +0000)]
Merge "Use 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
Nicolas Geoffray [Tue, 3 Feb 2015 14:31:47 +0000 (14:31 +0000)]
Merge "Fix 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
Nicolas Geoffray [Tue, 3 Feb 2015 14:26:59 +0000 (14:26 +0000)]
Merge "Fix 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
Vladimir Marko [Tue, 3 Feb 2015 12:20:44 +0000 (12:20 +0000)]
Merge "ART: Fix to X86Mir2Lir::GenReduceVector"
Nicolas Geoffray [Tue, 3 Feb 2015 11:22:35 +0000 (11:22 +0000)]
Merge "Allow 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
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
Nicolas Geoffray [Tue, 3 Feb 2015 10:14:54 +0000 (10:14 +0000)]
Merge "Go 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
Nicolas Geoffray [Tue, 3 Feb 2015 10:11:09 +0000 (10:11 +0000)]
Merge "Revert "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
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
Nicolas Geoffray [Tue, 3 Feb 2015 08:48:43 +0000 (08:48 +0000)]
Merge "Revert "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
Andreas Gampe [Tue, 3 Feb 2015 03:36:14 +0000 (03:36 +0000)]
Merge "ART: Make 074-gc-thrash more OOME tolerant"
Andreas Gampe [Tue, 3 Feb 2015 03:35:31 +0000 (03:35 +0000)]
Merge "ART: 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
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
Andreas Gampe [Tue, 3 Feb 2015 01:26:14 +0000 (01:26 +0000)]
Merge "ART: 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
Andreas Gampe [Tue, 3 Feb 2015 01:12:55 +0000 (01:12 +0000)]
Merge "ART: Fix run-tests for emulator"
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>
David Brazdil [Mon, 2 Feb 2015 19:11:29 +0000 (19:11 +0000)]
Merge "Fix 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
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
David Brazdil [Mon, 2 Feb 2015 18:01:39 +0000 (18:01 +0000)]
Merge "No SuspendChecks when branching to return block"
David Brazdil [Mon, 2 Feb 2015 15:23:05 +0000 (15:23 +0000)]
No SuspendChecks when branching to return block
The return basic block is usually placed at the beginning of the DEX
file, making the branches to it back edges where the Optimizing's
graph builder places SuspendCheck instructions, only to be removed
later by the instruction_simplifier pass. Since huge auto-generated
methods tend to contain hundreds/thousands of these, this patch
recognizes the pattern and prevents builder from generating the
redundant check in the first place.
Change-Id: I065a3c2f71964b8fc2e53dc20730ba42938b78a1
Hiroshi Yamauchi [Mon, 2 Feb 2015 17:45:21 +0000 (17:45 +0000)]
Merge "Clean up enums in RegionSpace."
Vladimir Marko [Mon, 2 Feb 2015 16:57:36 +0000 (16:57 +0000)]
Merge "AdvanceMIR does not know how to passthrough the empty block"
Andreas Gampe [Mon, 2 Feb 2015 15:57:09 +0000 (15:57 +0000)]
Merge "ART: Fix x86 disassembler"
Serguei Katkov [Thu, 29 Jan 2015 11:08:05 +0000 (17:08 +0600)]
AdvanceMIR does not know how to passthrough the empty block
AdvanceMIR utility function could easily traverse the empty
blocks to find the next bytecode.
Change-Id: I037710b567275799f940b5b9766bcafec570b70e
Signed-off-by: Serguei Katkov <serguei.i.katkov@intel.com>
Brian Carlstrom [Sun, 1 Feb 2015 06:19:39 +0000 (06:19 +0000)]
Merge "Check for null class of class"
Mathieu Chartier [Thu, 29 Jan 2015 18:47:10 +0000 (10:47 -0800)]
Check for null class of class
Experimental fix.
Bug:
19193521
(cherry picked from commit
65370e37b3fd9e53e3c1bce5757912e8309cd305)
Change-Id: If59fe9a7bd16f3578ed036a5dbb2787862b33766
Brian Carlstrom [Sun, 1 Feb 2015 05:58:57 +0000 (05:58 +0000)]
Merge "Revert "Allow preopted apps to have sharpened calls for non-x86 architectures.""
Brian Carlstrom [Sun, 1 Feb 2015 05:35:32 +0000 (21:35 -0800)]
Revert "Allow preopted apps to have sharpened calls for non-x86 architectures."
This reverts commit
1e3dfff2b73e142c568625a0310c1764658218c4.
Andreas Gampe [Sat, 31 Jan 2015 03:14:59 +0000 (03:14 +0000)]
Merge "Add Mips64 art_quick_proxy_invoke_handler assembly."
Douglas Leung [Sat, 31 Jan 2015 02:13:58 +0000 (18:13 -0800)]
Add Mips64 art_quick_proxy_invoke_handler assembly.
This fixes a crash during boot.
Change-Id: Ia69f3a38757355d1c33095ab59ce659a9b4ef737
Hiroshi Yamauchi [Sat, 31 Jan 2015 00:25:12 +0000 (16:25 -0800)]
Clean up enums in RegionSpace.
Split enum RegionState into two enums, RegionState and
RegionType. Merge the latter with SubSpaceType.
Use RefToRegionUnlocked in RegionSpace::AddLiveBytes.
Turn some CHECKs into DCHECKs.
Improve the Ritz EAAC run time and the GC time by ~20%.
Bug:
12687968
Change-Id: Icdb8ab3e9ec2a1eefc8c9a2e4bb19befcf2562a6
Chih-Hung Hsieh [Sat, 31 Jan 2015 01:24:50 +0000 (01:24 +0000)]
Merge "Disable clang optimization to boot up on arm64."
Andreas Gampe [Sat, 31 Jan 2015 01:12:35 +0000 (01:12 +0000)]
Merge "ART: Add Mips64 resolution trampoline assembly"
Andreas Gampe [Sat, 31 Jan 2015 01:04:45 +0000 (17:04 -0800)]
ART: Add Mips64 resolution trampoline assembly
Add the resolution trampoline assembly.
Change-Id: I45306f5913c6f57f46b97cb87fa321ae16642292
Chih-Hung Hsieh [Fri, 30 Jan 2015 23:37:34 +0000 (15:37 -0800)]
Disable clang optimization to boot up on arm64.
On arm64 devices, clang compiled lib64/libart.so repeatedly
crashes during boot up stage. That prevents a stable adb connection.
When optimization of BitVector::NumSetBits is disabled,
we can boot up to Android home screen, although some Apps
are still unstable.
This is a temporary workaround only for clang/llvm arm64 target,
to enable concurrent debugging on other bugs.
BUG:
19180814
Change-Id: Id82497ce4be0b2c30d36679d15394848d826f50c
Dan Albert [Fri, 30 Jan 2015 22:49:13 +0000 (22:49 +0000)]
Merge "Add options for building/testing with coverage."
Brian Carlstrom [Fri, 30 Jan 2015 19:14:50 +0000 (19:14 +0000)]
Merge "Remove some unused cutils/properties.h references"
Brian Carlstrom [Fri, 30 Jan 2015 18:18:03 +0000 (10:18 -0800)]
Remove some unused cutils/properties.h references
Also remove an obsolete include workaround
Change-Id: Ie17387280285b969c4e9b5334bafde8239b9faf6
Nicolas Geoffray [Fri, 30 Jan 2015 17:49:06 +0000 (17:49 +0000)]
Merge "Use the non access check entrypoint when possible."
Nicolas Geoffray [Wed, 28 Jan 2015 14:50:01 +0000 (14:50 +0000)]
Use the non access check entrypoint when possible.
Change-Id: I0b53d63141395e26816d5d2ce3fa6a297bb39b54
Dan Albert [Wed, 1 Oct 2014 05:10:10 +0000 (22:10 -0700)]
Add options for building/testing with coverage.
acov --clean
mm -B NATIVE_COVERAGE=true ART_COVERAGE=true test-art-host
acov --host
-B is needed because you need to be sure you rebuild *all* of ART with
coverage.
Change-Id: Ib94ef610bd1b44dc45624877710ed733051b7a50
Mark Mendell [Mon, 19 Jan 2015 19:09:22 +0000 (14:09 -0500)]
ART: Change x86 long param ABI (Quick/JNI/Opt)
Ensure that we don't pass a long parameter across the last register
and the stack: skip the register and allocate it only on the stack.
This was requested to simplify the optimizing compiler code
generation for x86.
Optimizing (Baseline) compiler support for x86 longs:
- Remove QuickParameter from Location, as there are no longer any uses
of it.
Bump oat.h version because we changed an ABI again.
I changed IsParamALong() to return false for argument 0 (this argument).
I am not sure why it differed from all other tests.
I have not tested on ARM. I followed Nicolas's suggestions for setting
the value of kSplitPairAcrossRegisterAndStack for different
architectures.
Change-Id: I2f16b33c1dac58dd4f4f503e9c2309d845f5fb7a
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Nicolas Geoffray [Fri, 30 Jan 2015 09:54:25 +0000 (09:54 +0000)]
Merge "Implement LICM in optimizing compiler."
Nicolas Geoffray [Mon, 26 Jan 2015 10:02:45 +0000 (10:02 +0000)]
Implement LICM in optimizing compiler.
Change-Id: I9c8afb0a58ef45e568576015473cbfd5f011c242
Dan Albert [Thu, 29 Jan 2015 22:19:40 +0000 (22:19 +0000)]
Merge "Remove libcxx.mk cruft."
Dan Albert [Thu, 29 Jan 2015 21:28:13 +0000 (13:28 -0800)]
Remove libcxx.mk cruft.
This is on by default now. No need to leave it in the makefiles.
Change-Id: I20eab7426da4bbbf8b70ffc5b9af7b97487d885d
Jeff Hao [Thu, 29 Jan 2015 19:02:54 +0000 (19:02 +0000)]
Merge "Allow preopted apps to have sharpened calls for non-x86 architectures."
Andreas Gampe [Thu, 29 Jan 2015 18:52:34 +0000 (18:52 +0000)]
Merge "Introduce primitive type helpers."
Alexandre Rames [Thu, 29 Jan 2015 16:57:31 +0000 (16:57 +0000)]
Introduce primitive type helpers.
Change-Id: I81e909a185787f109c0afafa27b4335050a0dcdf
Nicolas Geoffray [Thu, 29 Jan 2015 12:02:12 +0000 (12:02 +0000)]
Merge "optimizing: NullCheck elimination"
Calin Juravle [Mon, 26 Jan 2015 18:54:32 +0000 (18:54 +0000)]
optimizing: NullCheck elimination
How it works:
- run a type analysis to propagate null information on instructions
- during the last instruction simplifier remove null checks for which
the input is known to be not null
The current type analysis is actually a nullability analysis but it will
be reused in follow up CLs to propagate type information: so it keeps
the more convenient name.
Change-Id: I54bb1d32ab24604b4d677d1ecdaf8d60a5ff5ce9
Nicolas Geoffray [Thu, 29 Jan 2015 11:40:22 +0000 (11:40 +0000)]
Merge "Fix bad rebase."
Nicolas Geoffray [Thu, 29 Jan 2015 11:39:44 +0000 (11:39 +0000)]
Fix bad rebase.
Change-Id: Ia66c5ec4a612908b749b058d85f374d1f1b72a2a
Nicolas Geoffray [Thu, 29 Jan 2015 11:05:48 +0000 (11:05 +0000)]
Merge "[optimizing compiler] Support x86 hard float ABI"
Nicolas Geoffray [Thu, 29 Jan 2015 10:55:11 +0000 (10:55 +0000)]
Merge "Small optimization for recursive calls: avoid dex cache."
Nicolas Geoffray [Fri, 12 Dec 2014 19:22:03 +0000 (19:22 +0000)]
Small optimization for recursive calls: avoid dex cache.
Change-Id: I044757a2f06e535cdc1480c4fc8182b89635baf6
Mathieu Chartier [Thu, 29 Jan 2015 01:17:10 +0000 (01:17 +0000)]
Merge "Clean up pass driver"
Mathieu Chartier [Tue, 27 Jan 2015 02:30:19 +0000 (18:30 -0800)]
Clean up pass driver
Added pass manager to hold the state which used to be in global
variables.
Static variables caused issues with Runtime.exit since they are
destroyed by the global destructors while threads are still
executing.
Bug:
17950037
Change-Id: Ie0e4546dc9e48909c8df996a5c135be682d50044
Andreas Gampe [Wed, 28 Jan 2015 23:36:25 +0000 (23:36 +0000)]
Merge "ART: Arm64 optimizing compiler intrinsics"
Andreas Gampe [Fri, 16 Jan 2015 07:24:00 +0000 (23:24 -0800)]
ART: Arm64 optimizing compiler intrinsics
Implement most intrinsics for the optimizing compiler for Arm64.
Change-Id: Idb459be09f0524cb9aeab7a5c7fccb1c6b65a707
Mathieu Chartier [Wed, 28 Jan 2015 22:34:48 +0000 (22:34 +0000)]
Merge "Force set resolved method for static invokes"