diff options
Diffstat (limited to 'src/common')
| -rw-r--r-- | src/common/CMakeLists.txt | 1 | ||||
| -rw-r--r-- | src/common/scope_exit.h | 2 | ||||
| -rw-r--r-- | src/common/telemetry.h | 4 | ||||
| -rw-r--r-- | src/common/x64/xbyak_abi.h | 20 |
4 files changed, 13 insertions, 14 deletions
diff --git a/src/common/CMakeLists.txt b/src/common/CMakeLists.txt index 8e51104a1..943ff996e 100644 --- a/src/common/CMakeLists.txt +++ b/src/common/CMakeLists.txt | |||
| @@ -209,7 +209,6 @@ else() | |||
| 209 | endif() | 209 | endif() |
| 210 | 210 | ||
| 211 | create_target_directory_groups(common) | 211 | create_target_directory_groups(common) |
| 212 | find_package(Boost 1.71 COMPONENTS context headers REQUIRED) | ||
| 213 | 212 | ||
| 214 | target_link_libraries(common PUBLIC ${Boost_LIBRARIES} fmt::fmt microprofile) | 213 | target_link_libraries(common PUBLIC ${Boost_LIBRARIES} fmt::fmt microprofile) |
| 215 | target_link_libraries(common PRIVATE lz4::lz4 xbyak) | 214 | target_link_libraries(common PRIVATE lz4::lz4 xbyak) |
diff --git a/src/common/scope_exit.h b/src/common/scope_exit.h index 68ef5f197..fa46cb394 100644 --- a/src/common/scope_exit.h +++ b/src/common/scope_exit.h | |||
| @@ -10,7 +10,7 @@ | |||
| 10 | namespace detail { | 10 | namespace detail { |
| 11 | template <typename Func> | 11 | template <typename Func> |
| 12 | struct ScopeExitHelper { | 12 | struct ScopeExitHelper { |
| 13 | explicit ScopeExitHelper(Func&& func) : func(std::move(func)) {} | 13 | explicit ScopeExitHelper(Func&& func_) : func(std::move(func_)) {} |
| 14 | ~ScopeExitHelper() { | 14 | ~ScopeExitHelper() { |
| 15 | if (active) { | 15 | if (active) { |
| 16 | func(); | 16 | func(); |
diff --git a/src/common/telemetry.h b/src/common/telemetry.h index a50c5d1de..49186e848 100644 --- a/src/common/telemetry.h +++ b/src/common/telemetry.h | |||
| @@ -52,8 +52,8 @@ public: | |||
| 52 | template <typename T> | 52 | template <typename T> |
| 53 | class Field : public FieldInterface { | 53 | class Field : public FieldInterface { |
| 54 | public: | 54 | public: |
| 55 | Field(FieldType type, std::string name, T value) | 55 | Field(FieldType type_, std::string name_, T value_) |
| 56 | : name(std::move(name)), type(type), value(std::move(value)) {} | 56 | : name(std::move(name_)), type(type_), value(std::move(value_)) {} |
| 57 | 57 | ||
| 58 | Field(const Field&) = default; | 58 | Field(const Field&) = default; |
| 59 | Field& operator=(const Field&) = default; | 59 | Field& operator=(const Field&) = default; |
diff --git a/src/common/x64/xbyak_abi.h b/src/common/x64/xbyak_abi.h index 26e4bfda5..c2c9b6134 100644 --- a/src/common/x64/xbyak_abi.h +++ b/src/common/x64/xbyak_abi.h | |||
| @@ -11,25 +11,25 @@ | |||
| 11 | 11 | ||
| 12 | namespace Common::X64 { | 12 | namespace Common::X64 { |
| 13 | 13 | ||
| 14 | constexpr std::size_t RegToIndex(const Xbyak::Reg& reg) { | 14 | constexpr size_t RegToIndex(const Xbyak::Reg& reg) { |
| 15 | using Kind = Xbyak::Reg::Kind; | 15 | using Kind = Xbyak::Reg::Kind; |
| 16 | ASSERT_MSG((reg.getKind() & (Kind::REG | Kind::XMM)) != 0, | 16 | ASSERT_MSG((reg.getKind() & (Kind::REG | Kind::XMM)) != 0, |
| 17 | "RegSet only support GPRs and XMM registers."); | 17 | "RegSet only support GPRs and XMM registers."); |
| 18 | ASSERT_MSG(reg.getIdx() < 16, "RegSet only supports XXM0-15."); | 18 | ASSERT_MSG(reg.getIdx() < 16, "RegSet only supports XXM0-15."); |
| 19 | return reg.getIdx() + (reg.getKind() == Kind::REG ? 0 : 16); | 19 | return static_cast<size_t>(reg.getIdx()) + (reg.getKind() == Kind::REG ? 0 : 16); |
| 20 | } | 20 | } |
| 21 | 21 | ||
| 22 | constexpr Xbyak::Reg64 IndexToReg64(std::size_t reg_index) { | 22 | constexpr Xbyak::Reg64 IndexToReg64(size_t reg_index) { |
| 23 | ASSERT(reg_index < 16); | 23 | ASSERT(reg_index < 16); |
| 24 | return Xbyak::Reg64(static_cast<int>(reg_index)); | 24 | return Xbyak::Reg64(static_cast<int>(reg_index)); |
| 25 | } | 25 | } |
| 26 | 26 | ||
| 27 | constexpr Xbyak::Xmm IndexToXmm(std::size_t reg_index) { | 27 | constexpr Xbyak::Xmm IndexToXmm(size_t reg_index) { |
| 28 | ASSERT(reg_index >= 16 && reg_index < 32); | 28 | ASSERT(reg_index >= 16 && reg_index < 32); |
| 29 | return Xbyak::Xmm(static_cast<int>(reg_index - 16)); | 29 | return Xbyak::Xmm(static_cast<int>(reg_index - 16)); |
| 30 | } | 30 | } |
| 31 | 31 | ||
| 32 | constexpr Xbyak::Reg IndexToReg(std::size_t reg_index) { | 32 | constexpr Xbyak::Reg IndexToReg(size_t reg_index) { |
| 33 | if (reg_index < 16) { | 33 | if (reg_index < 16) { |
| 34 | return IndexToReg64(reg_index); | 34 | return IndexToReg64(reg_index); |
| 35 | } else { | 35 | } else { |
| @@ -182,7 +182,7 @@ inline size_t ABI_PushRegistersAndAdjustStack(Xbyak::CodeGenerator& code, std::b | |||
| 182 | size_t rsp_alignment, size_t needed_frame_size = 0) { | 182 | size_t rsp_alignment, size_t needed_frame_size = 0) { |
| 183 | auto frame_info = ABI_CalculateFrameSize(regs, rsp_alignment, needed_frame_size); | 183 | auto frame_info = ABI_CalculateFrameSize(regs, rsp_alignment, needed_frame_size); |
| 184 | 184 | ||
| 185 | for (std::size_t i = 0; i < regs.size(); ++i) { | 185 | for (size_t i = 0; i < regs.size(); ++i) { |
| 186 | if (regs[i] && ABI_ALL_GPRS[i]) { | 186 | if (regs[i] && ABI_ALL_GPRS[i]) { |
| 187 | code.push(IndexToReg64(i)); | 187 | code.push(IndexToReg64(i)); |
| 188 | } | 188 | } |
| @@ -192,7 +192,7 @@ inline size_t ABI_PushRegistersAndAdjustStack(Xbyak::CodeGenerator& code, std::b | |||
| 192 | code.sub(code.rsp, frame_info.subtraction); | 192 | code.sub(code.rsp, frame_info.subtraction); |
| 193 | } | 193 | } |
| 194 | 194 | ||
| 195 | for (std::size_t i = 0; i < regs.size(); ++i) { | 195 | for (size_t i = 0; i < regs.size(); ++i) { |
| 196 | if (regs[i] && ABI_ALL_XMMS[i]) { | 196 | if (regs[i] && ABI_ALL_XMMS[i]) { |
| 197 | code.movaps(code.xword[code.rsp + frame_info.xmm_offset], IndexToXmm(i)); | 197 | code.movaps(code.xword[code.rsp + frame_info.xmm_offset], IndexToXmm(i)); |
| 198 | frame_info.xmm_offset += 0x10; | 198 | frame_info.xmm_offset += 0x10; |
| @@ -206,7 +206,7 @@ inline void ABI_PopRegistersAndAdjustStack(Xbyak::CodeGenerator& code, std::bits | |||
| 206 | size_t rsp_alignment, size_t needed_frame_size = 0) { | 206 | size_t rsp_alignment, size_t needed_frame_size = 0) { |
| 207 | auto frame_info = ABI_CalculateFrameSize(regs, rsp_alignment, needed_frame_size); | 207 | auto frame_info = ABI_CalculateFrameSize(regs, rsp_alignment, needed_frame_size); |
| 208 | 208 | ||
| 209 | for (std::size_t i = 0; i < regs.size(); ++i) { | 209 | for (size_t i = 0; i < regs.size(); ++i) { |
| 210 | if (regs[i] && ABI_ALL_XMMS[i]) { | 210 | if (regs[i] && ABI_ALL_XMMS[i]) { |
| 211 | code.movaps(IndexToXmm(i), code.xword[code.rsp + frame_info.xmm_offset]); | 211 | code.movaps(IndexToXmm(i), code.xword[code.rsp + frame_info.xmm_offset]); |
| 212 | frame_info.xmm_offset += 0x10; | 212 | frame_info.xmm_offset += 0x10; |
| @@ -218,8 +218,8 @@ inline void ABI_PopRegistersAndAdjustStack(Xbyak::CodeGenerator& code, std::bits | |||
| 218 | } | 218 | } |
| 219 | 219 | ||
| 220 | // GPRs need to be popped in reverse order | 220 | // GPRs need to be popped in reverse order |
| 221 | for (std::size_t j = 0; j < regs.size(); ++j) { | 221 | for (size_t j = 0; j < regs.size(); ++j) { |
| 222 | const std::size_t i = regs.size() - j - 1; | 222 | const size_t i = regs.size() - j - 1; |
| 223 | if (regs[i] && ABI_ALL_GPRS[i]) { | 223 | if (regs[i] && ABI_ALL_GPRS[i]) { |
| 224 | code.pop(IndexToReg64(i)); | 224 | code.pop(IndexToReg64(i)); |
| 225 | } | 225 | } |