OSDN Git Service
Hiroshi Yamauchi [Tue, 11 Mar 2014 21:47:18 +0000 (21:47 +0000)]
Merge "Put the post zygote non-moving space next to the malloc space."
Hiroshi Yamauchi [Tue, 11 Mar 2014 19:19:04 +0000 (12:19 -0700)]
Put the post zygote non-moving space next to the malloc space.
This change fixes the following problem with the GSS collector: if the
post zygote non-moving space happens to be located after the bump
pointer spaces, the bump pointer space is treated wrongfully as an
immune space. The reasons are 1) the immune space is represented by a
simple address range and 2) the GSS collector treats the post zygote
non-moving space as an immune space at a bump pointer space only
collection.
In addition, this change makes it a reality that all the non-moving
spaces are adjacent, which we tend to assume in the code (eg. the
notion of the immune space represented by a simple address range.)
This should help avoid potential confusions in the future.
Fix a DCHECK failure where usable_size isn't set properly when
-XX:UseTLAB is used.
Change-Id: I585920e433744a390f87e9a25bef6114b2a4623f
Ian Rogers [Tue, 11 Mar 2014 18:44:00 +0000 (18:44 +0000)]
Merge "Ensure functions start with clean CFA state."
Ian Rogers [Tue, 11 Mar 2014 18:30:20 +0000 (11:30 -0700)]
Ensure functions start with clean CFA state.
.cfi_startproc doesn't reset CFA state and so delivering exceptions and the
like can leave the CFA with an incorrect offset. Reset the state in the
DEFINE_FUNCTION macro.
Also fix using test/run-test with --gdb for the target.
Change-Id: I4c03768e118ef1e06d34fedce856919e6ecba0c4
Vladimir Marko [Tue, 11 Mar 2014 13:49:19 +0000 (13:49 +0000)]
Merge "Fix BitVector::SetInitialBits()."
Vladimir Marko [Tue, 11 Mar 2014 12:42:25 +0000 (12:42 +0000)]
Fix BitVector::SetInitialBits().
Change-Id: Iad3699d76ad69536aa4810329f5863bc995f6551
Vladimir Marko [Tue, 11 Mar 2014 11:28:49 +0000 (11:28 +0000)]
Merge "Avoid Cache*LoweringInfo pass when there's no GET/PUT/INVOKE."
Vladimir Marko [Thu, 6 Mar 2014 15:18:04 +0000 (15:18 +0000)]
Avoid Cache*LoweringInfo pass when there's no GET/PUT/INVOKE.
Add new data flow flags indicating instance/static field
access. Record merged flags of all insns and use them to skip
the CacheFieldLoweringInfo pass if the method uses no fields
and the CacheMethodLoweringInfo pass if it has no invokes.
Change-Id: I36a36b438ca9b0f104a7baddc0497d736495cc3c
Ying Wang [Tue, 11 Mar 2014 02:03:26 +0000 (02:03 +0000)]
Merge "Disable host clang only if WITHOUT_HOST_CLANG is set"
Ying Wang [Tue, 11 Mar 2014 01:27:10 +0000 (18:27 -0700)]
Disable host clang only if WITHOUT_HOST_CLANG is set
Bug:
13402154
Change-Id: Ib915e31106aeb2adf64f8fa5d008b34debc205d7
Ian Rogers [Tue, 11 Mar 2014 01:06:50 +0000 (01:06 +0000)]
Merge "Unify 64bit int constant definitions."
Ian Rogers [Mon, 10 Mar 2014 23:18:37 +0000 (16:18 -0700)]
Unify 64bit int constant definitions.
LL and ULL prefixes are word size dependent, use the INT64_C and UINT64_C
macros instead.
Change-Id: I5b70027651898814fc0b3e9e22a18a1047e76cb9
Ian Rogers [Mon, 10 Mar 2014 22:55:12 +0000 (22:55 +0000)]
Merge "Fix LIR generation for long arithmetic operation"
Andreas Gampe [Mon, 10 Mar 2014 22:17:23 +0000 (22:17 +0000)]
Merge "Fix old stack frame size check"
Andreas Gampe [Mon, 10 Mar 2014 21:18:35 +0000 (14:18 -0700)]
Fix old stack frame size check
The test underestimates the frame size for JNI frames, as not enough
overhead is accounted for.
Cherry-picked from commit
291088a2983ff954c137dddcc2ba7cb1c4cc95d2
Change-Id: I6ad96bc9b8eaecd6c888b91b3ffcfc4aeddc5eb8
Mathieu Chartier [Mon, 10 Mar 2014 20:34:09 +0000 (20:34 +0000)]
Merge "Don't always allocate constructor newInstance as non movable."
Mathieu Chartier [Mon, 10 Mar 2014 20:26:27 +0000 (13:26 -0700)]
Don't always allocate constructor newInstance as non movable.
We now only allocate these objects as non movable if the class is a
non movable class (currently fields or methods).
Change-Id: I26700272fceb277e00f25ff3078cef6951296b9d
Ian Rogers [Mon, 10 Mar 2014 19:19:15 +0000 (19:19 +0000)]
Merge "LongToFp result storage fixed"
Ian Rogers [Mon, 10 Mar 2014 18:48:31 +0000 (18:48 +0000)]
Merge "AArch64: Add ARM64 Disassembler"
Ian Rogers [Mon, 10 Mar 2014 18:46:07 +0000 (18:46 +0000)]
Merge "ARM: Inline codegen for long-to-float on ARM."
Ian Rogers [Mon, 10 Mar 2014 18:32:06 +0000 (18:32 +0000)]
Merge "ARM: Remove duplicated instructions; add vcvt, vmla, vmls disassembler."
Serban Constantinescu [Thu, 27 Feb 2014 15:36:47 +0000 (15:36 +0000)]
AArch64: Add ARM64 Disassembler
This patch adds disassembler support for ARM64 based on VIXL.
Change-Id: Ic7f5e197350809632145d932dbae8f6c16aebd13
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
Mathieu Chartier [Mon, 10 Mar 2014 17:28:50 +0000 (17:28 +0000)]
Merge "Add timing split for RevokeAllThreadLocalBuffers."
Mathieu Chartier [Mon, 10 Mar 2014 16:28:23 +0000 (09:28 -0700)]
Add timing split for RevokeAllThreadLocalBuffers.
This is part of the pause and should be accounted for.
Change-Id: I3165324de810e8fab02719098977402a18013da1
Andreas Gampe [Mon, 10 Mar 2014 16:19:08 +0000 (16:19 +0000)]
Merge "More JNI compiler tests and small fix"
Andreas Gampe [Fri, 7 Mar 2014 21:03:19 +0000 (13:03 -0800)]
More JNI compiler tests and small fix
Add checks for alignment, floats, and maximum number of parameters
Fixed x86_64 ABI wrong interpretation (floats not widened in registers)
Change-Id: I6c09af4914b7675ac0275ce21003e317ca44a403
Zheng Xu [Thu, 27 Feb 2014 13:30:55 +0000 (13:30 +0000)]
ARM: Remove duplicated instructions; add vcvt, vmla, vmls disassembler.
Remove kThumb2VcvtID in the assembler which was duplicated.
Add vcvt, vmla, vmls in the disassembler.
Change-Id: I14cc39375c922c9917274d8dcfcb515e888fdf26
Zheng Xu [Mon, 10 Mar 2014 10:43:02 +0000 (10:43 +0000)]
ARM: Inline codegen for long-to-float on ARM.
long-to-double-to-float using vfp instructions should be faster than the
function provided by toolchain.
Change-Id: I7ff809bca6665f0c1a0d7e6db98d570ce86b7c66
Nicolas Geoffray [Mon, 10 Mar 2014 12:03:57 +0000 (12:03 +0000)]
Merge "Fix lint errors."
Nicolas Geoffray [Mon, 10 Mar 2014 12:00:43 +0000 (12:00 +0000)]
Fix lint errors.
Change-Id: Ibefa43522ec68ed2a13bd034005d6f424e92957c
Nicolas Geoffray [Mon, 10 Mar 2014 11:42:04 +0000 (11:42 +0000)]
Merge "Add register support to the optimizing compiler."
Nicolas Geoffray [Tue, 4 Mar 2014 14:46:47 +0000 (14:46 +0000)]
Add register support to the optimizing compiler.
Also make if take an input and build the use list for instructions.
Change-Id: I1938cee7dce5bd4c66b259fa2b431d2c79b3cf82
Nicolas Geoffray [Mon, 10 Mar 2014 11:39:17 +0000 (11:39 +0000)]
Merge "New header fix for gcc 4.7 build."
Vladimir Marko [Mon, 10 Mar 2014 11:30:45 +0000 (11:30 +0000)]
Merge "Cache method lowering info in mir graph."
Nicolas Geoffray [Mon, 10 Mar 2014 11:27:57 +0000 (11:27 +0000)]
New header fix for gcc 4.7 build.
Change-Id: I09b49368c19d3bfb3a81d8e23b0dacf596d3bda7
Nicolas Geoffray [Mon, 10 Mar 2014 11:22:34 +0000 (11:22 +0000)]
Merge "Add includes to fix gcc 4.7 build."
Nicolas Geoffray [Mon, 10 Mar 2014 11:12:54 +0000 (11:12 +0000)]
Add includes to fix gcc 4.7 build.
Change-Id: Idf84f156047270b81c5d10a55a3a1c96b415cddc
Vladimir Marko [Thu, 23 Jan 2014 15:51:58 +0000 (15:51 +0000)]
Cache method lowering info in mir graph.
This should enable easy inlining checks. It should also
improve compilation time of methods that call the same
methods over and over - it is exactly such methods that
tend to exceed our 100ms time limit.
Change-Id: If01cd18e039071a74a1444570283c153429c9cd4
Brian Carlstrom [Sun, 9 Mar 2014 22:29:31 +0000 (22:29 +0000)]
Merge "Support WITHOUT_CLANG builds"
Brian Carlstrom [Sun, 9 Mar 2014 21:05:04 +0000 (14:05 -0700)]
Support WITHOUT_CLANG builds
(cherry picked from commit
c9f7723cdb39f9791775166ec1942e456086ad3c)
Change-Id: I9443e73a07b81038452c694a2f138faecdeff500
Ian Rogers [Sun, 9 Mar 2014 07:50:14 +0000 (07:50 +0000)]
Merge "Work around arm64 host prebuilt differences."
Ian Rogers [Sun, 9 Mar 2014 07:48:23 +0000 (23:48 -0800)]
Work around arm64 host prebuilt differences.
Change-Id: I345c994b06cc513f67270907f3877ad78dbadcc7
Andreas Gampe [Sun, 9 Mar 2014 02:19:58 +0000 (02:19 +0000)]
Merge "JNI down call fixes."
Ian Rogers [Sat, 8 Mar 2014 23:21:04 +0000 (15:21 -0800)]
JNI down call fixes.
Ensure SIRT isn't accessed via quick callee save frame.
Some tidying of code.
Change-Id: I8fec3e89aa6d2e86789c60a07550db2e92478ca7
Ian Rogers [Sun, 9 Mar 2014 00:09:05 +0000 (00:09 +0000)]
Merge "Revert "Revert "Make clang the default compiler on host."""
Ian Rogers [Sat, 8 Mar 2014 23:37:07 +0000 (23:37 +0000)]
Revert "Revert "Make clang the default compiler on host.""
This reverts commit
d54f3a6219bca6ae018f4395fa0f1254bd4459be.
Change-Id: Id96bb52a0d599f8848010d1589bdf0f70fc7124b
Ian Rogers [Sat, 8 Mar 2014 07:51:20 +0000 (07:51 +0000)]
Merge "Revert "Make clang the default compiler on host.""
Ian Rogers [Sat, 8 Mar 2014 07:50:13 +0000 (07:50 +0000)]
Revert "Make clang the default compiler on host."
This reverts commit
87f8b4cf0c1d6aab3eb5d1e99cc4e7cf175ef772.
Change-Id: I91a513042f0f9cf66288a296ad4a3b5da7830c7b
Ian Rogers [Sat, 8 Mar 2014 07:11:56 +0000 (07:11 +0000)]
Merge "Make clang the default compiler on host."
Ian Rogers [Fri, 7 Mar 2014 22:49:39 +0000 (14:49 -0800)]
Make clang the default compiler on host.
Motivation, GCC's compiler warnings are inferior to clang's. -Wthread-safety is
not supported by GCC starting with version 4.7. As this change only effects the
host, performance issues are an impact on host building and testing alone.
Fix clang gtest building on host with BUILD_HOST_64bit.
Fix clang build regressions caused by unused fields.
Fix x86-64 regression caused by requirement to fire-up quick compiler even in an
interpret-only environment. Long-term this code doesn't belong in the quick
compiler.
Change-Id: Ifc2b10177f40d0724cbbf8dab9653ac03cdd1cee
Mathieu Chartier [Sat, 8 Mar 2014 00:33:30 +0000 (00:33 +0000)]
Merge "Fix tests to pass with VerifyObject."
Mathieu Chartier [Fri, 7 Mar 2014 23:00:39 +0000 (15:00 -0800)]
Fix tests to pass with VerifyObject.
A SIRT ref with a null class was causing object verification problems
in space_test.
Change-Id: I95cfc3da5e0fec0155387f75612b0a3f26f6d3c9
Brian Carlstrom [Fri, 7 Mar 2014 23:10:44 +0000 (23:10 +0000)]
Merge "Bump oat version due to InstructionSet enum renumbering in change:"
Brian Carlstrom [Fri, 7 Mar 2014 22:36:27 +0000 (14:36 -0800)]
Bump oat version due to InstructionSet enum renumbering in change:
commit
ed8dd492e43cbaaa435c4892447072c84dbaf2dc
Author: Serban Constantinescu <serban.constantinescu@arm.com>
Date: Tue Feb 11 14:15:10 2014 +0000
AArch64: Add ARM64 Assembler
This patch adds the ARM64 Assembler and ManagedRegister backend.
The implementation of the Arm64Assembler class is based on VIXL (a
programmatic A64 Assembler - see external/vixl ).
Change-Id: I842fd574637a953c19631eedf26f6c70d9ed7f9e
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
Change-Id: I9e689b0a3586d996135f2c12265704ee139c9e4f
Brian Carlstrom [Fri, 7 Mar 2014 22:31:59 +0000 (22:31 +0000)]
Merge "Use GetEntryPointFromQuickCompiledCode instead of GetQuickOatCodeOffset"
Dave Allison [Fri, 7 Mar 2014 22:21:12 +0000 (22:21 +0000)]
Merge "Make use of profiling information for dex2oat"
Brian Carlstrom [Fri, 7 Mar 2014 22:18:15 +0000 (14:18 -0800)]
Use GetEntryPointFromQuickCompiledCode instead of GetQuickOatCodeOffset
The latter is meant for compile time use only when an offset is stored, instead of a pointer to code
Change-Id: I2fa9b8b3aaab0e6cfa1fc31c4d44aab0d9c3d30f
Dave Allison [Wed, 29 Jan 2014 02:33:52 +0000 (18:33 -0800)]
Make use of profiling information for dex2oat
If the profile file exists, the compiler driver will read it
and store the data in an internal map. Then, when we want to work
out whether to compile a method or not, the map is consulted and if
the method shows up with a high enough percentage of use we compile it.
The profile file itself is created by installd and is writeable by the
app. The file is in /data/dalvik-cache/profiles and is named by
the package name.
This also modifies the profiler itself to:
1. Only count runnable threads (not suspended threads) in the profile
2. Use system properties to allow tuning of the profile parameters
3. Merge profiles from multiple processes using file locking.
Bug:
12877748
Change-Id: Iab2f3a327a2860db2a80d5724277d6c626227f2b
Conflicts:
compiler/dex/frontend.cc
compiler/dex/mir_analysis.cc
compiler/dex/verification_results.cc
compiler/driver/compiler_driver.cc
dex2oat/dex2oat.cc
runtime/class_linker.cc
runtime/runtime.cc
runtime/runtime.h
Brian Carlstrom [Fri, 7 Mar 2014 20:47:54 +0000 (20:47 +0000)]
Merge "Add convenience targets for switching between full, smart, interpret-only"
Andreas Gampe [Fri, 7 Mar 2014 20:36:20 +0000 (20:36 +0000)]
Merge "Release unused parts of a JNI frame before calling native code"
Andreas Gampe [Fri, 7 Mar 2014 02:11:06 +0000 (18:11 -0800)]
Release unused parts of a JNI frame before calling native code
Two-pass process for setting up the JNI frame so we can put Sirt
and native call stack as close together as possible.
Change-Id: I827167a55fafc4eba7d4eaf14a35fc69fd5f85ce
Mathieu Chartier [Fri, 7 Mar 2014 20:09:48 +0000 (20:09 +0000)]
Merge "Add more VerifyObject calls."
Mathieu Chartier [Fri, 7 Mar 2014 02:11:53 +0000 (18:11 -0800)]
Add more VerifyObject calls.
Added verify object calls to SirtRef, IndirectReferenceTable,
ReferenceTable.
Removed un-needed verify object in ScopedObjectAccess / DecodeJObject
since object sources are handled.
Bug:
12934910
Change-Id: I55a46a8ea61fed2a77526eda27fd2cce97a9b125
Vladimir Marko [Fri, 7 Mar 2014 19:54:48 +0000 (19:54 +0000)]
Merge "Fix clang errors in ArenaAllocator."
Vladimir Marko [Fri, 7 Mar 2014 19:41:05 +0000 (19:41 +0000)]
Fix clang errors in ArenaAllocator.
Change-Id: Ib0fa290fd46ff9288f86cda9be2d1c1faf99b964
Kenny Root [Fri, 7 Mar 2014 18:47:22 +0000 (18:47 +0000)]
Merge "backtrace: use Java stack to help decode native"
Vladimir Marko [Fri, 7 Mar 2014 18:34:42 +0000 (18:34 +0000)]
Merge "Use ScopedArenaAllocator for CacheFieldLoweringInfo pass."
Vladimir Marko [Fri, 7 Mar 2014 10:18:14 +0000 (10:18 +0000)]
Use ScopedArenaAllocator for CacheFieldLoweringInfo pass.
Change-Id: Idcc2edeb865e29b1bc42b108fc58a1f964295317
Vladimir Marko [Fri, 7 Mar 2014 10:50:35 +0000 (10:50 +0000)]
Merge "Create a scoped arena allocator and use that for LVN."
Yevgeny Rouban [Fri, 7 Mar 2014 07:35:44 +0000 (14:35 +0700)]
Fix LIR generation for long arithmetic operation
X86Mir2Lir::GenLongArith generated wrong LIR if the first argument
of the operation was promoted. It forgot to swap arguments if
the first was not temp, but the second was temp
Change-Id: I389f72f560ce9924859e17385bc8f64793c77b67
Signed-off-by: Serguei Katkov <serguei.i.katkov@intel.com>
Signed-off-by: Yevgeny Rouban <yevgeny.y.rouban@intel.com>
Ian Rogers [Fri, 7 Mar 2014 07:20:22 +0000 (07:20 +0000)]
Merge "Fix issues with clang and BUILD_HOST_64bit."
Brian Carlstrom [Fri, 7 Mar 2014 07:17:15 +0000 (23:17 -0800)]
Add convenience targets for switching between full, smart, interpret-only
Change-Id: Ic0e016404d79fd0e40519f33210b332414adc8bf
Ian Rogers [Fri, 7 Mar 2014 07:11:11 +0000 (23:11 -0800)]
Fix issues with clang and BUILD_HOST_64bit.
Change-Id: Id954d0c1144de6eaf89a4d27d205e3bf6ccb655f
Ian Rogers [Fri, 7 Mar 2014 03:17:31 +0000 (03:17 +0000)]
Merge "Enable annotalysis on clang ART builds."
Ian Rogers [Thu, 6 Mar 2014 20:13:39 +0000 (12:13 -0800)]
Enable annotalysis on clang ART builds.
Fix clang build errors aswell as restructure locking/mutex code for correct
thread safety analysis support.
Reorder make dependencies so that host builds build first as they should
provide better compilation errors than target.
Remove host's use of -fno-omit-frame-pointer as it has no value with correct
use of CFI, which we should have.
Change-Id: I72cea8da9a3757b1a0b3acb4081feccb7c6cef90
Mathieu Chartier [Fri, 7 Mar 2014 01:18:07 +0000 (01:18 +0000)]
Merge "Defer heap transitions to heap trimming daemon."
Mathieu Chartier [Fri, 7 Mar 2014 00:16:50 +0000 (00:16 +0000)]
Merge "Restore obj after RequestConcurrentGC."
Mathieu Chartier [Thu, 6 Mar 2014 23:52:27 +0000 (15:52 -0800)]
Restore obj after RequestConcurrentGC.
RequestConcurrentGC can cause thread suspension, this means that
another thread could transition the heap or cause moving GC.
Bug:
12934910
Change-Id: I5c07161e2e849d7acbdf939f1c24e1ba361a1d6a
Mathieu Chartier [Sat, 1 Mar 2014 00:48:42 +0000 (16:48 -0800)]
Defer heap transitions to heap trimming daemon.
This fixes the case where quick back and forth process state changes
would cause a lot of heap transitions.
Change-Id: Ia5be792edcf26079b2aa23b9c115f6b0a9a39a1c
Kenny Root [Wed, 5 Mar 2014 22:57:21 +0000 (14:57 -0800)]
backtrace: use Java stack to help decode native
Before change:
native: usb_host_run+16 [0x400a43f9] (/libusbhost.so)
native: android::Vector<int>::do_move_forward(void*, void const*, unsigned int) const+54 [0x501b1c5b] (/libandroid_servers.so)
native: ??? [0x624de480] (/system@framework@boot.oat)
at com.android.server.usb.UsbHostManager.monitorUsbHostBus(Native method)
at com.android.server.usb.UsbHostManager.access$000(UsbHostManager.java:38)
After change:
native: usb_host_run+16 [0x400933f9] (libusbhost.so)
native: android::Vector<int>::do_move_forward(void*, void const*, unsigned int) const+54 [0x4e984c5b] (libandroid_servers.so)
native: Java_com_android_server_usb_UsbHostManager_monitorUsbHostBus__+92 [0x624de480] (system@framework@boot.oat)
at com.android.server.usb.UsbHostManager.monitorUsbHostBus(Native method)
at com.android.server.usb.UsbHostManager.access$000(UsbHostManager.java:38)
Change-Id: Iea550a251a12e9ba7df9582fd454093bfa4e90e0
Mathieu Chartier [Thu, 6 Mar 2014 19:56:20 +0000 (19:56 +0000)]
Merge "Disable compaction for jni workarounds."
Mathieu Chartier [Thu, 6 Mar 2014 19:11:48 +0000 (11:11 -0800)]
Disable compaction for jni workarounds.
Compaction can't work when jni workarounds is enabled. Also some
other refactoring.
Change-Id: Ia7b0f2b39c79f5a0a5f50874d823b950ab02a0c3
Hiroshi Yamauchi [Thu, 6 Mar 2014 18:33:59 +0000 (18:33 +0000)]
Merge "Make heap reference poisoning work with the interpreter."
Vladimir Marko [Wed, 12 Feb 2014 18:02:05 +0000 (18:02 +0000)]
Create a scoped arena allocator and use that for LVN.
This saves more than 0.5s of boot.oat compilation time
on Nexus 5.
TODO: Move other stuff to the scoped allocator. This CL
alone increases the peak memory allocation. By reusing
the memory for other parts of the compilation we should
reduce this overhead.
Change-Id: Ifbc00aab4f3afd0000da818dfe68b96713824a08
Ian Rogers [Thu, 6 Mar 2014 09:36:38 +0000 (09:36 +0000)]
Merge "Fix host architecture for 64bit."
Ian Rogers [Thu, 6 Mar 2014 09:13:39 +0000 (01:13 -0800)]
Fix host architecture for 64bit.
Also, hack x86 assembler for use as a x86-64 trampoline compiler's assembler.
Implement missing x86-64 quick resolution trampoline.
Add x86-64 to the quick elf writer.
Change-Id: I08216c67014a83492ada12898ab8000218ba7bb4
Ian Rogers [Thu, 6 Mar 2014 07:43:22 +0000 (07:43 +0000)]
Merge "Lock ranking fix for monitor IDs."
Ian Rogers [Thu, 6 Mar 2014 07:40:59 +0000 (23:40 -0800)]
Lock ranking fix for monitor IDs.
Free-ing objects holds a lock and so the monitor ID lock needs to be
of a lower rank.
Change-Id: I594ac04c1f76c5d6fd2e752886040565001d4eaf
Ian Rogers [Thu, 6 Mar 2014 07:05:11 +0000 (07:05 +0000)]
Merge "Generic JNI implementation for x86_64"
Andreas Gampe [Thu, 6 Mar 2014 00:11:04 +0000 (16:11 -0800)]
Generic JNI implementation for x86_64
Starting implementation for generic JNI on x86_64. Frames are of
large static size (>4K) right now, should be compacted later. Passes
the whole of jni_compiler_test.
Change-Id: I88ac3e13a534afe7568d62a1ef97cb766e8260e4
Maxim Kazantsev [Thu, 6 Mar 2014 04:33:26 +0000 (11:33 +0700)]
LongToFp result storage fixed
When converting long values to floating-point, the resulting value
was not stored properly. This was the reason of incorrect results
of arithmetic operations where such conversions were used.
Performance measurement in Quadrant Pro KPI benchmark was blocked
by long-to-fp conversion errors.
This patch ensures that result of long-to-fp conversion is stored
properly.
Change-Id: I94beffcf7f0146c0c6d5b8ae33b020c985843db0
Signed-off-by: Maxim Kazantsev <maxim.kazantsev@intel.com>
Hiroshi Yamauchi [Thu, 27 Feb 2014 22:44:36 +0000 (14:44 -0800)]
Make heap reference poisoning work with the interpreter.
It is disabled by default.
Bug:
12687968
Change-Id: Iee0cad647f341a7b566f4cf74c2770d1c19312c9
Brian Carlstrom [Thu, 6 Mar 2014 02:10:21 +0000 (02:10 +0000)]
Merge "Revert "Revert "Avoid compiling monster methods in boot image"""
Andreas Gampe [Thu, 6 Mar 2014 01:03:26 +0000 (01:03 +0000)]
Merge "Size and offset fixes to compile for 64b host"
Andreas Gampe [Thu, 6 Mar 2014 00:46:44 +0000 (16:46 -0800)]
Size and offset fixes to compile for 64b host
Some Runtime fields have moved after deletion of other fields.
ParsedOptions uses size_t, but parsing function works on unsigned int.
Change-Id: I6b7f25787af5d3f9e38554abea2bfb220299f475
Brian Carlstrom [Wed, 5 Mar 2014 18:59:04 +0000 (10:59 -0800)]
Revert "Revert "Avoid compiling monster methods in boot image""
This reverts commit
f679fab9be8905505d26a62bea257641f0bb0168.
(cherry picked from commit
9d0bdfe63bec5a43d7668d9094a52caf77b6ed53)
Change-Id: I72af1d44483edbd2a5f2e6b678e43f740d4613fd
Mathieu Chartier [Wed, 5 Mar 2014 23:24:07 +0000 (23:24 +0000)]
Merge "Print error message if ImageSpace::Init fails."
Mathieu Chartier [Wed, 5 Mar 2014 22:41:03 +0000 (14:41 -0800)]
Print error message if ImageSpace::Init fails.
Also changed some of the args in mem_map.cc to print as hex.
Bug:
13323732
Change-Id: I02cd81300793515d143e94473f48fc701e401b38
Mathieu Chartier [Wed, 5 Mar 2014 22:36:59 +0000 (22:36 +0000)]
Merge "Fix valgrind gtests and memory leaks."
Kenny Root [Wed, 5 Mar 2014 22:27:12 +0000 (22:27 +0000)]
Merge "backtrace: trim of unneeded slash from solib"