OSDN Git Service
Nicolas Geoffray [Tue, 21 Apr 2015 08:12:40 +0000 (09:12 +0100)]
Linear scan: Use FirstUse instead of FirstRegisterUse.
This is in preparation for introducing synthesized used at back edges.
Change-Id: Ie28d6725d2dde982cf2137f2110daabcbab9f789
Dan Albert [Thu, 16 Apr 2015 23:24:24 +0000 (23:24 +0000)]
Merge "Fix value used for shift in quick_cfi_test."
Mathieu Chartier [Thu, 16 Apr 2015 21:39:11 +0000 (21:39 +0000)]
Merge "Fix build"
Mathieu Chartier [Thu, 16 Apr 2015 21:34:45 +0000 (14:34 -0700)]
Fix build
art/runtime/mirror/art_method-inl.h:142: error: undefined
reference to 'art::ClassLinker::ResolveType(unsigned short,
art::mirror::ArtMethod*)'
Change-Id: I3c5d26eed13e3f8d0a4d96756c09364707b6358e
Dan Albert [Thu, 16 Apr 2015 18:52:45 +0000 (11:52 -0700)]
Fix value used for shift in quick_cfi_test.
The spill mask bit should be shifted by the register number, not the
whole register mask.
Previously this test was shifting by values well over the width of the
type, which is undefined behavior.
Change-Id: Idf750be6d95b4487f8f4570b8c7ff9dba38be9f2
Yabin Cui [Thu, 16 Apr 2015 18:35:13 +0000 (18:35 +0000)]
Merge "Remove transitive dependency on <cutils/atomic.h>."
Yabin Cui [Wed, 15 Apr 2015 22:40:18 +0000 (15:40 -0700)]
Remove transitive dependency on <cutils/atomic.h>.
Bug:
20262261
Change-Id: Ic6c2ed76e692fc09100b917e00ee9b73621ec8f0
Mathieu Chartier [Thu, 16 Apr 2015 17:23:31 +0000 (17:23 +0000)]
Merge "Disable parallel GC by default"
David Brazdil [Thu, 16 Apr 2015 17:22:19 +0000 (17:22 +0000)]
Merge "ART: Replace expensive calls to Covers in reg alloc"
David Brazdil [Thu, 16 Apr 2015 16:59:03 +0000 (17:59 +0100)]
ART: Replace expensive calls to Covers in reg alloc
LiveInterval::Covers is implemented as a linear-time search over
liveness ranges and can therefore be rather expensive and should be
avoided unless necessary. This patch replaces calls to Covers when
searching for a sibling with the cheaper IsDefinedAt call.
Change-Id: I93fc73529c15a518335f4cbdc3a0def52d9501e5
Mathieu Chartier [Thu, 16 Apr 2015 16:52:33 +0000 (16:52 +0000)]
Merge "Don't call ComputeEagerResolvedStrings"
Mathieu Chartier [Thu, 16 Apr 2015 03:03:16 +0000 (20:03 -0700)]
Don't call ComputeEagerResolvedStrings
Doesn't add any strings to the dex caches, takes 50ms on nexus 5
during image writing.
Change-Id: Ib38d456b765a90efc0008955f974446fbe285bff
Calin Juravle [Thu, 16 Apr 2015 15:53:22 +0000 (15:53 +0000)]
Merge "Remove duplicates phis created during SSA transformation"
Calin Juravle [Thu, 16 Apr 2015 11:57:19 +0000 (12:57 +0100)]
Remove duplicates phis created during SSA transformation
When creating equivalent phis we copy the inputs of the original phi
which may be improperly typed. This will be fixed during the type
propagation but as a result we may have two equivalent phis with the
same type for the same dex register. This is correct but generates more
code and prevent some optimizations.
This CL adds another step in the SSA builder to remove the extra Phi
nodes created due to equality operators.
The graph checker verifies that for a given dex register not two phis
have the same type.
Also, replace zero int constant with null constant when we compare a
reference against null.
Change-Id: Id37cc11a016ea767c7e351575e003d822a9d2e60
David Brazdil [Thu, 16 Apr 2015 15:41:52 +0000 (15:41 +0000)]
Merge "ART: Fix whitespace in test"
Calin Juravle [Thu, 16 Apr 2015 15:41:02 +0000 (15:41 +0000)]
Merge "Fallback to quick in case of soft verification errors"
David Brazdil [Thu, 16 Apr 2015 15:37:01 +0000 (16:37 +0100)]
ART: Fix whitespace in test
Change-Id: Ia17ac99868efcc7ff32ea63f72644097dd2065bf
Calin Juravle [Mon, 13 Apr 2015 17:42:21 +0000 (18:42 +0100)]
Fallback to quick in case of soft verification errors
Add a regression test: using uninitialized values triggers a soft
verification error and optimizing should not crash.
Thanks to Stephen Kyle (stephenckyle@googlemail.com) for the bug report.
Bug:
19988704
Change-Id: I67174538eed853baff735694b3ae8eb34afe2a39
David Brazdil [Thu, 16 Apr 2015 15:17:10 +0000 (15:17 +0000)]
Merge "ART: Adds a regression test for an inliner issue"
David Brazdil [Thu, 16 Apr 2015 14:42:27 +0000 (15:42 +0100)]
ART: Adds a regression test for an inliner issue
Regression test for CL Ieddadcd94135930a1f29ad64ad57349a384da07f.
Change-Id: Ibc8fd827a4b8b3d0cddf7f7590a689ec99bf1329
David Brazdil [Thu, 16 Apr 2015 14:25:55 +0000 (14:25 +0000)]
Merge "ART: Hot fix for an inliner issue"
David Brazdil [Thu, 16 Apr 2015 14:18:00 +0000 (15:18 +0100)]
ART: Hot fix for an inliner issue
Change 147130 caused a problem with duplicit instruction ids when
inlining methods with constants. This is a hot fix to unblock build.
Change-Id: Ieddadcd94135930a1f29ad64ad57349a384da07f
Nicolas Geoffray [Thu, 16 Apr 2015 13:36:44 +0000 (13:36 +0000)]
Merge "Split safepoint positions to avoid calling Covers."
Nicolas Geoffray [Thu, 16 Apr 2015 12:01:01 +0000 (13:01 +0100)]
Split safepoint positions to avoid calling Covers.
This is also in preparation for caller/callee save based
register allocation.
Change-Id: I63954bdae5ea7870568fd93b4d11e1c9dcd6de6f
David Brazdil [Thu, 16 Apr 2015 10:10:59 +0000 (10:10 +0000)]
Merge "ART: Remove DCHECKs for boolean type"
David Brazdil [Wed, 15 Apr 2015 15:29:32 +0000 (16:29 +0100)]
ART: Remove DCHECKs for boolean type
Since bool and int are interchangeable types, checking whether an
input is kPrimBoolean can fail when replaced with 0/1 constant or
a phi. This patch removes the problematic DCHECKs, adds a best-effort
verification into SSAChecker but leaves the phi case empty until a
suitable analysis is implemented.
Change-Id: I31e8daf27dd33d2fd74049b82bed1cb7c240c8c6
David Brazdil [Thu, 16 Apr 2015 09:49:55 +0000 (09:49 +0000)]
Merge "ART: Don't duplicate null/int/long constants when inlining"
David Brazdil [Thu, 16 Apr 2015 09:38:44 +0000 (10:38 +0100)]
ART: Don't duplicate null/int/long constants when inlining
Change-Id: I7e6a3393fcbbcf76b4ba2000915ba6bbbfb7c70e
Calin Juravle [Thu, 16 Apr 2015 09:40:38 +0000 (09:40 +0000)]
Merge "Revert "[optimizing] Improve x86 parallel moves/swaps""
Nicolas Geoffray [Thu, 16 Apr 2015 08:00:07 +0000 (08:00 +0000)]
Merge "Remove dead blocks for the blocks_ array."
Andreas Gampe [Thu, 16 Apr 2015 04:24:04 +0000 (04:24 +0000)]
Merge "ART: Streaming trace mode"
Andreas Gampe [Fri, 27 Feb 2015 20:49:04 +0000 (12:49 -0800)]
ART: Streaming trace mode
Add a streaming mode for tracing. Streaming uses a buffer of 16KB
and writes to the output when that buffer gets full. Streaming mode
can be enabled with -Xmethod-trace-stream and is currently not
exposed otherwise.
Add a python script that can parse the streaming format, which
simply contains strings for newly encountered threads and methods
inline, and create output that can be used with traceview.
Add Trace::Pause and Trace::Abort, which can pause and abort tracing.
Abort is different from Stop in that it does not write the data.
Add code to the zygote hooks JNI implementation that pauses tracing
before the fork, making sure that a child cannot clobber the parent's
data.
Add code to the zygote hooks JNI implementation that aborts old
tracing and starts new tracing in the child after the fork. Currently
base the output on the pid. This will not work on an unmodified
device, as the profiles directory is not generally writable, but
we do not have enough information at that point. Consider a scheme
that restarts tracing later.
Change-Id: I93c7bf87e35af582bdfdd3ecc7c52454514220dd
Mathieu Chartier [Wed, 15 Apr 2015 21:21:33 +0000 (14:21 -0700)]
Disable parallel GC by default
Not using parallel GC seems to reduce avg pauses by ~0.1s on
EvaluateAndApplyChanges. Avoiding creating the thread pool should
help app launch slightly and reduce memory ussage.
Change-Id: Iebec2a17701c76e4145b41d7c0b4f6dd17806efa
Nicolas Geoffray [Wed, 15 Apr 2015 17:22:45 +0000 (18:22 +0100)]
Remove dead blocks for the blocks_ array.
This prevents crashing because of structurally incorrect
blocks. Also we now don't need to remove its instructions.
Test case courtesy of Serguei I Katkov.
Change-Id: Ia3ef9580549fc3546e8cd5f346079b1f0ceb2a61
Guillaume Sanchez [Wed, 15 Apr 2015 18:57:27 +0000 (18:57 +0000)]
Revert "[optimizing] Improve x86 parallel moves/swaps"
This reverts commit
a5c19ce8d200d68a528f2ce0ebff989106c4a933.
This commit introduces a performance regression on CaffeineLogic of 30%.
Change-Id: I917e206e249d44e1748537bc1b2d31054ea4959d
Nicolas Geoffray [Wed, 15 Apr 2015 14:10:29 +0000 (14:10 +0000)]
Merge "Type MoveOperands."
Nicolas Geoffray [Wed, 15 Apr 2015 13:29:02 +0000 (13:29 +0000)]
Merge "Move the linear order to the HGraph."
Nicolas Geoffray [Wed, 15 Apr 2015 13:17:44 +0000 (14:17 +0100)]
Move the linear order to the HGraph.
Bug found by Zheng Xu: SsaLivenessAnalysis being a stack allocated
object, we should not refer to it in later phases of the compiler.
Specifically, the code generator was using the linear order, which
was stored in the liveness analysis object.
Change-Id: I574641f522b7b86fc43f3914166108efc72edb3b
Nicolas Geoffray [Wed, 15 Apr 2015 10:56:51 +0000 (11:56 +0100)]
Type MoveOperands.
The ParallelMoveResolver implementation needs to know if a move
is for 64bits or not, to handle swaps correctly.
Bug found, and test case courtesy of Serguei I. Katkov.
Change-Id: I9a0917a1cfed398c07e57ad6251aea8c9b0b8506
David Brazdil [Wed, 15 Apr 2015 11:53:08 +0000 (11:53 +0000)]
Merge "ART: Implement HBooleanNot instruction"
David Brazdil [Fri, 3 Apr 2015 15:02:44 +0000 (16:02 +0100)]
ART: Implement HBooleanNot instruction
Optimizations simplifying operations on boolean values (boolean
simplifier, instruction simplifier) can benefit from having a special
HInstruction for negating booleans in order to perform more transforms
and produce faster machine code.
This patch implements HBooleanNot as 'x xor 1', assuming that booleans
are 1-bit integers and allowing for a single-instruction negation on
all supported platforms.
Change-Id: I33a2649c1821255b18a86ca68ed16416063c739f
David Srbecky [Wed, 15 Apr 2015 10:15:09 +0000 (10:15 +0000)]
Merge "Do not deduplicate code if --debuggable is set."
Nicolas Geoffray [Wed, 15 Apr 2015 10:08:06 +0000 (10:08 +0000)]
Merge "Revert "Add a check in the location summary.""
Nicolas Geoffray [Wed, 15 Apr 2015 10:07:52 +0000 (10:07 +0000)]
Revert "Add a check in the location summary."
My assumption was wrong. We actually can use same as first input with any, *only if* the generate code does not clobber the first input. We use this for, e.g. DivZeroCheck, NullCheck.
This reverts commit
95bf7547986e68d4ac93b0a529aaa8eb3c998c1f.
Change-Id: Ib72d73fe580f5bc707b41c651f2c8936bd4e2407
David Srbecky [Wed, 15 Apr 2015 01:46:30 +0000 (02:46 +0100)]
Do not deduplicate code if --debuggable is set.
This ensures that the correct method is displayed in backtrace, and it
makes it possible to reliably set native breakpoints in the methods.
I assume this will also be needed for java debugging as soon as the
ArtMethod* is removed from the stackframe.
Change-Id: I289e85461c231fde2d45473bb19aff9ad5fb496d
Nicolas Geoffray [Wed, 15 Apr 2015 09:17:19 +0000 (09:17 +0000)]
Merge "Add a check in the location summary."
Nicolas Geoffray [Wed, 15 Apr 2015 09:17:03 +0000 (09:17 +0000)]
Merge "Refactor safepoints in register allocator."
Nicolas Geoffray [Tue, 14 Apr 2015 13:10:59 +0000 (14:10 +0100)]
Refactor safepoints in register allocator.
This is in preparation for adding logic around callee/caller
saved in the register allocator.
Change-Id: I4204169f0a6a01074880538833144be7b0810882
Nicolas Geoffray [Tue, 14 Apr 2015 16:05:16 +0000 (17:05 +0100)]
Add a check in the location summary.
Having SameAsFirstInput for out, and first input Any does not
make sense currently. If it's stack, we are going to overwrite
it, potentially clobbering another local. And constant does not
make sense.
Change-Id: I0ce357137487ed3dcecf4efd9922a039a2a1a29d
Vladimir Marko [Wed, 15 Apr 2015 08:28:59 +0000 (08:28 +0000)]
Merge "ARM64: Remove suspend register."
Andreas Gampe [Wed, 15 Apr 2015 05:44:30 +0000 (05:44 +0000)]
Merge "ART: More nullptr checks in unstarted runtime"
Andreas Gampe [Wed, 15 Apr 2015 05:16:14 +0000 (22:16 -0700)]
ART: More nullptr checks in unstarted runtime
More checks necessary for the compiler-driver test.
Change-Id: I29bc20d1f571df5407f9b5fca212e3e79ef9cdc7
David Srbecky [Wed, 15 Apr 2015 01:10:13 +0000 (01:10 +0000)]
Merge "Split .debug_info section to compilation units."
David Srbecky [Tue, 14 Apr 2015 00:57:43 +0000 (01:57 +0100)]
Split .debug_info section to compilation units.
This resolves old TODO in the code. It is also very important
for performance and memory usage of any tools which might be
consuming the debug data. Without this split, the tools
would be forced to decode (and probably store in memory) all of
debug data even for a simple query. With this change it should
be easy to find only the relevant compilation unit.
Change-Id: I9f285eaa01632b6adea39cae866df6f76e9d0062
Mathieu Chartier [Tue, 14 Apr 2015 22:54:07 +0000 (22:54 +0000)]
Merge "Remove suspend point from field loading"
Mathieu Chartier [Tue, 14 Apr 2015 22:43:10 +0000 (15:43 -0700)]
Remove suspend point from field loading
The error was that we had a partially constructed field array when we
got suspended by moving GC. This caused the already allocated fields
to not get updated, and be stale roots the next GC. Fixes test 125
with GSS collector.
Change-Id: I7278def915f540b6a9d12677a6ba61637f5949a2
Andreas Gampe [Tue, 14 Apr 2015 21:17:04 +0000 (21:17 +0000)]
Merge "ART: Store classpath information into oat file"
Andreas Gampe [Thu, 9 Apr 2015 18:15:04 +0000 (11:15 -0700)]
ART: Store classpath information into oat file
Store a "dependency list" of class-path dex-files into the key-value
store of an oat file. The list is made up of dex locations and
corresponding checksums.
Add tests for encoding, decoding and checking the list.
Bug:
19781184
Change-Id: Ie700dd37e6e086db599c95d329ac1f1d2ff0b758
Andreas Gampe [Tue, 14 Apr 2015 21:07:05 +0000 (21:07 +0000)]
Merge "ART: Add Security cutout to unstarted runtime"
Andreas Gampe [Tue, 14 Apr 2015 21:06:16 +0000 (21:06 +0000)]
Merge "ART: Make the PathClassLoader fast-path recursive"
Andreas Gampe [Tue, 14 Apr 2015 05:14:19 +0000 (22:14 -0700)]
ART: Make the PathClassLoader fast-path recursive
Allow an arbitrary nesting of path class-loaders. This will also
handle the fake java.lang.BootClassLoader as a class-loader object
correctly (which is of some importance to compile-time initialization).
Bug:
19781184
Bug:
19542228
Change-Id: I61f0249cf4ec8df08a83ccbd29bcf067619c28c0
Mathieu Chartier [Tue, 14 Apr 2015 18:54:15 +0000 (18:54 +0000)]
Merge "Fix test 104 for --relocate --no-patchoat"
Mathieu Chartier [Tue, 14 Apr 2015 18:33:53 +0000 (11:33 -0700)]
Fix test 104 for --relocate --no-patchoat
Failure caused by keeping an array live in a vreg, this caused
getDeclaredMethod to throw OOME.
Change-Id: Id2aa976af0978cdd7354fb94b3becfcc85e19ca2
Mathieu Chartier [Tue, 14 Apr 2015 18:12:13 +0000 (18:12 +0000)]
Merge "Fix valgrind tests"
Mathieu Chartier [Tue, 14 Apr 2015 16:35:18 +0000 (09:35 -0700)]
Fix valgrind tests
Delete large objects in space destructor. Also some cleanup.
Change-Id: I4c4e90149841a156b7a3236201b37683e14890fb
Andreas Gampe [Tue, 14 Apr 2015 17:33:50 +0000 (17:33 +0000)]
Merge "ART: Add a null-check to unstarted-runtime"
Hiroshi Yamauchi [Tue, 14 Apr 2015 17:31:12 +0000 (17:31 +0000)]
Merge "getRuntimeStat() support (ART)."
Andreas Gampe [Tue, 14 Apr 2015 17:10:33 +0000 (10:10 -0700)]
ART: Add a null-check to unstarted-runtime
Check the string parameter to Class.forName before using it.
Bug:
19542228
Change-Id: I0d5c44122055c46e251451b1c0f687bbaf64d13e
Andreas Gampe [Mon, 13 Apr 2015 21:17:09 +0000 (14:17 -0700)]
ART: Add Security cutout to unstarted runtime
This allows limited I/O in the compiler to read security.properties,
which in turn allows to compile-time initialize Security, and thus
Services and most of the providers.
Bug:
19498458
Bug:
19542228
Change-Id: I853952b83ca99006907c070734f767259c975517
Roland Levillain [Tue, 14 Apr 2015 16:34:44 +0000 (16:34 +0000)]
Merge "Opt Compiler: ARM64 goodness"
Zheng Xu [Tue, 14 Apr 2015 12:04:41 +0000 (20:04 +0800)]
ARM64: Remove suspend register.
It also clean up build/remove frame used by JNI compiler and generates
stp/ldp instead of str/ldr. Also x19 has been unblocked in both quick and
optimizing compiler.
Change-Id: Idbeac0942265f493266b2ef9b7a65bb4054f0e2d
Nicolas Geoffray [Tue, 14 Apr 2015 15:35:23 +0000 (15:35 +0000)]
Merge "Fix a bug in type propagation."
Nicolas Geoffray [Tue, 14 Apr 2015 14:11:57 +0000 (15:11 +0100)]
Fix a bug in type propagation.
If a phi requests its inputs to be of a certain type, the inputs need
to propagate that type to their users, as those users might be
phis.
Bug report and test courtesy of Serguei I Katkov.
Change-Id: I79baac271566ec4fa684c1edf11a1b3383d896a9
Christopher Ferris [Tue, 14 Apr 2015 00:18:12 +0000 (00:18 +0000)]
Merge "Revert "ART: Turn of native stack dump on x86 on-device""
Mathieu Chartier [Mon, 13 Apr 2015 23:54:09 +0000 (23:54 +0000)]
Merge "Fix DCHECK failures from Class::VisitFieldRoots"
Christopher Ferris [Mon, 13 Apr 2015 23:18:02 +0000 (23:18 +0000)]
Revert "ART: Turn of native stack dump on x86 on-device"
This reverts commit
2f0751ea75e5f093d9ce7b8587e65a2ca3de0855.
Bug:
20040863
Change-Id: Ibd40916c0f84512b0ba13af09d4fd345be39e227
Mathieu Chartier [Fri, 10 Apr 2015 21:23:35 +0000 (14:23 -0700)]
Fix DCHECK failures from Class::VisitFieldRoots
We now use GetDeclaringClassUnchecked when marking roots to fix
flaky test failures. Fixed a race condition in root marking where
we could have non zero field array length with a null pointer.
Fixed a race condition where we could be marking roots before
FixupTemporaryDeclaringClass had finished. The solution is to
only do the declaring class CHECK if we are at least resolved.
Fixed JDWP tests by changing FieldId / MethodId to be 64 bits.
Also some cleanup.
Change-Id: Ibac09519860d93c3f68a5cc964bbc91dc10a279a
David Srbecky [Mon, 13 Apr 2015 22:42:56 +0000 (22:42 +0000)]
Merge "Append [DEDUPED] suffix to all deduped methods in the symbol table."
Hiroshi Yamauchi [Thu, 2 Apr 2015 17:18:12 +0000 (10:18 -0700)]
getRuntimeStat() support (ART).
Export some runtime stats (currently GC stats) via
VMDebug.getRuntimeStat().
Added several new GC stats such as blocking GC counts and GC count
histograms.
Bug:
19825248
Change-Id: I8ece9ed241dc3982dfd983d7159090ba82940dce
David Srbecky [Sun, 12 Apr 2015 12:12:26 +0000 (13:12 +0100)]
Append [DEDUPED] suffix to all deduped methods in the symbol table.
This resolves old TODO in the code. The first method was never
marked as deduped and only the subsequent copies were recognised.
Therefore the suffix might have been missing in backtraces.
Change-Id: I4882d90f3049f7e196cd38c8987ba02960dab338
David Srbecky [Mon, 13 Apr 2015 22:25:38 +0000 (22:25 +0000)]
Merge "Move the file which defines DWARF enums."
David Srbecky [Sun, 12 Apr 2015 07:47:47 +0000 (08:47 +0100)]
Move the file which defines DWARF enums.
It was previously part of the runtime since it was needed
by the linker. This is no longer the case so we can move
it to the DWARF utility library.
Change-Id: I1874fad45d27fd9ebbae17dd82d43322190f91ef
David Srbecky [Mon, 13 Apr 2015 20:44:26 +0000 (20:44 +0000)]
Merge "Add test for x86-64 DWARF register mapping."
David Srbecky [Sun, 12 Apr 2015 13:58:39 +0000 (14:58 +0100)]
Add test for x86-64 DWARF register mapping.
This is the only mapping which is non-trivial.
Change-Id: I59be4b6ffb0ffbbf00ddb72e77e80cfb9e89d9f2
David Srbecky [Mon, 13 Apr 2015 20:34:10 +0000 (20:34 +0000)]
Merge "Add --include-cfi compiler option."
David Srbecky [Sun, 12 Apr 2015 10:40:39 +0000 (11:40 +0100)]
Add --include-cfi compiler option.
Decouple generation of CFI from the rest of debug symbols.
This makes it possible to generate oat with CFI but without
the rest of debug symbols.
This is in line with intention of the .eh_frame section.
The section does not have the .debug_ prefix because it
is considered somewhat different to the rest of debug symbols.
Change-Id: I32816ecd4f30ac4e0dc69d69a4993e349c737f96
David Srbecky [Mon, 13 Apr 2015 20:00:53 +0000 (20:00 +0000)]
Merge "Remove the --gen-gdb-info compiler option."
David Srbecky [Mon, 13 Apr 2015 20:00:39 +0000 (20:00 +0000)]
Merge "Whitespace cleanup in DWARFReg helper functions."
David Srbecky [Mon, 13 Apr 2015 20:00:25 +0000 (20:00 +0000)]
Merge "Move 'ret' instruction generation inside GenerateFrameExit."
David Srbecky [Mon, 13 Apr 2015 19:52:39 +0000 (19:52 +0000)]
Merge "Relocate DWARF using .oat_patches."
Roland Levillain [Mon, 13 Apr 2015 17:50:33 +0000 (17:50 +0000)]
Merge "Exercise the x86 and x86-64 FILD and FISTP instructions."
Vladimir Marko [Mon, 13 Apr 2015 17:10:48 +0000 (17:10 +0000)]
Merge "ART: Clean up includes."
Sebastien Hertz [Mon, 13 Apr 2015 17:04:58 +0000 (17:04 +0000)]
Merge "JDWP: fix thread_list deadlock"
Roland Levillain [Mon, 13 Apr 2015 16:00:20 +0000 (17:00 +0100)]
Exercise the x86 and x86-64 FILD and FISTP instructions.
- Ensure the double- and quadword x87 (FPU) instructions for
integer loading (resp. fildl and fildll) are properly
generated by the x86 and x86-64 generators (resp.
X86Assembler::filds/X86_64Assembler::filds and
X86Assembler::fildl/X86_64Assembler::fildl).
- Ensure the double- and quadword x87 (FPU) instructions for
integer storing & popping (resp. filstpl and fistpll) are
properly generated by the x86 and x86-64 generators (resp.
X86Assembler::fistps/X86_64Assembler::fistps and
X86Assembler::fistpl/X86_64Assembler::fistpl).
These instructions can be used in the implementation of the
long-to-float and long-to-double Dex type conversions.
Change-Id: Iade52a9aee326d189d77d3dbd352a2b5dab52e46
Vladimir Marko [Mon, 13 Apr 2015 11:22:36 +0000 (12:22 +0100)]
ART: Clean up includes.
Reduce dependencies to improve incremental build times.
Break up circular dependency involving class_linker-inl.h.
Change-Id: I4be742c5c2b5cd9855beea86630fd68aab76b0db
Nicolas Geoffray [Mon, 13 Apr 2015 14:26:25 +0000 (14:26 +0000)]
Merge "Remove duplicated dex2oat usage message"
Calin Juravle [Mon, 13 Apr 2015 14:26:18 +0000 (14:26 +0000)]
Merge "Revert "Fallback to quick in case of soft verification errors""
Calin Juravle [Mon, 13 Apr 2015 14:25:53 +0000 (14:25 +0000)]
Revert "Fallback to quick in case of soft verification errors"
This reverts commit
c751d37e692d89b360f3c09421401f581b5c6d06.
Change-Id: I2183df8e856410989bc019f6a1f58af37d5d7eab
Snowcat8436 [Mon, 13 Apr 2015 13:48:57 +0000 (22:48 +0900)]
Remove duplicated dex2oat usage message
Because '--huge-method-max' usage message is duplicated,
Remove duplicated dex2oat usage message.
Change-Id: I91cef8319d7292e4977eba49dfcb8cc2cd9ac1bf
Calin Juravle [Mon, 13 Apr 2015 13:10:37 +0000 (13:10 +0000)]
Merge "Fallback to quick in case of soft verification errors"