OSDN Git Service
Calin Juravle [Mon, 22 Feb 2016 11:49:24 +0000 (11:49 +0000)]
Merge "Add profman tool: responsible to process profiles" into nyc-dev
am:
6b37c7f9c0
* commit '
6b37c7f9c09ace1c121a16a95070a19043a4d439':
Add profman tool: responsible to process profiles
Calin Juravle [Mon, 22 Feb 2016 11:41:59 +0000 (11:41 +0000)]
Merge "Add profman tool: responsible to process profiles" into nyc-dev
Roland Levillain [Mon, 22 Feb 2016 10:52:47 +0000 (10:52 +0000)]
Merge "Ignore GZIPInputStreamTest#testLongMessage failures with CC." am:
e8b4c1d9b3
am:
59fe9b790e
* commit '
59fe9b790e264f30fdda548c0212d0d237b42056':
Ignore GZIPInputStreamTest#testLongMessage failures with CC.
Roland Levillain [Mon, 22 Feb 2016 10:49:11 +0000 (10:49 +0000)]
Merge "Ignore GZIPInputStreamTest#testLongMessage failures with CC."
am:
e8b4c1d9b3
* commit '
e8b4c1d9b33c489bb82a00d89b5a6fb9912e79de':
Ignore GZIPInputStreamTest#testLongMessage failures with CC.
Roland Levillain [Mon, 22 Feb 2016 10:45:59 +0000 (10:45 +0000)]
Merge "Ignore GZIPInputStreamTest#testLongMessage failures with CC."
Roland Levillain [Mon, 22 Feb 2016 10:20:57 +0000 (10:20 +0000)]
Ignore GZIPInputStreamTest#testLongMessage failures with CC.
This test sometimes fails with a
java.util.concurrent.TimeoutException on ART Builbot's
x86-64 concurrent collector configuration:
* libcore.java.util.zip.GZIPInputStreamTest#testLongMessage
Disable it while we investigate.
Bug:
26507762
Change-Id: I319a812ff7e6e95857879b2e653c886020cb462b
Nicolas Geoffray [Mon, 22 Feb 2016 09:11:51 +0000 (09:11 +0000)]
Merge "Track memory usage of code cache." am:
c6cce704de
am:
e6998fc3da
* commit '
e6998fc3da3d91cdd348a5cbfaa5ce099aeef170':
Track memory usage of code cache.
Nicolas Geoffray [Mon, 22 Feb 2016 09:08:31 +0000 (09:08 +0000)]
Merge "Track memory usage of code cache."
am:
c6cce704de
* commit '
c6cce704de94ebbd0953bee00f6eb87fa6fa4ac1':
Track memory usage of code cache.
Nicolas Geoffray [Mon, 22 Feb 2016 09:06:00 +0000 (09:06 +0000)]
Merge "Track memory usage of code cache."
Nicolas Geoffray [Mon, 22 Feb 2016 07:01:19 +0000 (07:01 +0000)]
Merge "Use adds instead of add to set the N flag." am:
25633b09df
am:
17d6617727
* commit '
17d6617727250aad1d85d441d2db18037bb2382c':
Use adds instead of add to set the N flag.
Nicolas Geoffray [Mon, 22 Feb 2016 06:57:44 +0000 (06:57 +0000)]
Merge "Use adds instead of add to set the N flag."
am:
25633b09df
* commit '
25633b09df6747d19d1cb30ea2f34d443027c006':
Use adds instead of add to set the N flag.
Nicolas Geoffray [Mon, 22 Feb 2016 06:56:01 +0000 (06:56 +0000)]
Merge "Use adds instead of add to set the N flag."
Nicolas Geoffray [Sun, 21 Feb 2016 17:19:18 +0000 (17:19 +0000)]
Use adds instead of add to set the N flag.
That flag will be used by the following bmi instruction.
Fixes 109-suspend-check on arm32.
Change-Id: I07ee069294e7a0d9709718375bce1e21e3db6529
Bill Buzbee [Sun, 21 Feb 2016 14:57:30 +0000 (14:57 +0000)]
Merge "Enable bytecode tracing in ART FI" am:
0b38d6ab37
am:
ea291f209b
* commit '
ea291f209b4e3440cff7298581006881fa75bcd5':
Enable bytecode tracing in ART FI
Bill Buzbee [Sun, 21 Feb 2016 14:57:21 +0000 (14:57 +0000)]
Merge "x86 ART FI clean-up" am:
4ed2e43bd4
am:
a55e8cfc70
* commit '
a55e8cfc707f5a0cab5511c3f97e7abd5da8e386':
x86 ART FI clean-up
Bill Buzbee [Sun, 21 Feb 2016 14:54:56 +0000 (14:54 +0000)]
Merge "Enable bytecode tracing in ART FI"
am:
0b38d6ab37
* commit '
0b38d6ab37bfc9ce42fda4c15d9634463b1d4584':
Enable bytecode tracing in ART FI
Bill Buzbee [Sun, 21 Feb 2016 14:54:46 +0000 (14:54 +0000)]
Merge "x86 ART FI clean-up"
am:
4ed2e43bd4
* commit '
4ed2e43bd40fb203f54661ce42366e8e86581864':
x86 ART FI clean-up
Bill Buzbee [Sun, 21 Feb 2016 14:53:05 +0000 (14:53 +0000)]
Merge "Enable bytecode tracing in ART FI"
Bill Buzbee [Sun, 21 Feb 2016 14:52:27 +0000 (14:52 +0000)]
Merge "x86 ART FI clean-up"
Serguei Katkov [Sat, 20 Feb 2016 06:55:24 +0000 (12:55 +0600)]
Enable bytecode tracing in ART FI
Trace bytecode execution in Fast Interpreter similar to
other interpreters.
Update TraceExecutionEnabled function to switch on tracing.
Change-Id: Icabc17871c8198b11cd4c3dbfaa901e4fbf67946
Signed-off-by: Serguei Katkov <serguei.i.katkov@intel.com>
Mathieu Chartier [Fri, 19 Feb 2016 23:17:47 +0000 (23:17 +0000)]
Merge "Support image classes filtering in image writer" am:
ea6e755688
am:
579325fc0f
* commit '
579325fc0fde4a96405ac354f1ec7fb3a1c2c56c':
Support image classes filtering in image writer
Mathieu Chartier [Fri, 19 Feb 2016 23:12:30 +0000 (23:12 +0000)]
Merge "Support image classes filtering in image writer"
am:
ea6e755688
* commit '
ea6e7556887716b806f377c018fb6514bdae5bca':
Support image classes filtering in image writer
Mathieu Chartier [Fri, 19 Feb 2016 23:06:16 +0000 (23:06 +0000)]
Merge "Support image classes filtering in image writer"
Mathieu Chartier [Fri, 19 Feb 2016 23:01:15 +0000 (23:01 +0000)]
Support image classes filtering in image writer
am:
7fccc2de5a
* commit '
7fccc2de5a7ea1bb8241d50869a2a4e44b35767f':
Support image classes filtering in image writer
Mathieu Chartier [Fri, 19 Feb 2016 21:42:48 +0000 (13:42 -0800)]
Support image classes filtering in image writer
New logic prunes classes that have any dependency on a non-image
class. This enables creating smaller images with class profiling.
Code is from class profiling CL.
Added a CHECK for guarding against creating an app boot image with
existing boot image(s).
Bug:
22858531
(cherry picked from commit
7fccc2de5a7ea1bb8241d50869a2a4e44b35767f)
Change-Id: Idcc1de4367b5368bbbd2881cbd63975a646d0831
Mathieu Chartier [Fri, 19 Feb 2016 21:42:48 +0000 (13:42 -0800)]
Support image classes filtering in image writer
New logic prunes classes that have any dependency on a non-image
class. This enables creating smaller images with class profiling.
Code is from class profiling CL.
Added a CHECK for guarding against creating an app boot image with
existing boot image(s).
Bug:
22858531
Change-Id: Id5f38c8122e67141b851d0f41b68d2ffd07280d0
Calin Juravle [Mon, 1 Feb 2016 12:06:18 +0000 (12:06 +0000)]
Add profman tool: responsible to process profiles
This pulls out profile parsing from dex2oat into a separate tool.
Some additional refactoring:
- better return codes
- dex2oat now accepts only one profile file
This is the first step towards support secondary dex files and
extracting profiles out of the code_cache directory.
Bug:
26719109
Bug:
26563023
Change-Id: I364dad7e3beb22ef71c372739d5bcc490ae23270
Mathieu Chartier [Fri, 19 Feb 2016 19:31:40 +0000 (19:31 +0000)]
Merge "Add VLOG(collector) to reduce log spam" am:
365cbe7088
am:
8c92107d38
* commit '
8c92107d38146f246fa2861606bb90d04a9705e8':
Add VLOG(collector) to reduce log spam
Andreas Gampe [Fri, 19 Feb 2016 19:31:28 +0000 (19:31 +0000)]
Merge "Revert "Do not build art with clang for mips64"" am:
eeb3b0bf53
am:
0fe0d5e134
* commit '
0fe0d5e134c471121b4fc6f136ac06602d72e28a':
Revert "Do not build art with clang for mips64"
Mathieu Chartier [Fri, 19 Feb 2016 19:24:00 +0000 (19:24 +0000)]
Merge "Add VLOG(collector) to reduce log spam"
am:
365cbe7088
* commit '
365cbe7088b013982389a6f1f78641de6940aeba':
Add VLOG(collector) to reduce log spam
Mathieu Chartier [Fri, 19 Feb 2016 19:16:20 +0000 (19:16 +0000)]
Merge "Add VLOG(collector) to reduce log spam"
Mathieu Chartier [Fri, 19 Feb 2016 19:03:16 +0000 (19:03 +0000)]
Add VLOG(collector) to reduce log spam
am:
a6e1c12629
* commit '
a6e1c126299586932ecd3c1133a55a6f8e1107fc':
Add VLOG(collector) to reduce log spam
Mathieu Chartier [Fri, 19 Feb 2016 18:25:39 +0000 (10:25 -0800)]
Add VLOG(collector) to reduce log spam
VLOG(gc) is enabled from AndroidRuntime, using it too much produces
log spam.
Bug:
22858531
(cherry picked from commit
a6e1c126299586932ecd3c1133a55a6f8e1107fc)
Change-Id: If60902a8d7855cdabd80208b9b385ce4ba4d9e5f
Mathieu Chartier [Fri, 19 Feb 2016 18:45:56 +0000 (18:45 +0000)]
Use image oat file instead of image header for immune spaces
am:
df0a8275ab
* commit '
df0a8275abadc96a6363b59f31c64981571d6ed9':
Use image oat file instead of image header for immune spaces
Andreas Gampe [Fri, 19 Feb 2016 18:45:54 +0000 (18:45 +0000)]
Merge "Revert "Do not build art with clang for mips64""
am:
eeb3b0bf53
* commit '
eeb3b0bf5339e24b6f5e22c5a884910000c9bcfb':
Revert "Do not build art with clang for mips64"
Andreas Gampe [Fri, 19 Feb 2016 18:38:22 +0000 (18:38 +0000)]
Merge "Revert "Do not build art with clang for mips64""
Mathieu Chartier [Fri, 19 Feb 2016 18:25:39 +0000 (10:25 -0800)]
Add VLOG(collector) to reduce log spam
VLOG(gc) is enabled from AndroidRuntime, using it too much produces
log spam.
Bug:
22858531
Change-Id: I5306c512eb7f55a178fa607d4b211ef25246e300
Nicolas Geoffray [Fri, 19 Feb 2016 17:47:24 +0000 (17:47 +0000)]
Merge "Workaround JDWP failures" am:
a64c281ae7
am:
36692f34a8
* commit '
36692f34a85badc99af80eac370bbd9a6adf0fbb':
Workaround JDWP failures
Nicolas Geoffray [Fri, 19 Feb 2016 17:43:09 +0000 (17:43 +0000)]
Merge "Workaround JDWP failures"
am:
a64c281ae7
* commit '
a64c281ae741bf35de36ac6ea9437e3f5be678b2':
Workaround JDWP failures
Nicolas Geoffray [Fri, 19 Feb 2016 17:39:37 +0000 (17:39 +0000)]
Merge "Workaround JDWP failures"
Andreas Gampe [Fri, 19 Feb 2016 17:33:08 +0000 (09:33 -0800)]
Revert "Do not build art with clang for mips64"
This reverts commit
610a1420fe400d3f638fc0dadb1a012d2ac3ad19.
Bug:
25928358
Change-Id: I3fe8777ead2bd067c071277a7c15b2442f15567f
Sebastien Hertz [Fri, 19 Feb 2016 17:31:06 +0000 (18:31 +0100)]
Workaround JDWP failures
Compile JDWP tests in 1.7 to workaround debug info issues.
Bug:
27262745
Change-Id: I4630a0346d5a99f94895557d705dad310735b45f
Bill Buzbee [Fri, 19 Feb 2016 17:05:08 +0000 (17:05 +0000)]
Merge "Revert "Revert "Revert "Revert "ART: Enable Jit Profiling in Mterp for arm/arm64""""" am:
29db7525e7
am:
e182036151
* commit '
e1820361518721d2ab3459955b4d994408e02fe8':
Revert "Revert "Revert "Revert "ART: Enable Jit Profiling in Mterp for arm/arm64""""
Bill Buzbee [Fri, 19 Feb 2016 17:01:01 +0000 (17:01 +0000)]
Merge "Revert "Revert "Revert "Revert "ART: Enable Jit Profiling in Mterp for arm/arm64"""""
am:
29db7525e7
* commit '
29db7525e7fe6e065c343c8ea762589bab88fd23':
Revert "Revert "Revert "Revert "ART: Enable Jit Profiling in Mterp for arm/arm64""""
Bill Buzbee [Fri, 19 Feb 2016 16:58:41 +0000 (16:58 +0000)]
Merge "Revert "Revert "Revert "Revert "ART: Enable Jit Profiling in Mterp for arm/arm64"""""
Nicolas Geoffray [Fri, 19 Feb 2016 16:25:57 +0000 (16:25 +0000)]
Track memory usage of code cache.
Needed once we start having a strategy based on how full the code
cache is.
Change-Id: I181ad05e1c216afabf106f91ac54bbf144d7406a
Nicolas Geoffray [Fri, 19 Feb 2016 16:11:54 +0000 (16:11 +0000)]
Merge "The JIT does not need VerifedMethod nor CompilerCallbacks." am:
219830939a
am:
617438e29e
* commit '
617438e29e383b045fa7614599324272e97e7fc3':
The JIT does not need VerifedMethod nor CompilerCallbacks.
Nicolas Geoffray [Fri, 19 Feb 2016 16:07:40 +0000 (16:07 +0000)]
Merge "The JIT does not need VerifedMethod nor CompilerCallbacks."
am:
219830939a
* commit '
219830939ac94af8bbf019cbf4fdb65f05992713':
The JIT does not need VerifedMethod nor CompilerCallbacks.
Nicolas Geoffray [Fri, 19 Feb 2016 16:01:49 +0000 (16:01 +0000)]
Merge "The JIT does not need VerifedMethod nor CompilerCallbacks."
Bill Buzbee [Thu, 11 Feb 2016 22:37:42 +0000 (22:37 +0000)]
Revert "Revert "Revert "Revert "ART: Enable Jit Profiling in Mterp for arm/arm64""""
This reverts commit
5d03317a834efdf3b5240c401f1bc2ceac7a2f25.
We need to catch all possible cases in which new instrumentation appears
or the debugger is attached, and then switch to the reference interpreter
if necessary. We may, in a future CL, use the alt-mterp mechanism to accompish
this (as did Dalvik).
Only enables Arm64 for now. Once it survives extended testing, will enable
arm and update x86.
Updated OSR handling to match other interpreters.
Change-Id: I076f1d752d6f59899876bab26b18e2221cd92f69
Nicolas Geoffray [Fri, 19 Feb 2016 13:51:55 +0000 (13:51 +0000)]
Merge "Fix braino in single frame deopt." am:
05d77c2673
am:
11e1c7b262
* commit '
11e1c7b262a24be0c434d40abeef1841f8df69f2':
Fix braino in single frame deopt.
Nicolas Geoffray [Fri, 19 Feb 2016 13:47:44 +0000 (13:47 +0000)]
Merge "Fix braino in single frame deopt."
am:
05d77c2673
* commit '
05d77c2673082b371129f8d854439688533cfff2':
Fix braino in single frame deopt.
Nicolas Geoffray [Fri, 19 Feb 2016 13:41:08 +0000 (13:41 +0000)]
Merge "Fix braino in single frame deopt."
Nicolas Geoffray [Fri, 19 Feb 2016 12:43:12 +0000 (12:43 +0000)]
Fix braino in single frame deopt.
handler_method_header_ is actually the OatQuickMethodHeader
of the caller of the method that is deoptimizing (as we will
resume at its call site). We should use the OatQuickMethodHeader
of the method that is deoptimizing and pass it to the code cache
to invalidate the method.
Change-Id: I2b61a96b8415e9477e3ac902c54a314aeb0811a0
Mathieu Chartier [Fri, 19 Feb 2016 04:49:55 +0000 (04:49 +0000)]
Merge "Use image oat file instead of image header for immune spaces" am:
52d9c2f0c5
am:
2144f894eb
* commit '
2144f894eb1c274208a94c163707439f538a79cc':
Use image oat file instead of image header for immune spaces
Hiroshi Yamauchi [Fri, 19 Feb 2016 04:49:46 +0000 (04:49 +0000)]
Merge "Fix rosalloc issues with valgrind." am:
ad736f19b4
am:
880744da14
* commit '
880744da142f955a16148aad486fd743934a5723':
Fix rosalloc issues with valgrind.
Mathieu Chartier [Fri, 19 Feb 2016 04:49:37 +0000 (04:49 +0000)]
Merge "Don\'t pass in oat file name to NativeLocationInImage" am:
5532365a28
am:
378f1bf1c2
* commit '
378f1bf1c2c27a32f137f4e78c4267ee28b2ecbc':
Don't pass in oat file name to NativeLocationInImage
Mathieu Chartier [Fri, 19 Feb 2016 02:34:09 +0000 (02:34 +0000)]
Merge "Use image oat file instead of image header for immune spaces"
am:
52d9c2f0c5
* commit '
52d9c2f0c584877e9c7f9e859d8068b3a2ccb12f':
Use image oat file instead of image header for immune spaces
Hiroshi Yamauchi [Fri, 19 Feb 2016 02:34:00 +0000 (02:34 +0000)]
Merge "Fix rosalloc issues with valgrind."
am:
ad736f19b4
* commit '
ad736f19b4ab0b1767fba9ed124f12e74313fcbb':
Fix rosalloc issues with valgrind.
Mathieu Chartier [Fri, 19 Feb 2016 02:33:49 +0000 (02:33 +0000)]
Merge "Don\'t pass in oat file name to NativeLocationInImage"
am:
5532365a28
* commit '
5532365a289c8c2e8cb827c07058d72eb38f2e1c':
Don't pass in oat file name to NativeLocationInImage
Mathieu Chartier [Thu, 18 Feb 2016 00:19:53 +0000 (16:19 -0800)]
Use image oat file instead of image header for immune spaces
The old immune spaces logic used the oat file information in the
image header instead of the actual oat file pointer. This was
incorrect for the app image case since the app image oat file is
not necessarily at the address specified in the header. This bug
could cause an incorrect immune region that caused large objects
to get freed if they were within this immune region.
Added test.
Bug:
22858531
(cherry picked from commit
5351da0225d027a19420153615634a1c78966bca)
Change-Id: Ibf41b0c0a9a7b0d093146311e2603a186033e339
Mathieu Chartier [Fri, 19 Feb 2016 02:19:24 +0000 (02:19 +0000)]
Merge "Use image oat file instead of image header for immune spaces"
Mathieu Chartier [Thu, 18 Feb 2016 00:19:53 +0000 (16:19 -0800)]
Use image oat file instead of image header for immune spaces
The old immune spaces logic used the oat file information in the
image header instead of the actual oat file pointer. This was
incorrect for the app image case since the app image oat file is
not necessarily at the address specified in the header. This bug
could cause an incorrect immune region that caused large objects
to get freed if they were within this immune region.
Added test.
Bug:
22858531
Change-Id: I243253e61ea1afd42c3bb2414c02ce6dd36d0f9c
Mathieu Chartier [Fri, 19 Feb 2016 01:55:06 +0000 (01:55 +0000)]
Don\'t pass in oat file name to NativeLocationInImage
am:
4ba85a6b88
* commit '
4ba85a6b887d3ffc1627ba3e7e9b74522ba926bb':
Don't pass in oat file name to NativeLocationInImage
Mathieu Chartier [Thu, 18 Feb 2016 02:02:40 +0000 (18:02 -0800)]
Don't pass in oat file name to NativeLocationInImage
We already have the oat file name stored in the relocation, using
the one passed in for the image info can cause a mismatch.
I suspect this fixes a bug repated to copied methods where there
was a oat file name mismatch. When we assign the native object
relocation for the methods of a class, we use the dex cache from
that class.
However, we use method's declaring class in NativeLocationVisitor
by using ArtMethod::GetDexCache. This could result in using the
wrong ImageInfo if the declaring class is in another image.
Bug:
27216437
(cherry picked from commit
e8bf134734ee7de8b89e6d3e3648de6548d8e627)
Change-Id: I9c764800370d50b2f1f121415a68fa8f25d22e63
Hiroshi Yamauchi [Fri, 19 Feb 2016 01:52:38 +0000 (01:52 +0000)]
Merge "Fix rosalloc issues with valgrind."
Mathieu Chartier [Fri, 19 Feb 2016 01:16:50 +0000 (01:16 +0000)]
Merge "Don't pass in oat file name to NativeLocationInImage"
Mathieu Chartier [Thu, 18 Feb 2016 02:02:40 +0000 (18:02 -0800)]
Don't pass in oat file name to NativeLocationInImage
We already have the oat file name stored in the relocation, using
the one passed in for the image info can cause a mismatch.
I suspect this fixes a bug repated to copied methods where there
was a oat file name mismatch. When we assign the native object
relocation for the methods of a class, we use the dex cache from
that class.
However, we use method's declaring class in NativeLocationVisitor
by using ArtMethod::GetDexCache. This could result in using the
wrong ImageInfo if the declaring class is in another image.
Change-Id: I753207f7b773fac182f84ba57c640c09f9ce911f
Hiroshi Yamauchi [Fri, 19 Feb 2016 00:32:16 +0000 (00:32 +0000)]
Merge "Disable read barriers in GC VisitReferences calls." am:
6a6a75305d
am:
ebff0807de
* commit '
ebff0807def92ac23ec3672e4ea4a61b5b6c9daf':
Disable read barriers in GC VisitReferences calls.
Hiroshi Yamauchi [Fri, 19 Feb 2016 00:25:11 +0000 (00:25 +0000)]
Merge "Disable read barriers in GC VisitReferences calls."
am:
6a6a75305d
* commit '
6a6a75305dcc3344eb51e342e84f32fce9421522':
Disable read barriers in GC VisitReferences calls.
Hiroshi Yamauchi [Fri, 19 Feb 2016 00:17:37 +0000 (00:17 +0000)]
Merge "Disable read barriers in GC VisitReferences calls."
Hiroshi Yamauchi [Wed, 17 Feb 2016 21:29:59 +0000 (13:29 -0800)]
Disable read barriers in GC VisitReferences calls.
It's safe to disable read barriers in the CC collector's
VisitReferences calls. It speeds up the collector by some amount,
eg. Ritzperf EAAC GC time on N5 decreases by ~4.2%.
This is based on Mathieu Chartier's idea.
Bug:
12687968
Change-Id: I884dee7018f92761fad54269f4cd01db4fa82f2a
Hiroshi Yamauchi [Thu, 18 Feb 2016 23:01:17 +0000 (15:01 -0800)]
Fix rosalloc issues with valgrind.
The issue was that the MemoryToolMallocSpace constructor was
explicitly undefining the tail of the mem map, and when RosAlloc
expanded the space beyond the initial size, it gets errors from using
the zero but undefined (due to the above undefining) memory
content. RosAlloc zeroes memory on free (as opposed to zeroes on
allocation) and relied on the zero-initialized (hence defined in terms
of valgrind) mem map at the initialization time.
Change RosAlloc so that it does explicitly zeroes the entire mem map at
the initialization time and it does not rely on the zero-initialized of
the mem map.
Also, avoid explicitly changing the valgrind state in the
MemoryToolMallocSpace constructor, which happens after the allocator is
initialized because that may interfere with the allocator internal
initialization.
Bug:
27156726
Bug:
9986565
Change-Id: I3b36d2d987c25ce9ff5213278109c425f480b0d9
Alex Light [Thu, 18 Feb 2016 21:31:37 +0000 (21:31 +0000)]
Fix issue with copied methods not being checked.
am:
d07e1b338d
* commit '
d07e1b338ddedd03728136f136a2c4cb6df50dc4':
Fix issue with copied methods not being checked.
Alex Light [Thu, 18 Feb 2016 21:24:04 +0000 (21:24 +0000)]
Merge "Fix issue with copied methods not being checked." am:
70e2d7e52a
am:
b3dbcb8524
* commit '
b3dbcb852443964f55cfcde960d534dea48e23eb':
Fix issue with copied methods not being checked.
Alex Light [Wed, 17 Feb 2016 19:59:05 +0000 (11:59 -0800)]
Fix issue with copied methods not being checked.
In several places we were using IsMiranda to check if a method is
copied. This misses cases involving default methods.
(cherrypicked commit
fcea56f9cc51957161fe7a6e35e895fd8c4c4a7f)
Bug:
27216437
Change-Id: I8c800e3e622a9c0ca0f8752c3d5202f433af9a1c
Alex Light [Thu, 18 Feb 2016 21:15:40 +0000 (21:15 +0000)]
Merge "Fix issue with copied methods not being checked."
am:
70e2d7e52a
* commit '
70e2d7e52ad1ed3226fdfcd3a2439c837f39c334':
Fix issue with copied methods not being checked.
Alex Light [Thu, 18 Feb 2016 21:13:19 +0000 (21:13 +0000)]
Merge "Fix issue with copied methods not being checked."
Nicolas Geoffray [Thu, 18 Feb 2016 18:55:01 +0000 (18:55 +0000)]
Merge "Fix build aflter conflicting changes got in." am:
07f7affb33
am:
f9a5965a2a
* commit '
f9a5965a2ad38ba6d615646d01db14372fb714b3':
Fix build aflter conflicting changes got in.
Nicolas Geoffray [Thu, 18 Feb 2016 18:54:53 +0000 (18:54 +0000)]
Merge "Small inlining improvements." am:
1d01ef7f0f
am:
66b6ce3a10
* commit '
66b6ce3a1052e9dc55167b3852004e7ebe7f62f6':
Small inlining improvements.
Calin Juravle [Thu, 18 Feb 2016 18:54:44 +0000 (18:54 +0000)]
Merge "Add statistics support for some optimizations" am:
afe8400458
am:
ef770285f7
* commit '
ef770285f7dfc2758e47d1258bb0e57a3b5b8bf5':
Add statistics support for some optimizations
Nicolas Geoffray [Thu, 18 Feb 2016 18:54:36 +0000 (18:54 +0000)]
Merge "Implement polymorphic inlining." am:
f8a08735f6
am:
a452c73456
* commit '
a452c734564664379a027909cba26829cdbe5fca':
Implement polymorphic inlining.
Roland Levillain [Thu, 18 Feb 2016 18:54:28 +0000 (18:54 +0000)]
Merge "Implement Optimizing\'s constant folding as a visitor." am:
99da8cd881
am:
21f59029cf
* commit '
21f59029cfe345c6a6985c7a7b9a31477fe9bc81':
Implement Optimizing's constant folding as a visitor.
Tamas Berghammer [Thu, 18 Feb 2016 18:54:20 +0000 (18:54 +0000)]
Merge "Mark __jit_debug_register_code as a unique symbol on aarch64" am:
d9c05309e8
am:
4797e3298f
* commit '
4797e3298fafc4987d5df137b7531a43987ba049':
Mark __jit_debug_register_code as a unique symbol on aarch64
Nicolas Geoffray [Thu, 18 Feb 2016 18:54:13 +0000 (18:54 +0000)]
Merge "Remove string init map." am:
7d9ddcc909
am:
1bbfb96fee
* commit '
1bbfb96fee16e67eabd63dd4ccdc480b4dcd34c2':
Remove string init map.
Nicolas Geoffray [Thu, 18 Feb 2016 18:23:52 +0000 (18:23 +0000)]
Merge "Fix build aflter conflicting changes got in."
am:
07f7affb33
* commit '
07f7affb338b529d34e4e18b7e8a631c16bd9765':
Fix build aflter conflicting changes got in.
Nicolas Geoffray [Thu, 18 Feb 2016 18:23:42 +0000 (18:23 +0000)]
Merge "Small inlining improvements."
am:
1d01ef7f0f
* commit '
1d01ef7f0f79b032449c35203ca9543fb8a0b22f':
Small inlining improvements.
Calin Juravle [Thu, 18 Feb 2016 18:23:32 +0000 (18:23 +0000)]
Merge "Add statistics support for some optimizations"
am:
afe8400458
* commit '
afe84004583488ded7f99bb703ed4c1a601ff034':
Add statistics support for some optimizations
Nicolas Geoffray [Thu, 18 Feb 2016 18:23:21 +0000 (18:23 +0000)]
Merge "Implement polymorphic inlining."
am:
f8a08735f6
* commit '
f8a08735f6c60ddee2bb5646dcad561361cce079':
Implement polymorphic inlining.
Roland Levillain [Thu, 18 Feb 2016 18:23:12 +0000 (18:23 +0000)]
Merge "Implement Optimizing\'s constant folding as a visitor."
am:
99da8cd881
* commit '
99da8cd8818e015b21d1c2af73ac40749698c930':
Implement Optimizing's constant folding as a visitor.
Tamas Berghammer [Thu, 18 Feb 2016 18:23:03 +0000 (18:23 +0000)]
Merge "Mark __jit_debug_register_code as a unique symbol on aarch64"
am:
d9c05309e8
* commit '
d9c05309e8fab26a6087abd5773859f112cdefe9':
Mark __jit_debug_register_code as a unique symbol on aarch64
Nicolas Geoffray [Thu, 18 Feb 2016 18:22:54 +0000 (18:22 +0000)]
Merge "Remove string init map."
am:
7d9ddcc909
* commit '
7d9ddcc909e3a76ce516649c93a8d854b1cf2fb4':
Remove string init map.
Nicolas Geoffray [Thu, 18 Feb 2016 16:56:42 +0000 (16:56 +0000)]
Merge "Fix build aflter conflicting changes got in."
Nicolas Geoffray [Thu, 18 Feb 2016 16:55:42 +0000 (16:55 +0000)]
Fix build aflter conflicting changes got in.
Change-Id: Ia3846e9a0dad137fe797bf3f2ece0cb78c106ec0
Nicolas Geoffray [Thu, 18 Feb 2016 16:33:37 +0000 (16:33 +0000)]
Merge "Small inlining improvements."
Calin Juravle [Thu, 18 Feb 2016 16:16:34 +0000 (16:16 +0000)]
Merge "Add statistics support for some optimizations"
Jean-Philippe Halimi [Thu, 18 Feb 2016 15:42:03 +0000 (16:42 +0100)]
Add statistics support for some optimizations
This patch adds support for the --dump-stats facility with some
optimizations
and fixes all build issues introduced by the patch:
I68751b119a030952a11057cb651a3c63e87e73ea (which got reverted)
Change-Id: I5af1f2a8cced0a1a55c2bb4d8c88e6f0a24ec879
Signed-off-by: Jean-Philippe Halimi <jean-philippe.halimi@intel.com>
Nicolas Geoffray [Thu, 18 Feb 2016 15:56:59 +0000 (15:56 +0000)]
Merge "Implement polymorphic inlining."
Nicolas Geoffray [Thu, 18 Feb 2016 14:43:42 +0000 (14:43 +0000)]
Small inlining improvements.
- Use the type_index in the current dex file for classes not
defined in the current dex file.
- Make the loading of the vtable field of a class have no side effects
to enable gvn'ing it.
Note that those improvements only affect the JIT, where we don't have
checker support.
Change-Id: I519f52bd8270f2b828f0920a1214da33cf788f41
Nicolas Geoffray [Thu, 18 Feb 2016 11:12:31 +0000 (11:12 +0000)]
Implement polymorphic inlining.
For example, before:
HInvokeVirtual
After:
If (receiver == Foo) {
// inlined code.
} else if (receiver == Bar) {
// inlined code
} else {
// HInvokeVirtual or HDeoptimize(receiver != Baz)
}
Change-Id: I5ce305aef8f39f8294bf2b2bcfe60e0dddcfdbec