OSDN Git Service
Treehugger Robot [Mon, 8 Aug 2016 19:38:53 +0000 (19:38 +0000)]
Merge "ART: Extract JNI macro assembler for x86-64"
Treehugger Robot [Mon, 8 Aug 2016 19:23:30 +0000 (19:23 +0000)]
Merge "Implement running user defined list of passes"
Andreas Gampe [Fri, 5 Aug 2016 16:01:50 +0000 (09:01 -0700)]
ART: Extract JNI macro assembler for x86-64
Extract the JNI assembler parts from the regular assembler.
Test: m test-art-host
Change-Id: I291fb76ad9232123b4c1992488ee81fec3c1db47
Wojciech Staszkiewicz [Tue, 2 Aug 2016 00:48:59 +0000 (17:48 -0700)]
Implement running user defined list of passes
This change introduces new dex2oat switch --run-passes=. This switch
accepts path to a text file with names of passes to run.
Compiler will run optimization passes specified in the file rather
then the default ones.
There is no verification implemented on the compiler side. It is user's
responsibility to provide a list of passes that leads to successful
generation of correct code. Care should be taken to prepare a list
that satisfies all dependencies between optimizations.
We only take control of the optional optimizations. Codegen (builder),
and all passes required for register allocation will run unaffected
by this mechanism.
Change-Id: Ic3694e53515fefcc5ce6f28d9371776b5afcbb4f
Vladimir Marko [Mon, 8 Aug 2016 18:17:16 +0000 (18:17 +0000)]
Merge "ARM/ARM64: Improve Mterp */lit8 assembly."
Treehugger Robot [Mon, 8 Aug 2016 16:17:11 +0000 (16:17 +0000)]
Merge "ahat: Target Java 1.7."
Treehugger Robot [Mon, 8 Aug 2016 15:31:00 +0000 (15:31 +0000)]
Merge "Revert "ARM64 asm for region space array allocation""
Roland Levillain [Mon, 8 Aug 2016 14:41:32 +0000 (14:41 +0000)]
Revert "ARM64 asm for region space array allocation"
This change breaks many tests on the ARM64 concurrent
collector configuration.
Bug:
30162165
Bug:
12687968
This reverts commit
f686c3feabe3519bedd1f3001e5dd598f46946ef.
Change-Id: I5d7ef5fa2ffb6a8d9a4d3adbcc14854efa257313
Tobias Thierer [Mon, 8 Aug 2016 14:32:40 +0000 (14:32 +0000)]
Merge "Support Mockito in art buildbot tests"
Tobias Thierer [Wed, 3 Aug 2016 15:13:04 +0000 (16:13 +0100)]
Support Mockito in art buildbot tests
Test: art/tools/buildbot-build.sh --host -j60 && \
art/tools/run-libcore-tests.sh --mode=host --variant=X32
Change-Id: Ifa32927251fa944df7bf9704f8164083aeb557a1
Przemyslaw Szczepaniak [Mon, 8 Aug 2016 12:23:26 +0000 (12:23 +0000)]
Merge "Remove OldSystemTest#test_load from known failures."
Vladimir Marko [Mon, 8 Aug 2016 11:08:06 +0000 (12:08 +0100)]
ARM/ARM64: Improve Mterp */lit8 assembly.
Embed shifts in operations when possible. Use UBFX for shift
distance extraction - for ARM this saves an instruction, for
ARM64 this just improves readability as the reader doesn't
need to know that the higher bits are unused by shifts.
Test: Run ART test suite on Nexus 9.
Change-Id: I5666f3eaded618d3f6cb754c4a431fd9548e746d
Przemyslaw Szczepaniak [Mon, 8 Aug 2016 10:20:07 +0000 (11:20 +0100)]
Remove OldSystemTest#test_load from known failures.
Test: libcore.java.lang.OldSystemTest
Bug:
26326992
Change-Id: Ic77dab37c05044790278407867339a198e8be9a8
Roland Levillain [Mon, 8 Aug 2016 10:16:43 +0000 (10:16 +0000)]
Merge "Enable IntermediateAddress for primitive arrays with read barriers."
Roland Levillain [Mon, 8 Aug 2016 09:18:37 +0000 (10:18 +0100)]
Enable IntermediateAddress for primitive arrays with read barriers.
Test: ART host and target (ARM, ARM64) tests.
Bug:
26601270
Bug:
12687968
Change-Id: I6736ba7b1809bece1bf3cd82c69e4f42a0d3c4a7
Treehugger Robot [Sat, 6 Aug 2016 02:56:01 +0000 (02:56 +0000)]
Merge "ART: Factor out native stack dumping"
Treehugger Robot [Sat, 6 Aug 2016 02:41:24 +0000 (02:41 +0000)]
Merge "Add a register allocation strategy compiler option"
Treehugger Robot [Sat, 6 Aug 2016 01:49:59 +0000 (01:49 +0000)]
Merge "ART: Extract macro assembler"
Treehugger Robot [Sat, 6 Aug 2016 01:41:44 +0000 (01:41 +0000)]
Merge "Test all register allocators in regalloc gtest"
Matthew Gharrity [Wed, 3 Aug 2016 23:57:37 +0000 (16:57 -0700)]
Add a register allocation strategy compiler option
Test: manually, on device.
Change-Id: If007a1657dd5769ddef03691e0a19dbbe6ba1a29
Andreas Gampe [Tue, 2 Aug 2016 05:07:04 +0000 (22:07 -0700)]
ART: Extract macro assembler
Extract macro assembler functionality used by the JNI compiler from
the assembler interface. Templatize the new interface so that
type safety ensures correct usage.
Change-Id: Idb9f56e5b87e43ee6a7378853d8a9f01abe156b2
Test: m test-art-host
Richard Uhler [Fri, 5 Aug 2016 23:26:57 +0000 (16:26 -0700)]
ahat: Target Java 1.7.
So that users can run ahat with Java 7 without getting unsupported
major/minor version errors.
Change-Id: I76faab19bc1b14c76d5fd6b3ba19fcb07855dfd9
Test: m ahat-test
Test: /usr/local/buildtools/java/jdk7/bin/java -jar ahat.jar
Test: /usr/local/buildtools/java/jdk8/bin/java -jar ahat.jar
Bug:
28303627
Treehugger Robot [Fri, 5 Aug 2016 21:31:10 +0000 (21:31 +0000)]
Merge "Implement a graph coloring register allocator"
Matthew Gharrity [Fri, 5 Aug 2016 16:34:52 +0000 (09:34 -0700)]
Test all register allocators in regalloc gtest
Previously, the gtest only exercised the default register allocator.
Note that the line count is high due mostly to whitespace changes.
Test: m test-art-host-gtest-register_allocator_test
Change-Id: I783edf98ae11d605d4f69834866c387abb71d34f
Matthew Gharrity [Wed, 22 Jun 2016 17:27:55 +0000 (10:27 -0700)]
Implement a graph coloring register allocator
Test: m test-art-host
Change-Id: I8c0d77f339ab02b33588a54b96ecce5c8322cfce
Mathieu Chartier [Fri, 5 Aug 2016 19:57:26 +0000 (19:57 +0000)]
Merge "ARM64 asm for region space array allocation"
Mathieu Chartier [Thu, 4 Aug 2016 18:08:26 +0000 (11:08 -0700)]
ARM64 asm for region space array allocation
Wrote region space tlab array and array resolved allocators in
assembly code. The speedup is a combined increase from checking the
mark bit and having an assembly fast path.
Added resolved, initialized entrypoints for object region TLAB
allocator.
N6P (960000 mhz) EEAC benchmark (average of 50 samples):
CC 1442.309524 -> 1314 (10% improvement)
CMS: 1382.32
Read barrier slow paths reaching C++ code go from 5M to 2.5M.
Bug:
30162165
Bug:
12687968
Test: With CC: N6P boot, run EAAC, test-art-target
Change-Id: I51515b11ef3f795f57eb72fe0f5759618fef5084
Treehugger Robot [Fri, 5 Aug 2016 16:27:46 +0000 (16:27 +0000)]
Merge "ART: Fix type parameter in tests"
Andreas Gampe [Wed, 3 Aug 2016 00:20:03 +0000 (17:20 -0700)]
ART: Factor out native stack dumping
Move DumpNativeStack and DumpKernelStack into a new file to keep
concerns separated. Clean up the file.
In preparation for modifications to how we use addr2line.
Bug:
30351473
Test: m test-art-host
Test: manual host testing with a test that times out
Change-Id: I02d5645952fe94fd8e73bcf0522721547f6cef66
Treehugger Robot [Thu, 4 Aug 2016 22:20:33 +0000 (22:20 +0000)]
Merge "Temporary disable new round implementation on x86/x86_64"
Treehugger Robot [Thu, 4 Aug 2016 22:05:54 +0000 (22:05 +0000)]
Merge "Add support for CallKind::kCallOnMainAndSlowPath"
Aart Bik [Thu, 4 Aug 2016 21:28:21 +0000 (14:28 -0700)]
Temporary disable new round implementation on x86/x86_64
Rationale:
FUGU is not happy
Test: 580-checker-round
BUG=
26327751
Change-Id: If0ddea47a88e14b86d37080b8a18a6f8defcc8e6
Treehugger Robot [Thu, 4 Aug 2016 20:34:57 +0000 (20:34 +0000)]
Merge "ART: Fix Mac-specific things in x86-64 assembly"
Treehugger Robot [Thu, 4 Aug 2016 20:32:52 +0000 (20:32 +0000)]
Merge "Implement single-/double-precision round intrinsic in x86_64"
Treehugger Robot [Thu, 4 Aug 2016 20:05:17 +0000 (20:05 +0000)]
Merge "Clean up use of art::Exec versus execv."
Aart Bik [Tue, 2 Aug 2016 22:40:56 +0000 (15:40 -0700)]
Implement single-/double-precision round intrinsic in x86_64
Rationale:
X86_64 does not provide a direct instruction for the
required rounding and NaN and large positive numbers
must be dealt with too. This CL generates code that
correctly implements SP and DP round.
Test: 580-checker-round
BUG=
26327751
Change-Id: Ia7518e2c30afafba4e037e2d0c21e0ce926f0425
Andreas Gampe [Thu, 4 Aug 2016 18:16:52 +0000 (11:16 -0700)]
ART: Fix Mac-specific things in x86-64 assembly
We incorrectly used double-underscore on x86-64 as VAR (used by
trampoline macros) introduced an additional underscore. Add CALLVAR
just as on x86.
Bug:
30212852
Change-Id: I2a95dd736453160769ea1a8b24c66f1738049ccb
Test: m test-art-host (Linux)
Test: builds on Mac
David Sehr [Thu, 4 Aug 2016 16:41:55 +0000 (09:41 -0700)]
Clean up use of art::Exec versus execv.
Bug: b/
30143290
Change-Id: I41dcaad39beea857bb606d39c1f15ba1da963e46
Test: test-art-host-gtest-oatdump_test
Aart Bik [Thu, 4 Aug 2016 17:53:49 +0000 (17:53 +0000)]
Merge "Implement single-precision round intrinsic in x86"
Aart Bik [Mon, 1 Aug 2016 23:52:27 +0000 (16:52 -0700)]
Implement single-precision round intrinsic in x86
Rationale:
X86 does not provide a direct instruction for the
required rounding and NaN and large positive numbers
must be dealt with too. This CL generates code that
correctly implements SP round in a reasonably
efficient manner (I hope....)
Test: 580-checker-round
BUG=
26327751
Change-Id: Ic5f4d9cff9c27c855a8ad577c51ed3ed37fb60cd
Treehugger Robot [Thu, 4 Aug 2016 16:46:17 +0000 (16:46 +0000)]
Merge "Thumb2: Clean up 16-bit LDR/STR detection."
Vladimir Marko [Thu, 4 Aug 2016 15:55:03 +0000 (15:55 +0000)]
Merge "x86/x86-64: Fix suspend entrypoint assembly for Mac build."
Vladimir Marko [Tue, 2 Aug 2016 13:57:56 +0000 (14:57 +0100)]
Thumb2: Clean up 16-bit LDR/STR detection.
The 16-bit LDR/STR sp, #N can be used for N = (imm8 << 2)
but it was previously used only for N < 128. This cleans up
the 16-bit instruction availability calculation for this
case as well as for byte and half word loads and stores.
However, only the LDR/STR sp, #N has impact on the code we
currently generate in Optimizing.
Reduces aosp_hammerhead-userdebug boot.oat by 108KiB.
Test: Run ART test suite on Nexus 5.
Change-Id: Ie06d130a48efad10c23f8ff2596a51efd98d0761
Vladimir Marko [Thu, 4 Aug 2016 15:46:51 +0000 (16:46 +0100)]
x86/x86-64: Fix suspend entrypoint assembly for Mac build.
Bug:
30212852
Change-Id: I89f1003e73ac42c0e8d63d0fe2f2af4f24c0733d
Vladimir Marko [Thu, 4 Aug 2016 14:44:10 +0000 (14:44 +0000)]
Merge "Change suspend entrypoint to save all registers."
Vladimir Marko [Thu, 28 Jul 2016 11:01:51 +0000 (12:01 +0100)]
Change suspend entrypoint to save all registers.
We avoid the need to save/restore registers in slow paths
and get significant code size savings. On Nexus 9, AOSP:
- 32-bit boot.oat: -1.4MiB (-1.9%)
- 64-bit boot.oat: -2.0MiB (-2.3%)
- other 32-bit oat files in dalvik-cache: -200KiB (-1.7%)
- other 64-bit oat files in dalvik-cache: -2.3MiB (-2.1%)
Test: Run ART test suite on host and Nexus 9 with gc stress.
Bug:
30212852
Change-Id: I7015afc1e7d30341618c9200a3dc9ae277afd134
Treehugger Robot [Thu, 4 Aug 2016 13:44:17 +0000 (13:44 +0000)]
Merge "Update known buildbot failures for ProcessBuilderTest"
Tobias Thierer [Wed, 3 Aug 2016 18:12:37 +0000 (19:12 +0100)]
Update known buildbot failures for ProcessBuilderTest
Also updated the comment string based on our latest understanding.
This is a native crash. Both of the affected tests as well as the
other tests in ProcessBuilderTest run 'sh' as a child process.
Only one of the tests that are affected to far accesses /proc/,
which had previously been suspected as related to the cause.
The statement that this is a native crash is based on there not
being a relevant stacktrace in logcat.
A 'sh' related native crash failure occurs in the logs but that
is not specific to these tests so it's not clear if it is related.
If not, it's not clear why the additional native crash doesn't
show up in the logs.
Test: Nothing
Bug:
30657148
Change-Id: I8347edab3cacd060baf1087a1939926f70fdd349
Tobias Thierer [Thu, 4 Aug 2016 10:51:13 +0000 (10:51 +0000)]
Merge "Note known failures for TCP_USER_TIMEOUT tests on host"
Narayan Kamath [Thu, 4 Aug 2016 09:18:08 +0000 (09:18 +0000)]
Merge "libcore_failures: Remove obsolete entries."
Narayan Kamath [Wed, 3 Aug 2016 09:13:22 +0000 (10:13 +0100)]
libcore_failures: Remove obsolete entries.
These tests were failing with the OpenJDK switch, but have since
been fixed.
bug:
26326992
test: art/tools/run-libcore-tests.sh --mode=host --variant=X32
Change-Id: I9210d3fd428e0e462d95c2a620fe014e26bb942c
Treehugger Robot [Thu, 4 Aug 2016 03:35:08 +0000 (03:35 +0000)]
Merge "Fix CC table lookup tests"
Mathieu Chartier [Thu, 4 Aug 2016 01:51:34 +0000 (18:51 -0700)]
Fix CC table lookup tests
Only set the mark bits for baker barrier, not sure why this
doesn't work for table lookup barrier yet.
Bug:
30162165
Test: test-art-host with CC table lookup
Change-Id: I4309ac22bfc0f8a5c9bf081365e3e38da43eee30
Treehugger Robot [Wed, 3 Aug 2016 23:40:55 +0000 (23:40 +0000)]
Merge "Change one read barrier bit to mark bit"
Mathieu Chartier [Fri, 29 Jul 2016 01:08:51 +0000 (18:08 -0700)]
Change one read barrier bit to mark bit
Optimization to help slow path performance. When the GC marks an
object through the read barrier slow path. The GC sets the mark bit
in the lock word of that reference. This bit is checked from the
assembly entrypoint the common case is that it is set. If the bit is
set, the read barrier knows the object is already marked and there is
no work to do.
To prevent dirty pages in zygote and image, the bit is set by the
image writer and zygote space creation.
EAAC score (lower is better):
N9: 777 -> 700 (average 31 of runs)
N6P (960000 mhz): 1737.48 -> 1442.31 (average of 25 runs)
Bug:
30162165
Bug:
12687968
Test: N9, N6P booting, test-art-host, test-art-target all with CC
Change-Id: Iae0cacfae221e33151d3c0ab65338d1c822ab63d
Treehugger Robot [Wed, 3 Aug 2016 22:21:08 +0000 (22:21 +0000)]
Merge "Use ArrayInstance.getLength method."
Roland Levillain [Wed, 3 Aug 2016 17:56:02 +0000 (17:56 +0000)]
Merge "ARM64: Use the zero register in the parallel-move resolver."
Tobias Thierer [Wed, 3 Aug 2016 17:33:33 +0000 (18:33 +0100)]
Note known failures for TCP_USER_TIMEOUT tests on host
TCP_USER_TIMEOUT is not currently defined on the prebuilt tcp.h (at least
not on x86-64), so its value at the non-native level remains 0, breaking
tests that rely on it.
Devices kernels and bionic support it, therefore these tests are only
expected to break on host.
Test: Nothing. Buildbot will let us know soon enough if the expected
failures do not match reality.
Bug:
30402085
Change-Id: Iacaf63ab341c6e4a41c7d21fb3064d58ada94800
Treehugger Robot [Wed, 3 Aug 2016 17:08:51 +0000 (17:08 +0000)]
Merge "Fix constant type"
Roland Levillain [Wed, 3 Aug 2016 17:03:25 +0000 (17:03 +0000)]
Merge "Fix an assertion in the non-Baker read barrier ARM64 slow path."
Richard Uhler [Wed, 3 Aug 2016 16:26:35 +0000 (09:26 -0700)]
Use ArrayInstance.getLength method.
Now that perflib provides it as a better way to get the length of an
array instance.
Change-Id: I6bf8bb5541229e16f36fa8ede0a07cd0eb7b931d
Test: m ahat-test
Bug:
30481345
David Sehr [Wed, 3 Aug 2016 16:05:20 +0000 (09:05 -0700)]
Fix constant type
Remove the unnecessary cast to long for DCHECK, a nit that was omitted
from the last CL, https://android-review.googlesource.com/#/c/248243/.
Bug: b/
28856653
Test: test-art-host-gtest-dex_file_test
Change-Id: I8ca18d19cbac61e40ddfbe32729aef5c20347174
Treehugger Robot [Wed, 3 Aug 2016 16:09:45 +0000 (16:09 +0000)]
Merge "ART: Extend run-test timeout logging time"
Nicolas Geoffray [Wed, 3 Aug 2016 15:21:40 +0000 (15:21 +0000)]
Merge "Scope the compilation and Create the ProfilingInfo in the loop."
Roland Levillain [Wed, 3 Aug 2016 14:02:10 +0000 (15:02 +0100)]
Fix an assertion in the non-Baker read barrier ARM64 slow path.
Test: m ART_USE_READ_BARRIER=true ART_READ_BARRIER_TYPE=TABLELOOKUP test-art-target (ARM64).
Bug:
30563701
Change-Id: Ib7969bd78e9c14cc2be9d5527d80385486b4f409
Alexandre Rames [Tue, 2 Aug 2016 12:45:28 +0000 (13:45 +0100)]
ARM64: Use the zero register in the parallel-move resolver.
When moving zero to a stack slot, this will change
mov temp, #0
str temp, [...]
into
str zr, [...]
Change-Id: I2211b00d70f3fa0a02e781c90198757290b2bf89
Treehugger Robot [Tue, 2 Aug 2016 22:41:39 +0000 (22:41 +0000)]
Merge "Return error directly when uncompressed length is 0"
ganxiaolin [Mon, 18 Jul 2016 03:21:44 +0000 (11:21 +0800)]
Return error directly when uncompressed length is 0
If uncompressed length is 0, in function MemMap::MapAnonymous, it will generate a MemMap instance whose base_begin is nullptr.
Then, when OpenMemory, it will create a DexFile instance.
At DexFile::DexFile constructor, header_ is asigned to 0, then header_->string_ids_off_ will cause crash.
Bug: b/
28856653
Test: test-art-host-gtest-dex_file_test
Signed-off-by: ganxiaolin <ganxiaolin@xiaomi.com>
Change-Id: Id37f7629f4646cbc385ef054cb83b15be4c59b00
Nicolas Geoffray [Tue, 2 Aug 2016 17:49:25 +0000 (18:49 +0100)]
Scope the compilation and Create the ProfilingInfo in the loop.
We need to release the mutator lock to avoid being in a deadlock.
Also allocating the profiling just before compiling in the unlickely
event that it got collected after releasing the mutator lock.
bug:
30351473
Change-Id: I98dba646536d857152949b92f6c69ff9a03cf783
Nicolas Geoffray [Tue, 2 Aug 2016 20:18:27 +0000 (20:18 +0000)]
Merge "Improve the graph visualizer's output for constant locations."
Nicolas Geoffray [Tue, 2 Aug 2016 20:06:39 +0000 (20:06 +0000)]
Merge "ARM64: Make the VIXL macro assembler part of ART ARM64's assembler."
Andreas Gampe [Tue, 2 Aug 2016 04:53:57 +0000 (21:53 -0700)]
ART: Extend run-test timeout logging time
Double the time a test is allowed to attempt logging after it
timed out to two minutes.
Also change from using nested timeouts to using "-k" in general,
not just for host dex2oat.
Bug:
30351473
Test: m test-art-host
Change-Id: I134c7b220f69eaab7ea430a5c7ce45d77b091996
Dan Willemsen [Tue, 2 Aug 2016 17:41:59 +0000 (17:41 +0000)]
Merge "Split art-run-tests between building and packaging"
Vladimir Marko [Tue, 2 Aug 2016 16:59:35 +0000 (16:59 +0000)]
Merge "Align method code rather than method header in oat files."
Treehugger Robot [Tue, 2 Aug 2016 16:52:14 +0000 (16:52 +0000)]
Merge "ART: Fix Mips Thread offset checks"
Alexandre Rames [Tue, 2 Aug 2016 12:45:28 +0000 (13:45 +0100)]
ARM64: Make the VIXL macro assembler part of ART ARM64's assembler.
This avoids a dynamic allocation of the VIXL macro assembler.
Change-Id: I4cd62678d0978f1ad6f32ea0ce7279e09152be38
Andreas Gampe [Tue, 2 Aug 2016 15:44:20 +0000 (08:44 -0700)]
ART: Fix Mips Thread offset checks
Follow-up to commit
542451cc546779f5c67840e105c51205a1b0a8fd.
Bug:
30373134
Test: m test-art-host
Change-Id: I1d0202896e683cb20db30e8aac1c5ebcacc96467
Alexandre Rames [Tue, 2 Aug 2016 12:45:28 +0000 (13:45 +0100)]
Improve the graph visualizer's output for constant locations.
Change-Id: I423fb378ee61fb53c3b328fc74f4e95cdef0992a
Narayan Kamath [Tue, 2 Aug 2016 12:36:14 +0000 (12:36 +0000)]
Merge "DexFile: Add basic support for v38 dex files."
Vladimir Marko [Tue, 2 Aug 2016 12:31:10 +0000 (12:31 +0000)]
Merge "ARM: Embed 0.0 in VCMP."
Vladimir Marko [Mon, 1 Aug 2016 16:41:45 +0000 (17:41 +0100)]
ARM: Embed 0.0 in VCMP.
Test: Run ART test suite on Nexus 5.
Change-Id: I5cbbd98c4d64a4d9213e27adcae929ead5099a39
Vladimir Marko [Mon, 1 Aug 2016 15:33:16 +0000 (16:33 +0100)]
Align method code rather than method header in oat files.
This has always been the intent. For example, the function
name CompiledMethod::AlignCode() shows this intent.
Test: Run ART test suite on host and Nexus 9.
Change-Id: I11ae8963fc537fee853fe82e3aca22e77907eae7
Narayan Kamath [Mon, 1 Aug 2016 13:20:31 +0000 (14:20 +0100)]
DexFile: Add basic support for v38 dex files.
Makes sure they aren't rejected, essentially. Also adds positive
and negative test cases in dex_file_test.
bug:
30550796
Change-Id: I8c95055a22f8a1435868c8bf3497f9641b7bb900
test: make test-art-host
Narayan Kamath [Tue, 2 Aug 2016 08:09:35 +0000 (08:09 +0000)]
Merge "dex_instruction: remove unused parameter from instruction definitions."
Narayan Kamath [Mon, 1 Aug 2016 16:32:37 +0000 (17:32 +0100)]
dex_instruction: remove unused parameter from instruction definitions.
bug:
30550796
test: make test-art-host
Change-Id: Ib80a2d5c548578cefb0552b597e1d50b813ce8ef
Dan Willemsen [Tue, 2 Aug 2016 05:58:31 +0000 (22:58 -0700)]
Split art-run-tests between building and packaging
We remove the 'obj/PACKAGING' directory during an installclean. Instead
of forcing a rebuild of all of these tests after an installclean, build
them in a different obj directory, then copy them into the PACKAGING
directory to be gathered together by LOCAL_PICKUP_FILES.
The built directory isn't used directly for LOCAL_PICKUP_FILES, since we
don't clean up tests that are no longer defined, so an installclean can
fix that. This matches the behavior of modules installed into the system
image, etc.
This brings my build time for "m -j55 tests" from 3m30s to 35s after
"m installclean".
The total size of these binaries are small (~10MB), so the extra copy is
insignificant.
Change-Id: I20f1c09df25b70df8c7f86167480b3a39e99642a
Treehugger Robot [Tue, 2 Aug 2016 03:47:35 +0000 (03:47 +0000)]
Merge "ART: Convert pointer size to enum"
Nicolas Geoffray [Tue, 2 Aug 2016 02:07:19 +0000 (02:07 +0000)]
Merge "Revert "cpp-define-generator: "make art-update-cpp-defines" to regen asm_support""
Nicolas Geoffray [Tue, 2 Aug 2016 02:07:07 +0000 (02:07 +0000)]
Revert "cpp-define-generator: "make art-update-cpp-defines" to regen asm_support"
Reverting to unbreak golem builds.
This reverts commit
3c92b129047b12f0887a2068b3800d7a7dcb7d78.
Change-Id: I78ef481f57fbcd3b3a9f4802dd6c21dabb186856
Andreas Gampe [Tue, 26 Jul 2016 16:02:02 +0000 (09:02 -0700)]
ART: Convert pointer size to enum
Move away from size_t to dedicated enum (class).
Bug:
30373134
Bug:
30419309
Test: m test-art-host
Change-Id: Id453c330f1065012e7d4f9fc24ac477cc9bb9269
Treehugger Robot [Tue, 2 Aug 2016 00:32:16 +0000 (00:32 +0000)]
Merge "Fixed bug in disassembly of roundss/roundsd"
Aart Bik [Mon, 1 Aug 2016 22:55:36 +0000 (15:55 -0700)]
Fixed bug in disassembly of roundss/roundsd
Rationale:
These instructions should be marked as load, so that, using
Intel syntax, destination (xmm0) appears at left hand side, as in
roundss xmm0, xmm1
and not the other way around. First I suspected a bug in the
encoding (hence the test) and even the register allocator, but
since the code behaved correctly, only disassembly was really wrong.
Test: disassembler_x86_test (but nothing for actual disassembly)
BUG=
26327751
Change-Id: I060ef57f4d5a64cdc04b97ae8a799d1c0d22da05
Treehugger Robot [Mon, 1 Aug 2016 22:45:01 +0000 (22:45 +0000)]
Merge "Added direct memory operand support for comiss/sd on x86."
Treehugger Robot [Mon, 1 Aug 2016 22:39:15 +0000 (22:39 +0000)]
Merge "libsigchain: intercept bsd_signal on lp32"
Dimitry Ivanov [Mon, 1 Aug 2016 18:19:03 +0000 (11:19 -0700)]
libsigchain: intercept bsd_signal on lp32
bsd_signal is a deprecated synonym for the signal. Nevertheless
there are apps and libraries calling this function.
libsigchain needs to intercept these calls and handle them the same
way it handles signal() call.
Bug: http://b/
30562229
Test: readelf --dyn-sym app_process32 and check that bsd_signal is exported
readelf --dyn-sym app_process64 and check that bsd_signal is not exported
Change-Id: I3aa41632bb015568d8524a82f1c97e4443ec0d6c
Aart Bik [Mon, 1 Aug 2016 21:11:20 +0000 (14:11 -0700)]
Added direct memory operand support for comiss/sd on x86.
Rationale:
Memory operands allows for shorter instruction sequences.
Something that may be used e.g. the upcoming implementation
of the round intrinsic.
Bug=
26327751
Change-Id: Ifd976ed86917de1879fa036cbbbff5edf4fb741d
Test: assembler_x86_test
Nicolas Geoffray [Mon, 1 Aug 2016 19:45:05 +0000 (19:45 +0000)]
Merge "Put the deletion of profiling info under a GC critical section."
Hiroshi Yamauchi [Mon, 1 Aug 2016 19:05:43 +0000 (19:05 +0000)]
Merge "Revert "Revert "Scan immune spaces using mod union tables."""
Colin Cross [Mon, 1 Aug 2016 18:14:07 +0000 (18:14 +0000)]
Merge "ART: remove gcc cruft from the makefiles"
Treehugger Robot [Mon, 1 Aug 2016 17:46:49 +0000 (17:46 +0000)]
Merge "cpp-define-generator: "make art-update-cpp-defines" to regen asm_support"