Merge "[optimizing compiler] Handle SUB_FLOAT/DOUBLE nodes"
diff --git a/compiler/optimizing/builder.cc b/compiler/optimizing/builder.cc
index f48f4c3..79cbd0e 100644
--- a/compiler/optimizing/builder.cc
+++ b/compiler/optimizing/builder.cc
@@ -783,6 +783,16 @@
break;
}
+ case Instruction::SUB_FLOAT: {
+ Binop_23x<HSub>(instruction, Primitive::kPrimFloat);
+ break;
+ }
+
+ case Instruction::SUB_DOUBLE: {
+ Binop_23x<HSub>(instruction, Primitive::kPrimDouble);
+ break;
+ }
+
case Instruction::ADD_INT_2ADDR: {
Binop_12x<HAdd>(instruction, Primitive::kPrimInt);
break;
@@ -833,6 +843,16 @@
break;
}
+ case Instruction::SUB_FLOAT_2ADDR: {
+ Binop_12x<HSub>(instruction, Primitive::kPrimFloat);
+ break;
+ }
+
+ case Instruction::SUB_DOUBLE_2ADDR: {
+ Binop_12x<HSub>(instruction, Primitive::kPrimDouble);
+ break;
+ }
+
case Instruction::MUL_INT_2ADDR: {
Binop_12x<HMul>(instruction, Primitive::kPrimInt);
break;
diff --git a/test/Android.run-test.mk b/test/Android.run-test.mk
index 9279ce3..6822825 100644
--- a/test/Android.run-test.mk
+++ b/test/Android.run-test.mk
@@ -316,6 +316,7 @@
411-optimizing-arith \
412-new-array \
413-regalloc-regression \
+ 414-optimizing-arith-sub \
700-LoadArgRegs \
800-smali