diff --git a/compiler/optimizing/licm_test.cc b/compiler/optimizing/licm_test.cc
index 6e6e0b5..2fc66e6 100644
--- a/compiler/optimizing/licm_test.cc
+++ b/compiler/optimizing/licm_test.cc
@@ -109,11 +109,11 @@
       parameter_, constant_, constant, Primitive::kPrimDouble, 0);
   loop_body_->InsertInstructionBefore(set_array, loop_body_->GetLastInstruction());
 
-  CHECK_EQ(constant->GetBlock(), loop_body_);
-  CHECK_EQ(set_array->GetBlock(), loop_body_);
+  EXPECT_EQ(constant->GetBlock(), loop_body_);
+  EXPECT_EQ(set_array->GetBlock(), loop_body_);
   PerformLICM();
-  CHECK_EQ(constant->GetBlock(), loop_preheader_);
-  CHECK_EQ(set_array->GetBlock(), loop_body_);
+  EXPECT_EQ(constant->GetBlock(), loop_preheader_);
+  EXPECT_EQ(set_array->GetBlock(), loop_body_);
 }
 
 TEST_F(LICMTest, FieldHoisting) {
@@ -129,11 +129,11 @@
       false, kUnknownFieldIndex, graph_->GetDexFile());
   loop_body_->InsertInstructionBefore(set_field, loop_body_->GetLastInstruction());
 
-  CHECK_EQ(get_field->GetBlock(), loop_body_);
-  CHECK_EQ(set_field->GetBlock(), loop_body_);
+  EXPECT_EQ(get_field->GetBlock(), loop_body_);
+  EXPECT_EQ(set_field->GetBlock(), loop_body_);
   PerformLICM();
-  CHECK_EQ(get_field->GetBlock(), loop_preheader_);
-  CHECK_EQ(set_field->GetBlock(), loop_body_);
+  EXPECT_EQ(get_field->GetBlock(), loop_preheader_);
+  EXPECT_EQ(set_field->GetBlock(), loop_body_);
 }
 
 TEST_F(LICMTest, NoFieldHoisting) {
@@ -149,11 +149,11 @@
       false, kUnknownFieldIndex, graph_->GetDexFile());
   loop_body_->InsertInstructionBefore(set_field, loop_body_->GetLastInstruction());
 
-  CHECK_EQ(get_field->GetBlock(), loop_body_);
-  CHECK_EQ(set_field->GetBlock(), loop_body_);
+  EXPECT_EQ(get_field->GetBlock(), loop_body_);
+  EXPECT_EQ(set_field->GetBlock(), loop_body_);
   PerformLICM();
-  CHECK_EQ(get_field->GetBlock(), loop_body_);
-  CHECK_EQ(set_field->GetBlock(), loop_body_);
+  EXPECT_EQ(get_field->GetBlock(), loop_body_);
+  EXPECT_EQ(set_field->GetBlock(), loop_body_);
 }
 
 TEST_F(LICMTest, ArrayHoisting) {
@@ -167,11 +167,11 @@
       parameter_, constant_, constant_, Primitive::kPrimInt, 0);
   loop_body_->InsertInstructionBefore(set_array, loop_body_->GetLastInstruction());
 
-  CHECK_EQ(get_array->GetBlock(), loop_body_);
-  CHECK_EQ(set_array->GetBlock(), loop_body_);
+  EXPECT_EQ(get_array->GetBlock(), loop_body_);
+  EXPECT_EQ(set_array->GetBlock(), loop_body_);
   PerformLICM();
-  CHECK_EQ(get_array->GetBlock(), loop_preheader_);
-  CHECK_EQ(set_array->GetBlock(), loop_body_);
+  EXPECT_EQ(get_array->GetBlock(), loop_preheader_);
+  EXPECT_EQ(set_array->GetBlock(), loop_body_);
 }
 
 TEST_F(LICMTest, NoArrayHoisting) {
@@ -185,11 +185,11 @@
       parameter_, get_array, constant_, Primitive::kPrimLong, 0);
   loop_body_->InsertInstructionBefore(set_array, loop_body_->GetLastInstruction());
 
-  CHECK_EQ(get_array->GetBlock(), loop_body_);
-  CHECK_EQ(set_array->GetBlock(), loop_body_);
+  EXPECT_EQ(get_array->GetBlock(), loop_body_);
+  EXPECT_EQ(set_array->GetBlock(), loop_body_);
   PerformLICM();
-  CHECK_EQ(get_array->GetBlock(), loop_body_);
-  CHECK_EQ(set_array->GetBlock(), loop_body_);
+  EXPECT_EQ(get_array->GetBlock(), loop_body_);
+  EXPECT_EQ(set_array->GetBlock(), loop_body_);
 }
 
 }  // namespace art
