OSDN Git Service
Brian Carlstrom [Wed, 24 Sep 2014 16:35:50 +0000 (16:35 +0000)]
Merge "Restore kReasonLogging for kDexoptNeeded and kPatchoatNeeded"
Brian Carlstrom [Tue, 23 Sep 2014 20:53:28 +0000 (13:53 -0700)]
Restore kReasonLogging for kDexoptNeeded and kPatchoatNeeded
Bug:
17565501
(cherry picked from commit
63582f211b7123d02f18dfa7075f6758ccb2b07c)
Change-Id: Ie1196191d92286e543ed099c7d1ea4712802912d
Andreas Gampe [Wed, 24 Sep 2014 07:34:13 +0000 (07:34 +0000)]
Merge "ART: Refactor elf_writer_quick for elf section order"
Andreas Gampe [Wed, 24 Sep 2014 05:58:07 +0000 (22:58 -0700)]
ART: Refactor elf_writer_quick for elf section order
This writes ELF sections in approximate order (debug sections are
currently out-of-order) to avoid incompletely written files
appearing OK to ART loading code.
Bug:
17622827
(cherry picked from commit
3c5ec99e156632a734c2359642ae928102850597)
Change-Id: I812fd42fcf2823dbfaf5891bf101d3b59406f263
Brian Carlstrom [Wed, 24 Sep 2014 07:17:45 +0000 (07:17 +0000)]
Merge "dex2oat should truncate files opened from file descriptors"
Brian Carlstrom [Wed, 24 Sep 2014 04:13:28 +0000 (21:13 -0700)]
dex2oat should truncate files opened from file descriptors
Bug:
17622827
(cherry picked from commit
aa93129ca54cc897fdc2c8ddd0a7136f7b5632ed)
Change-Id: I5467d488b4a57f7be35c72c16775df5bd5d69a52
Roland Levillain [Tue, 23 Sep 2014 17:13:54 +0000 (17:13 +0000)]
Merge "Optimizing compiler: ensure loop header dominates loop's blocks."
Sebastien Hertz [Tue, 23 Sep 2014 14:27:33 +0000 (14:27 +0000)]
Merge "Enable computed goto interpreter on the host"
Nicolas Geoffray [Tue, 23 Sep 2014 13:36:28 +0000 (13:36 +0000)]
Merge "Support for saving and restoring live registers in a slow path."
Nicolas Geoffray [Fri, 19 Sep 2014 10:01:00 +0000 (11:01 +0100)]
Support for saving and restoring live registers in a slow path.
And use it in suspend check slow paths.
Change-Id: I79caf28f334c145a36180c79a6e2fceae3990c31
Sebastien Hertz [Thu, 28 Aug 2014 16:25:09 +0000 (18:25 +0200)]
Enable computed goto interpreter on the host
We disabled the computed goto interpreter when compiling with clang because of
compilation issues. Since we compile with clang on the host, we used the
switch-based interpreter.
Now clang is able to compile the computed goto interpreter, we can use it by
default on the host.
Change-Id: Ifa2a2d3c171b1116ecd3b3f213382c3c85e93f66
Nicolas Geoffray [Tue, 23 Sep 2014 11:25:56 +0000 (11:25 +0000)]
Merge "Fix code generation with materialized conditions."
Nicolas Geoffray [Mon, 22 Sep 2014 14:51:11 +0000 (15:51 +0100)]
Fix code generation with materialized conditions.
Change-Id: I8630af3c13fc1950d3fa718d7488407b00898796
Roland Levillain [Tue, 23 Sep 2014 09:50:22 +0000 (10:50 +0100)]
Optimizing compiler: ensure loop header dominates loop's blocks.
Change-Id: I6b2f1fdaac9f91dc5d9901cc2ad4c83745e90e70
Roland Levillain [Tue, 23 Sep 2014 09:02:32 +0000 (09:02 +0000)]
Merge "Add loop- and phi-related checks in the optimizing compiler."
Mathieu Chartier [Mon, 22 Sep 2014 21:40:06 +0000 (21:40 +0000)]
Merge "Add ScopedAssertNoThreadSuspension"
Roland Levillain [Mon, 22 Sep 2014 16:13:44 +0000 (17:13 +0100)]
Add loop- and phi-related checks in the optimizing compiler.
- Ensure the pre-header block is first in the list of
predecessors of a loop header.
- Ensure the loop header has only two predecessors and that
only the second one is the back edge.
- Ensure there is only one back edge per loop.
- Ensure the first input of a phi is not itself.
- Ensure the number of phi inputs is the same as the number
of its predecessors.
- Ensure phi input at index I either comes from the Ith
predecessor or from a block that dominates this
predecessor.
Change-Id: I4db5c68cfbc9b74d2d03125753d0143ece625378
Nicolas Geoffray [Mon, 22 Sep 2014 14:22:08 +0000 (14:22 +0000)]
Merge "Also remove environment links to removed instructions."
Nicolas Geoffray [Mon, 22 Sep 2014 11:27:27 +0000 (12:27 +0100)]
Also remove environment links to removed instructions.
Change-Id: I505163fb8683269c7d3fe21b34df92337d244552
Nicolas Geoffray [Mon, 22 Sep 2014 10:56:06 +0000 (10:56 +0000)]
Merge "Fix a bug in the handling of moves in register allocator."
Nicolas Geoffray [Mon, 22 Sep 2014 10:51:51 +0000 (11:51 +0100)]
Fix a bug in the handling of moves in register allocator.
Change-Id: Iaf1f34b0bece4f252290a97c3b73cc06e365985a
Sebastien Hertz [Mon, 22 Sep 2014 10:30:36 +0000 (10:30 +0000)]
Merge "Optimize JDWP stack local values access"
Sebastien Hertz [Mon, 1 Sep 2014 15:07:11 +0000 (17:07 +0200)]
Optimize JDWP stack local values access
The StackFrame.GetValues and StackFrame.SetValues JDWP commands can refer to
multiple variables at the same time in a given frame. However we used to walk
the stack until getting to the requested frame for each variable.
Now, we walk the stack only once until getting to the frame so the context is
initialized. Then we read/write value for each variable from this context.
Bug:
17343501
Bug:
15680615
Change-Id: I2a4128f29a3c5856b994e280037c0a09eb48c5c8
Sebastien Hertz [Mon, 22 Sep 2014 09:10:17 +0000 (09:10 +0000)]
Merge "Do not hold breakpoint lock when running the verifier"
Nicolas Geoffray [Mon, 22 Sep 2014 08:31:34 +0000 (08:31 +0000)]
Merge "Add adb root to test-art-target, required by adb remount."
Sebastien Hertz [Mon, 22 Sep 2014 08:15:52 +0000 (08:15 +0000)]
Merge "Fix JDWP crash when reporting exception"
Sebastien Hertz [Fri, 19 Sep 2014 10:07:51 +0000 (12:07 +0200)]
Fix JDWP crash when reporting exception
The exception's throw location may be null so we need to handle that
case. Also fixes a memset issue.
Bug:
17571297
(cherry picked from commit
bbb63897d7f2d99219cb50721fe530521e08ddff)
Change-Id: Iedebb58f9460c5f04913c269200e51161bda1ba9
Sebastien Hertz [Thu, 18 Sep 2014 14:03:34 +0000 (16:03 +0200)]
Do not hold breakpoint lock when running the verifier
When setting a breakpoint, we need to know whether the method may be
inlined. We run the method verifier but that may cause thread
suspension. Therefore we must not hold any lock at this time. The
issue is we do hold the breakpoint lock so we fails a check in debug
mode.
This CL ensures we don't hold the breakpoint lock when running the
method verifier to detect inlining.
Bug:
17562442
Change-Id: Ia6b128fc8917ce00025b68ae4ac62fb2a1f154e6
Christopher Ferris [Sun, 21 Sep 2014 23:19:37 +0000 (23:19 +0000)]
Merge "Dump kernel/native stacks of pure native threads."
Christopher Ferris [Sat, 20 Sep 2014 00:23:59 +0000 (17:23 -0700)]
Dump kernel/native stacks of pure native threads.
Bug:
16463406
(cherry picked from commit
7da37cca5a5f71a0cd2442b2a119f76fa62e84b5)
Change-Id: I22a26d4ec4e3048ddcfd668eee4fccd8b2b3b727
Mathieu Chartier [Sat, 20 Sep 2014 00:52:37 +0000 (17:52 -0700)]
Add ScopedAssertNoThreadSuspension
Added a new class, ScopedAssertNoThreadSuspension.
Deleted some unnecessary ScopedAssertNoThreadSuspension since
VisitObjects already has a ScopedAssertNoThreadSuspension.
Change-Id: I29ec0006120c39a27184d30e2d1d0c179e203776
Ian Rogers [Sat, 20 Sep 2014 00:34:21 +0000 (00:34 +0000)]
Merge "Fix sput-wide verification flag."
Ian Rogers [Fri, 19 Sep 2014 23:23:01 +0000 (23:23 +0000)]
Merge "ART: Address three issues with x86 assembler before enabling load store elimination."
Andreas Gampe [Fri, 19 Sep 2014 16:54:18 +0000 (16:54 +0000)]
Merge "ART: Allow oatdump to verify oat file"
Ian Rogers [Fri, 19 Sep 2014 16:51:13 +0000 (16:51 +0000)]
Merge "ART: Fix host test failure (assembler_thumb_test)."
Ian Rogers [Fri, 19 Sep 2014 16:48:19 +0000 (16:48 +0000)]
Merge "ART: Overflow of bound check in ArrayCopy intrinsic"
Bill Buzbee [Fri, 19 Sep 2014 16:11:08 +0000 (16:11 +0000)]
Merge "Slow path should break def tracking"
Bill Buzbee [Fri, 19 Sep 2014 15:52:49 +0000 (15:52 +0000)]
Merge "AddIntrinsicSlowPath with resume requires clobbering"
Ian Rogers [Fri, 19 Sep 2014 15:44:24 +0000 (15:44 +0000)]
Merge "ART: Fix instruction flags of kMirOpCheck and kMirOpCheckPart2"
Ian Rogers [Fri, 19 Sep 2014 15:37:26 +0000 (15:37 +0000)]
Merge "X86 QBE: Make some X86 routines virtual"
Nicolas Geoffray [Fri, 19 Sep 2014 13:21:14 +0000 (13:21 +0000)]
Merge "First optimization in new compiler: simple GVN."
Nicolas Geoffray [Mon, 8 Sep 2014 16:30:24 +0000 (17:30 +0100)]
First optimization in new compiler: simple GVN.
Change-Id: Ibe0efa4e84fd020a53ded310a92e0b4363f91b12
Nicolas Geoffray [Mon, 15 Sep 2014 08:46:08 +0000 (09:46 +0100)]
Add adb root to test-art-target, required by adb remount.
Also replace our sleep 3 with wait-for-device.
Change-Id: Icb53c4ad0e8d5c6e93b9610eb7e9530242720581
Nicolas Geoffray [Fri, 19 Sep 2014 08:29:26 +0000 (08:29 +0000)]
Merge "Update comment about disabling vmap dump."
Andreas Gampe [Fri, 19 Sep 2014 07:33:46 +0000 (07:33 +0000)]
Merge "ART: Only allow the zygote to create the global boot image"
Andreas Gampe [Fri, 19 Sep 2014 03:56:04 +0000 (20:56 -0700)]
ART: Only allow the zygote to create the global boot image
Do not allow arbitrary processes, even when root, to write the
boot image in /data/dalvik-cache.
Bug:
17478752,
17510489,
17439961
Change-Id: Iba2b74be6d0752f4221f4ff5ee295b45a34cb2e1
(cherry picked from commit
33c36d4f22ab6a5e61eb47b654deaf647c34e49c)
Sebastien Hertz [Fri, 19 Sep 2014 06:29:26 +0000 (06:29 +0000)]
Merge "Move spammy logs to JDWP verbose mode"
Udayan Banerji [Tue, 9 Sep 2014 23:49:34 +0000 (16:49 -0700)]
ART: Fix instruction flags of kMirOpCheck and kMirOpCheckPart2
Since they are just wrappers for correct modeling, it was believed
that these instructions do not need flags. However, the flags
are needed to correctly reflect their semantic behavior in a manner
consistent with all other instructions.
Also, missing flags for new extended instructions have also been added.
Change-Id: I2282eebf4b9c82b82e26722914645fcc0be49c82
Signed-off-by: Udayan Banerji <udayan.banerji@intel.com>
Signed-off-by: Razvan A Lupusoru <razvan.a.lupusoru@intel.com>
Brian Carlstrom [Thu, 18 Sep 2014 18:24:06 +0000 (18:24 +0000)]
Merge "Don't call dlsym from signal context in signal chain"
Roland Levillain [Thu, 18 Sep 2014 16:07:18 +0000 (16:07 +0000)]
Merge "Initiate a constant propagation pass in the optimizing compiler."
Nicolas Geoffray [Thu, 18 Sep 2014 15:48:23 +0000 (15:48 +0000)]
Merge "Fix a lint error and update a test after the phi fix."
Nicolas Geoffray [Thu, 18 Sep 2014 15:46:20 +0000 (16:46 +0100)]
Fix a lint error and update a test after the phi fix.
Change-Id: I6e9ab2a8300c2493a8d3e93ab4ced3d7c9552fc5
Nicolas Geoffray [Thu, 18 Sep 2014 15:02:40 +0000 (15:02 +0000)]
Merge "Ensure the first predecessor of a loop is the pre header."
Roland Levillain [Thu, 18 Sep 2014 14:25:07 +0000 (15:25 +0100)]
Initiate a constant propagation pass in the optimizing compiler.
- Perform constant folding on int and long additions and subtractions in
the optimizing compiler.
- Apply constant folding to conditions and comparisons.
Change-Id: Ic88783a3c975fda777c74c531e257fa777be42eb
Sebastien Hertz [Thu, 18 Sep 2014 12:39:46 +0000 (12:39 +0000)]
Merge "Update JDWP event filtering to avoid useless ids"
Sebastien Hertz [Tue, 9 Sep 2014 10:10:13 +0000 (12:10 +0200)]
Update JDWP event filtering to avoid useless ids
To reduce the number of JDWP ids in the debugger, we update the event filtering
support to work with runtime objects (Thread, Class, Object, ...) instead of
JDWP ids (ThreadId, RefTypeId, ObjectId, ...).
We used to create useless JDWP ids for events even if they were not reported
because of event filtering (thread only, class only, instance only, ...). Now
we only create JDWP ids when we know we're going to report an event.
Bug:
17343664
(cherry picked from commit
d539167b7f11136fe570a77aff2ee4935842007a)
Change-Id: I8619e219733fc2fa3569f473b7bd8d9af4181f2b
Nicolas Geoffray [Thu, 18 Sep 2014 11:22:38 +0000 (11:22 +0000)]
Merge "It can be that no method has been compiled."
Nicolas Geoffray [Thu, 18 Sep 2014 10:59:27 +0000 (10:59 +0000)]
Merge "Small fixes to get the boot image compiled in debug mode."
Nicolas Geoffray [Thu, 18 Sep 2014 10:31:32 +0000 (11:31 +0100)]
It can be that no method has been compiled.
Therefore do not divide by 0, but log it.
Change-Id: Iee7760ab7f31c73e90d62387e5fb6fb7aa2c56e2
Sebastien Hertz [Thu, 18 Sep 2014 08:20:42 +0000 (10:20 +0200)]
Move spammy logs to JDWP verbose mode
We are spammed by warning messages when debugging, especially each time we
suspend/resume all threads (to update instrumentation or collect monitor info).
It's common to get into the cases where these warnings are logged so they
shouldn't be warning but debug messages.
This CL moves these LOG(WARNING) to VLOG(jdwp) to not disturb developers when
debugging their app (especially when looking for specific messages in logcat).
We keep them in JDWP verbose mode because they help knowing when we initiate
these sequences of "suspend/resume all threads".
Also adds debug suspend count in the log message for more context.
Bug:
17524544
Bug:
17170697
Change-Id: Ic87985ac6913151d15fd89849e41bde61092c3dd
Roland Levillain [Thu, 18 Sep 2014 09:37:30 +0000 (09:37 +0000)]
Merge "Initiate a dead code elimination pass in the optimizing compiler."
Roland Levillain [Thu, 18 Sep 2014 09:37:02 +0000 (09:37 +0000)]
Merge "Add CFG and SSA form checkers in the optimizing compiler."
Andreas Gampe [Thu, 18 Sep 2014 04:49:05 +0000 (21:49 -0700)]
ART: Allow oatdump to verify oat file
Bring up a runtime for oatdump of an oat file if the boot image
option is given. This allows to use the verifier on any oat file.
Some refactoring.
Change-Id: Ifa895f22b648c7064fb0837fb36a0118422a3462
Nicolas Geoffray [Wed, 17 Sep 2014 17:21:53 +0000 (18:21 +0100)]
Small fixes to get the boot image compiled in debug mode.
Change-Id: Id697737a1bcfb87f407d707e2ddd4f50a77caf26
Brian Carlstrom [Thu, 18 Sep 2014 06:10:34 +0000 (06:10 +0000)]
Merge "Use homogeneous space compact by default if not low memory."
Mathieu Chartier [Wed, 20 Aug 2014 21:13:18 +0000 (14:13 -0700)]
Use homogeneous space compact by default if not low memory.
Otherwise we use semispace as the background collector.
Bug:
16401001
(cherry picked from commit
a33a7fadadc7cb42c83b4aaed01f3a4c126d3075)
Change-Id: I6f753f72a05856f31a3e06427abce630231738a3
Brian Carlstrom [Thu, 18 Sep 2014 05:49:49 +0000 (05:49 +0000)]
Merge "Restore some aosp/master changes lost in cherry-pick
7c438b19b71932ac8a44eff44f20744a01559c8d"
Mathieu Chartier [Sat, 13 Sep 2014 02:46:28 +0000 (19:46 -0700)]
Restore some aosp/master changes lost in cherry-pick
7c438b19b71932ac8a44eff44f20744a01559c8d
Change-Id: Ic9fe8a235baac85efbdf748aeaddf98139558c4e
Brian Carlstrom [Thu, 18 Sep 2014 05:02:10 +0000 (05:02 +0000)]
Merge "Add allocation rate tracking to systrace."
Mathieu Chartier [Wed, 13 Aug 2014 17:08:05 +0000 (10:08 -0700)]
Add allocation rate tracking to systrace.
Bug:
16956980
(cherry picked from commit
837150818af0eee993f7d93c5a50c3c7b46f1dab)
Change-Id: I3d0b18bfb9db24917f055f66f08f5f4168301867
Brian Carlstrom [Thu, 18 Sep 2014 03:50:45 +0000 (03:50 +0000)]
Merge "ART: skip compilation of huge methods."
buzbee [Wed, 17 Sep 2014 20:23:58 +0000 (13:23 -0700)]
ART: skip compilation of huge methods.
Besides not being worthwhile to compile, it huge methods could cause
overflow of some internal compiler structures.
internal b/
17524219
(cherry picked from commit
bf5d818f7e59ce33521ad81bbab68b1e7a09e0ba)
Change-Id: If99b47c3191c69feee319c9d73537e827ba0cc1d
Brian Carlstrom [Wed, 17 Sep 2014 22:24:31 +0000 (22:24 +0000)]
Merge "Only log an error if an unattached thread is unregistered."
Jeff Hao [Wed, 17 Sep 2014 21:56:53 +0000 (21:56 +0000)]
Merge "Avoid suspending for alloc trace enabling when already suspended."
Andreas Gampe [Wed, 17 Sep 2014 21:49:54 +0000 (21:49 +0000)]
Merge "ART: Avoid recursive abort on thread dump"
Andreas Gampe [Wed, 17 Sep 2014 21:49:47 +0000 (21:49 +0000)]
Merge "ART: Sync oat file to disk before patching"
Andreas Gampe [Tue, 16 Sep 2014 22:15:13 +0000 (15:15 -0700)]
ART: Avoid recursive abort on thread dump
Also clean up unused variable.
Bug:
15567083
Change-Id: Id83a3784bbe88520a4ffe654b2553d36a7b8e5bc
(cherry picked from commit
2f9e21503c2b6958213f9a2610023c7ab8a01707)
Andreas Gampe [Tue, 16 Sep 2014 23:40:09 +0000 (16:40 -0700)]
ART: Sync oat file to disk before patching
Bug:
15567083,
17439961,
17510489,
17478752
(cherry picked from commit
035592c51fee2995a3d90a9043f91a7a3128df2b)
Change-Id: I828dc6775044b5050c2520eb097abe6a920fd3ee
Jeff Hao [Tue, 16 Sep 2014 01:03:41 +0000 (18:03 -0700)]
Avoid suspending for alloc trace enabling when already suspended.
Bug:
17499772
(cherry picked from commit
1d6ee090fddd4bfd35c304d6ceb929d5c529dfcc)
Change-Id: Id09809c476c685f0a197ee75bb08638931364efd
Mathieu Chartier [Wed, 17 Sep 2014 18:52:24 +0000 (18:52 +0000)]
Merge "Add allocation tracking allocators to ROSAlloc"
Roland Levillain [Mon, 15 Sep 2014 17:29:00 +0000 (18:29 +0100)]
Initiate a dead code elimination pass in the optimizing compiler.
Change-Id: Ie9db5d8e2c2c30e34145a0f7d2386b8ec58cfc4e
Roland Levillain [Tue, 16 Sep 2014 13:48:16 +0000 (14:48 +0100)]
Add CFG and SSA form checkers in the optimizing compiler.
Checks performed on control-flow graphs:
- Ensure that the predecessors and successors of a basic block are
consistent within a control-flow graph.
- Ensure basic blocks end with a branch instruction.
- Detect phi functions listed in non-phi instruction lists and vice
versa.
- Ensure a block's instructions (and phi functions) are associated
with this very block.
Checks performed on SSA form graphs:
- Ensure an instruction dominates all its uses.
- Ensure there are no critical edges.
Change-Id: I1c12b4a61ecf608682152c897980ababa7eca847
avignate [Wed, 17 Sep 2014 15:35:07 +0000 (22:35 +0700)]
ART: Overflow of bound check in ArrayCopy intrinsic
System.arraycopy method is implemented as intrinsic on x86. It has
bound check which has a bug to overflow in certain conditions
when summ of array offset and number elements to be copied are
more than MAX_INT. For the methods like CarArrayBuffer.get it
means no OutOfBound exception to be thrown. The proposed
solution fixed that.
Change-Id: Id16a26163a61d934b862a8729a52ca5c1a56caec
Signed-off-by: avignate <aleksey.v.ignatenko@intel.com>
Sebastien Hertz [Wed, 17 Sep 2014 13:04:41 +0000 (13:04 +0000)]
Merge "Avoid crash in StringReference.Value JDWP command"
Nicolas Geoffray [Wed, 17 Sep 2014 11:08:44 +0000 (12:08 +0100)]
Ensure the first predecessor of a loop is the pre header.
Note that the check in ssa_phi_elimination.cc was very defensive:
it does not affect the outcome of the algorithm whether the
loop phi takes itself as the first input.
It makes things consistent to always have the pre header as first
input.
Change-Id: Ic86248c1f38af67f7432782f6deefae1f4bf1ab6
Nicolas Geoffray [Wed, 17 Sep 2014 10:27:23 +0000 (11:27 +0100)]
Update comment about disabling vmap dump.
Change-Id: If5d09b0d5cb9a8039b0037e6eedaae6785b1ded2
Nicolas Geoffray [Wed, 17 Sep 2014 10:03:58 +0000 (10:03 +0000)]
Merge "Add the "time" compilation filter and output compilation stats."
Nicolas Geoffray [Fri, 12 Sep 2014 09:29:53 +0000 (10:29 +0100)]
Add the "time" compilation filter and output compilation stats.
A "time" compiler filter means the compiler optimizes for
compile time.
Change-Id: Id1a207ceb2d95f3548aae5e45d51b80695da2029
Sebastien Hertz [Mon, 15 Sep 2014 09:27:27 +0000 (11:27 +0200)]
Avoid crash in StringReference.Value JDWP command
Checks for null or invalid object id. Also checks whether the corresponding
object is a java.lang.String.
Bug:
17492221
Bug:
15005460
(cherry picked from commit
29259fa6b0514866d2d4bf57d58c1557b26abbb7)
Change-Id: I52673bdef6912a4cccf5a6eeecb6e1e817b9dd6b
Sebastien Hertz [Wed, 17 Sep 2014 09:32:32 +0000 (09:32 +0000)]
Merge "Check for errors in ThreadGroupReference JDWP commands"
Nicolas Geoffray [Wed, 17 Sep 2014 09:21:12 +0000 (09:21 +0000)]
Merge "Fix lint error."
Nicolas Geoffray [Wed, 17 Sep 2014 09:19:01 +0000 (10:19 +0100)]
Fix lint error.
Change-Id: Idd5b1f621f4dfaff717795cdbe76d8732b17aa9e
Nicolas Geoffray [Wed, 17 Sep 2014 08:54:54 +0000 (08:54 +0000)]
Merge "Implement invoke virtual in optimizing compiler."
Nicolas Geoffray [Wed, 13 Aug 2014 01:11:24 +0000 (02:11 +0100)]
Implement invoke virtual in optimizing compiler.
Also refactor 004 tests to make them work with both Quick and
Optimizing.
Change-Id: I87e275cb0ae0258fc3bb32b612140000b1d2adf8
Andreas Gampe [Wed, 17 Sep 2014 03:32:20 +0000 (03:32 +0000)]
Merge "ART: Fix method verifier dumping"
Mark Mendell [Thu, 11 Sep 2014 18:51:02 +0000 (14:51 -0400)]
X86 QBE: Make some X86 routines virtual
Add virtual in one place, and move some code into a virtual routine.
This allows subclassing and overriding for my purposes.
Change-Id: Ie415df943b17b56ad1f057513b2df2a31801a72f
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Mathieu Chartier [Tue, 16 Sep 2014 23:25:55 +0000 (16:25 -0700)]
Add allocation tracking allocators to ROSAlloc
Used to monitor native memory usage, results are approximately
12-100KB memory per app.
Change-Id: If5a46cd8d543851948a8cb69487f3044965b44ce
Mathieu Chartier [Tue, 16 Sep 2014 23:14:26 +0000 (23:14 +0000)]
Merge "Add runtime options for large object space"
Mathieu Chartier [Tue, 16 Sep 2014 17:43:23 +0000 (10:43 -0700)]
Add runtime options for large object space
Adds the two following options:
Option -XX:LargeObjectSpace={freelist, map, disabled}
Option -XX:LargeObjectThreshold=size specifies the size for which
primitive arrays are allocated in the large object space.
Added handling for large object space == null in collectors.
Fixed an error in the mem map space where we didn't use the page
aligned size LOS for bytes allocated, this resutled in heaps appearing
a bit smaller than they should be.
Change-Id: I6f17c3534b59e7dc68cd375153e7a846799b3da4
Ian Rogers [Mon, 15 Sep 2014 22:17:07 +0000 (15:17 -0700)]
Only log an error if an unattached thread is unregistered.
Turn a fatal check into a diagnostic error. It looks like this issue arises
when a runtime shutsdown without properly being started.
Bug:
17011539
Change-Id: I2983c8332e83769e9480e8f30a46ca3b80a2e90e
(cherry picked from commit
e2bcf579b0bc2f53db68c38755d69543198c7b00)