From 647b1a86f518d8db0331b3d52a96392b7a62504b Mon Sep 17 00:00:00 2001 From: Ian Rogers Date: Fri, 10 Oct 2014 11:02:11 -0700 Subject: Fix 2 new sets of clang compiler warnings. Fix issues that are flagged by -Wfloat-equal and -Wmissing-noreturn. In the case of -Wfloat-equal the current cases in regular code are deliberate, so the change is to silence the warning. For gtest code the appropriate fix is to switch from EXPECT_EQ to EXPECT_(FLOAT|DOUBLE)_EQ. The -Wmissing-noreturn warning isn't enabled due to a missing noreturn in gtest. This issue has been reported to gtest. Change-Id: Id84c70c21c542716c9ee0c41492e8ff8788c4ef8 --- runtime/interpreter/interpreter_switch_impl.cc | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'runtime/interpreter/interpreter_switch_impl.cc') diff --git a/runtime/interpreter/interpreter_switch_impl.cc b/runtime/interpreter/interpreter_switch_impl.cc index fe0af27f00..14e8a522eb 100644 --- a/runtime/interpreter/interpreter_switch_impl.cc +++ b/runtime/interpreter/interpreter_switch_impl.cc @@ -562,6 +562,12 @@ JValue ExecuteSwitchImpl(Thread* self, MethodHelper& mh, const DexFile::CodeItem inst = inst->RelativeAt(offset); break; } + +#if defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wfloat-equal" +#endif + case Instruction::CMPL_FLOAT: { PREAMBLE(); float val1 = shadow_frame.GetVRegFloat(inst->VRegB_23x()); @@ -627,6 +633,11 @@ JValue ExecuteSwitchImpl(Thread* self, MethodHelper& mh, const DexFile::CodeItem inst = inst->Next_2xx(); break; } + +#if defined(__clang__) +#pragma clang diagnostic pop +#endif + case Instruction::CMP_LONG: { PREAMBLE(); int64_t val1 = shadow_frame.GetVRegLong(inst->VRegB_23x()); -- cgit v1.2.3-59-g8ed1b