Merge pull request #431 from lioncash/noexcept

backend/x64/a32_interface: Mark Context move constructor and move assignment as noexcept
This commit is contained in:
Merry 2019-03-01 21:57:48 +00:00 committed by MerryMage
commit 24b0622093
2 changed files with 4 additions and 4 deletions

View file

@ -18,9 +18,9 @@ public:
Context(); Context();
~Context(); ~Context();
Context(const Context&); Context(const Context&);
Context(Context&&); Context(Context&&) noexcept;
Context& operator=(const Context&); Context& operator=(const Context&);
Context& operator=(Context&&); Context& operator=(Context&&) noexcept;
/// View and modify registers. /// View and modify registers.
std::array<std::uint32_t, 16>& Regs(); std::array<std::uint32_t, 16>& Regs();

View file

@ -222,12 +222,12 @@ struct Context::Impl {
Context::Context() : impl(std::make_unique<Context::Impl>()) { impl->jit_state.ResetRSB(); } Context::Context() : impl(std::make_unique<Context::Impl>()) { impl->jit_state.ResetRSB(); }
Context::~Context() = default; Context::~Context() = default;
Context::Context(const Context& ctx) : impl(std::make_unique<Context::Impl>(*ctx.impl)) {} Context::Context(const Context& ctx) : impl(std::make_unique<Context::Impl>(*ctx.impl)) {}
Context::Context(Context&& ctx) : impl(std::move(ctx.impl)) {} Context::Context(Context&& ctx) noexcept : impl(std::move(ctx.impl)) {}
Context& Context::operator=(const Context& ctx) { Context& Context::operator=(const Context& ctx) {
*impl = *ctx.impl; *impl = *ctx.impl;
return *this; return *this;
} }
Context& Context::operator=(Context&& ctx) { Context& Context::operator=(Context&& ctx) noexcept {
impl = std::move(ctx.impl); impl = std::move(ctx.impl);
return *this; return *this;
} }