03b9ee44362965efec4a4f3d23e978e390fa842f |
|
25-Apr-2015 |
Andreas Gampe <agampe@google.com> |
ART: Refactor utils/assembler test Split out the part that compares a buffer with the product of a host assembler. That will allow to reuse this for the Quick assemblers. Change-Id: Ie15777cb0a22f7532d8a8ea35403db0f229cd26f
|
d23840d3ed900c6072d71e6599b3568b68de6b7c |
|
08-Apr-2015 |
Chao-ying Fu <chao-ying.fu@intel.com> |
x86_64: Fix the rex prefix for movzxb, movsxb, movb This patch sets the rex prefix for the source byte register of movzxb, movsxb, and movb that has the destination memory operand, when the register is SPL, BPL, SIL, DIL. This patch adds tests for movzxb and movsxb via Repeatrb(), and adds the tertiary and quaternary register views for word and byte registers on x86_64. TODO: Support tests with memory operands. Change-Id: I0c5c727f3dd4a75af039b87f7e57d0741e689038 Signed-off-by: Chao-ying Fu <chao-ying.fu@intel.com>
|
fb8d279bc011b31d0765dc7ca59afea324fd0d0c |
|
01-Apr-2015 |
Mark Mendell <mark.p.mendell@intel.com> |
[optimizing] Implement x86/x86_64 math intrinsics Implement floor/ceil/round/RoundFloat on x86 and x86_64. Implement RoundDouble on x86_64. Add support for roundss and roundsd on both architectures. Support them in the disassembler as well. Add the instruction set features for x86, as the 'round' instruction is only supported if SSE4.1 is supported. Fix the tests to handle the addition of passing the instruction set features to x86 and x86_64. Add assembler tests for roundsd and roundss to x86_64 assembler tests. Change-Id: I9742d5930befb0bbc23f3d6c83ce0183ed9fe04f Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
|
65bec691dfa22d66d5a694c40ec9874581eee333 |
|
14-Jan-2015 |
Andreas Gampe <agampe@google.com> |
ART: Clean assembler_test disassemblies Add a flag. Enable commented-out code. Change-Id: Ife17b72f2b93c128992d757e58b0e51431a3edf8
|
9aec02fc5df5518c16f1e5a9b6cb198a192db973 |
|
19-Nov-2014 |
Calin Juravle <calin@google.com> |
[optimizing compiler] Add shifts Added SHL, SHR, USHR for arm, x86, x86_64. Change-Id: I971f594e270179457e6958acf1401ff7630df07e
|
849cc5e54cbd05f4efbd6082e03547ed9284639f |
|
18-Nov-2014 |
Andreas Gampe <agampe@google.com> |
ART: Assembler_arm_test Add some generic test infrastructure, and update the arm32 test. Supports many of the GPR instructions. Change-Id: I8a270ec377f3266d6ab486e636abb50c56b87823
|
851df20225593b10e698a760ac3cd5243620700b |
|
12-Nov-2014 |
Andreas Gampe <agampe@google.com> |
ART: Multiview assembler_test, fix x86-64 assembler Expose "secondary" names for registers so it is possible to test 32b views for 64b architectures. Add floating-point register testing. Refactor assembler_test for better code reuse (and simpler adding of combination drivers). Fix movss, movsd (MR instead of RM encoding), xchgl, xchgq, both versions of EmitGenericShift. Tighten imull(Reg,Imm), imulq(Reg,Imm), xchgl and xchgq encoding. Clarify cv*** variants with a comment. Add tests for movl, addl, imull, imuli, mull, subl, cmpqi, cmpl, xorq (regs), xorl, movss, movsd, addss, addsd, subss, subsd, mulss, mulsd, divss, divsd, cvtsi2ss, cvtsi2sd, cvtss2si, cvtss2sd, cvtsd2si, cvttss2si, cvttsd2si, cvtsd2ss, cvtdq2pd, comiss, comisd, sqrtss, sqrtsd, xorps, xorpd, fincstp, fsin, fcos, fptan, xchgl (disabled, see code comment), xchgq, testl, andl, andq, orl, orq, shll, shrl, sarl, negq, negl, notq, notl, enter and leave, call, ret, and jmp, and make some older ones more exhaustive. Follow-up TODOs: 1) Support memory (Address). 2) Support tertiary and quaternary register views. Bug: 18117217 Change-Id: I1d583a3bec552e3cc7c315925e1e006f393ab687
|
1a28fc43ea7daa624ada9af40e30de64d4e946a8 |
|
13-Nov-2014 |
Roland Levillain <rpl@google.com> |
Exercise the generation of SBFX on ARM32 & Thumb-2. Exercise the generation of the ARM SBFX intruction in compiler/utils/arm/assembler_arm32_test.cc (ARM instruction set encoding) and in compiler/utils/arm/assembler_thumb2_test.cc (Thumb instruction set encoding). Change-Id: Ic72683aac6dd6628e227523e352c395e1a63b52e
|
cf7f19135f0e273f7b0136315633c2abfc715343 |
|
23-Oct-2014 |
Ian Rogers <irogers@google.com> |
C++11 related clean-up of DISALLOW_.. Move DISALLOW_COPY_AND_ASSIGN to delete functions. By no having declarations with no definitions this prompts better warning messages so deal with these by correcting the code. Add a DISALLOW_ALLOCATION and use for ValueObject and mirror::Object. Make X86 assembly operand types ValueObjects to fix compilation errors. Tidy the use of iostream and ostream. Avoid making cutils a dependency via mutex-inl.h for tests that link against libart. Push tracing dependencies into appropriate files and mutex.cc. x86 32-bit host symbols size is increased for libarttest, avoid copying this in run-test 115 by using symlinks and remove this test's higher than normal ulimit. Fix the RunningOnValgrind test in RosAllocSpace to not use GetHeap as it returns NULL when the heap is under construction by Runtime. Change-Id: Ia246f7ac0c11f73072b30d70566a196e9b78472b
|
102cbed1e52b7c5f09458b44903fe97bb3e14d5f |
|
15-Oct-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Implement register allocator for floating point registers. Also: - Fix misuses of emitting the rex prefix in the x86_64 assembler. - Fix movaps code generation in the x86_64 assembler. Change-Id: Ib6dcf6e7c4a9c43368cfc46b02ba50f69ae69cbe
|
f896965072343a2d6ad64d46a61112b10b3645dd |
|
06-Aug-2014 |
Andreas Gampe <agampe@google.com> |
ART: Remove test files after test The unix_file tests should remove files and directories when they are done testing. Bug: 16505797 (cherry picked from commit 7747c8de402f64e3009ca3bcccebddbb70f617ee) Change-Id: I9c3c8f1a80ec0d37628a742193267e182c25b0cd
|
f0d30ed8fcffc839ceb91359a547c0efb7641d53 |
|
07-Aug-2014 |
Andreas Gampe <agampe@google.com> |
ART: Make assembler_test less chatty Do not save temporaries in case we use a different encoding than the host assembler. Bug: 16505797 (cherry picked from commit 54e15de4a3ea869488d50694fa01138901e70c4e) Change-Id: I9508d9b09d930db70587a69c04bb3c8950339d79
|
54e15de4a3ea869488d50694fa01138901e70c4e |
|
07-Aug-2014 |
Andreas Gampe <agampe@google.com> |
ART: Make assembler_test less chatty Do not save temporaries in case we use a different encoding than the host assembler. Bug: 16505797 Change-Id: Iaa9edfe8bc84d7f809f5b403de902b92b0998431
|
7747c8de402f64e3009ca3bcccebddbb70f617ee |
|
06-Aug-2014 |
Andreas Gampe <agampe@google.com> |
ART: Remove test files after test The unix_file tests should remove files and directories when they are done testing. Bug: 16505797 Change-Id: Iff6856f64ee42ee9818b4ac23a6de3fe7eec6eae
|
700a402244a1a423da4f3ba8032459f4b65fa18f |
|
20-May-2014 |
Ian Rogers <irogers@google.com> |
Now we have a proper C++ library, use std::unique_ptr. Also remove the Android.libcxx.mk and other bits of stlport compatibility mechanics. Change-Id: Icdf7188ba3c79cdf5617672c1cfd0a68ae596a61
|
b40c6a768aa8df4774d2a8c3ac7045237cc748cd |
|
02-May-2014 |
Andreas Gampe <agampe@google.com> |
ART: Fix assembler_test to use ScratchFile This removes a warning about tmpnam usage. Also add an assertion to ScratchFile about ANDROID_DATA being set, which it relies on for the temp directory. Change-Id: I1202f92e48e61492f0ed3ac36ff44fde34dbb0e1
|
5a4fa82ab42af6e728a60e3261963aa243c3e2cd |
|
01-Apr-2014 |
Andreas Gampe <agampe@google.com> |
x86_64 Assembler Test Infrastructure, fix x86_64 assembler Some infrastructure to do real assembler testing. Need to extend to other assemblers, and a lot more tests. Fix some of the cases of the x86_64 assembler. Change-Id: I15b5f3a094af469130db68a95a66602cf30d8fc4
|