From 794ad76e8d5b5b9132819d5b08a0570e27615644 Mon Sep 17 00:00:00 2001 From: Andreas Gampe Date: Mon, 23 Feb 2015 08:12:24 -0800 Subject: ART: Introduce NO_RETURN, Mark DoLongJump noreturn Add NO_RETURN macro that adds C++11 noreturn attribute. Mark DoLongJump methods as noreturn. Change-Id: Ifde4318e370493237050d4c1349285a0382df23f --- runtime/arch/mips64/context_mips64.cc | 2 +- runtime/arch/mips64/context_mips64.h | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'runtime/arch/mips64') diff --git a/runtime/arch/mips64/context_mips64.cc b/runtime/arch/mips64/context_mips64.cc index 1c96bd4..ce99b40 100644 --- a/runtime/arch/mips64/context_mips64.cc +++ b/runtime/arch/mips64/context_mips64.cc @@ -121,7 +121,7 @@ void Mips64Context::SmashCallerSaves() { fprs_[F23] = nullptr; } -extern "C" void art_quick_do_long_jump(uintptr_t*, uintptr_t*); +extern "C" NO_RETURN void art_quick_do_long_jump(uintptr_t*, uintptr_t*); void Mips64Context::DoLongJump() { uintptr_t gprs[kNumberOfGpuRegisters]; diff --git a/runtime/arch/mips64/context_mips64.h b/runtime/arch/mips64/context_mips64.h index 1046723..2cc2b8d 100644 --- a/runtime/arch/mips64/context_mips64.h +++ b/runtime/arch/mips64/context_mips64.h @@ -19,6 +19,7 @@ #include "arch/context.h" #include "base/logging.h" +#include "base/macros.h" #include "registers_mips64.h" namespace art { @@ -75,7 +76,7 @@ class Mips64Context : public Context { void SetFPR(uint32_t reg, uintptr_t value) OVERRIDE; void SmashCallerSaves() OVERRIDE; - void DoLongJump() OVERRIDE; + NO_RETURN void DoLongJump() OVERRIDE; private: // Pointers to registers in the stack, initialized to NULL except for the special cases below. -- cgit v1.1