diff options
author | Calin Juravle <calin@google.com> | 2014-11-26 19:01:09 +0000 |
---|---|---|
committer | Calin Juravle <calin@google.com> | 2014-11-26 19:01:09 +0000 |
commit | 91debbc3da3e3376416e4394155d9f9e355255cb (patch) | |
tree | fd2181a2d4b8e7e8d26101a9a87b4f0c34fa990f /compiler/utils | |
parent | fd861249f31ab360c12dd1ffb131d50f02b0bfc6 (diff) | |
download | android_art-91debbc3da3e3376416e4394155d9f9e355255cb.tar.gz android_art-91debbc3da3e3376416e4394155d9f9e355255cb.tar.bz2 android_art-91debbc3da3e3376416e4394155d9f9e355255cb.zip |
Revert "[optimizing compiler] Add CMP{L,G}_{FLOAT,DOUBLE}"
Fails on arm due to missing vmrs op after vcmp. I revert this instead of pushing the fix because I don't understand yet why it compiles with run-test but not with dex2oat.
This reverts commit fd861249f31ab360c12dd1ffb131d50f02b0bfc6.
Change-Id: Idc2d30f6a0f39ddd3596aa18a532ae90f8aaf62f
Diffstat (limited to 'compiler/utils')
-rw-r--r-- | compiler/utils/x86/assembler_x86.cc | 17 | ||||
-rw-r--r-- | compiler/utils/x86/assembler_x86.h | 2 | ||||
-rw-r--r-- | compiler/utils/x86/constants_x86.h | 3 | ||||
-rw-r--r-- | compiler/utils/x86_64/assembler_x86_64.cc | 18 | ||||
-rw-r--r-- | compiler/utils/x86_64/assembler_x86_64.h | 2 | ||||
-rw-r--r-- | compiler/utils/x86_64/assembler_x86_64_test.cc | 8 | ||||
-rw-r--r-- | compiler/utils/x86_64/constants_x86_64.h | 3 |
7 files changed, 2 insertions, 51 deletions
diff --git a/compiler/utils/x86/assembler_x86.cc b/compiler/utils/x86/assembler_x86.cc index b118f9a81a..a297ea3b6e 100644 --- a/compiler/utils/x86/assembler_x86.cc +++ b/compiler/utils/x86/assembler_x86.cc @@ -613,23 +613,6 @@ void X86Assembler::comisd(XmmRegister a, XmmRegister b) { } -void X86Assembler::ucomiss(XmmRegister a, XmmRegister b) { - AssemblerBuffer::EnsureCapacity ensured(&buffer_); - EmitUint8(0x0F); - EmitUint8(0x2E); - EmitXmmRegisterOperand(a, b); -} - - -void X86Assembler::ucomisd(XmmRegister a, XmmRegister b) { - AssemblerBuffer::EnsureCapacity ensured(&buffer_); - EmitUint8(0x66); - EmitUint8(0x0F); - EmitUint8(0x2E); - EmitXmmRegisterOperand(a, b); -} - - void X86Assembler::sqrtsd(XmmRegister dst, XmmRegister src) { AssemblerBuffer::EnsureCapacity ensured(&buffer_); EmitUint8(0xF2); diff --git a/compiler/utils/x86/assembler_x86.h b/compiler/utils/x86/assembler_x86.h index a630ccda46..6ea66a5fa7 100644 --- a/compiler/utils/x86/assembler_x86.h +++ b/compiler/utils/x86/assembler_x86.h @@ -301,8 +301,6 @@ class X86Assembler FINAL : public Assembler { void comiss(XmmRegister a, XmmRegister b); void comisd(XmmRegister a, XmmRegister b); - void ucomiss(XmmRegister a, XmmRegister b); - void ucomisd(XmmRegister a, XmmRegister b); void sqrtsd(XmmRegister dst, XmmRegister src); void sqrtss(XmmRegister dst, XmmRegister src); diff --git a/compiler/utils/x86/constants_x86.h b/compiler/utils/x86/constants_x86.h index 2dfb65c479..45c3834a98 100644 --- a/compiler/utils/x86/constants_x86.h +++ b/compiler/utils/x86/constants_x86.h @@ -96,8 +96,7 @@ enum Condition { kZero = kEqual, kNotZero = kNotEqual, kNegative = kSign, - kPositive = kNotSign, - kUnordered = kParityEven + kPositive = kNotSign }; diff --git a/compiler/utils/x86_64/assembler_x86_64.cc b/compiler/utils/x86_64/assembler_x86_64.cc index 2b7ec0fbd9..dff3849076 100644 --- a/compiler/utils/x86_64/assembler_x86_64.cc +++ b/compiler/utils/x86_64/assembler_x86_64.cc @@ -700,24 +700,6 @@ void X86_64Assembler::comisd(XmmRegister a, XmmRegister b) { EmitXmmRegisterOperand(a.LowBits(), b); } -void X86_64Assembler::ucomiss(XmmRegister a, XmmRegister b) { - AssemblerBuffer::EnsureCapacity ensured(&buffer_); - EmitOptionalRex32(a, b); - EmitUint8(0x0F); - EmitUint8(0x2E); - EmitXmmRegisterOperand(a.LowBits(), b); -} - - -void X86_64Assembler::ucomisd(XmmRegister a, XmmRegister b) { - AssemblerBuffer::EnsureCapacity ensured(&buffer_); - EmitUint8(0x66); - EmitOptionalRex32(a, b); - EmitUint8(0x0F); - EmitUint8(0x2E); - EmitXmmRegisterOperand(a.LowBits(), b); -} - void X86_64Assembler::sqrtsd(XmmRegister dst, XmmRegister src) { AssemblerBuffer::EnsureCapacity ensured(&buffer_); diff --git a/compiler/utils/x86_64/assembler_x86_64.h b/compiler/utils/x86_64/assembler_x86_64.h index 929ed31747..ab1bc9e97d 100644 --- a/compiler/utils/x86_64/assembler_x86_64.h +++ b/compiler/utils/x86_64/assembler_x86_64.h @@ -344,8 +344,6 @@ class X86_64Assembler FINAL : public Assembler { void comiss(XmmRegister a, XmmRegister b); void comisd(XmmRegister a, XmmRegister b); - void ucomiss(XmmRegister a, XmmRegister b); - void ucomisd(XmmRegister a, XmmRegister b); void sqrtsd(XmmRegister dst, XmmRegister src); void sqrtss(XmmRegister dst, XmmRegister src); diff --git a/compiler/utils/x86_64/assembler_x86_64_test.cc b/compiler/utils/x86_64/assembler_x86_64_test.cc index c8e923c9d6..14a98b9359 100644 --- a/compiler/utils/x86_64/assembler_x86_64_test.cc +++ b/compiler/utils/x86_64/assembler_x86_64_test.cc @@ -660,14 +660,6 @@ TEST_F(AssemblerX86_64Test, Comisd) { DriverStr(RepeatFF(&x86_64::X86_64Assembler::comisd, "comisd %{reg2}, %{reg1}"), "comisd"); } -TEST_F(AssemblerX86_64Test, Ucomiss) { - DriverStr(RepeatFF(&x86_64::X86_64Assembler::ucomiss, "ucomiss %{reg2}, %{reg1}"), "ucomiss"); -} - -TEST_F(AssemblerX86_64Test, Ucomisd) { - DriverStr(RepeatFF(&x86_64::X86_64Assembler::ucomisd, "ucomisd %{reg2}, %{reg1}"), "ucomisd"); -} - TEST_F(AssemblerX86_64Test, Sqrtss) { DriverStr(RepeatFF(&x86_64::X86_64Assembler::sqrtss, "sqrtss %{reg2}, %{reg1}"), "sqrtss"); } diff --git a/compiler/utils/x86_64/constants_x86_64.h b/compiler/utils/x86_64/constants_x86_64.h index 0c782d46cd..2a5b43da46 100644 --- a/compiler/utils/x86_64/constants_x86_64.h +++ b/compiler/utils/x86_64/constants_x86_64.h @@ -105,8 +105,7 @@ enum Condition { kZero = kEqual, kNotZero = kNotEqual, kNegative = kSign, - kPositive = kNotSign, - kUnordered = kParityEven + kPositive = kNotSign }; |