From 40ec0d83585d6e233d10baaaaee0c98ffc98ca51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Tue, 29 Sep 2020 12:53:18 +0200 Subject: [PATCH] Finish getting rid of basictypes.h --- CMakeLists.txt | 19 +++++++++++----- Common/ByteSwap.h | 29 +++++++++++++++++++++++++ Common/Common.vcxproj | 1 + Common/Common.vcxproj.filters | 1 + Common/FakeCPUDetect.cpp | 4 ++-- Core/MIPS/IR/IRPassSimplify.cpp | 2 +- Core/MIPS/MIPSAsm.cpp | 2 -- Core/MIPS/x86/CompALU.cpp | 4 ++-- UWP/CommonUWP/CommonUWP.vcxproj | 2 ++ UWP/CommonUWP/CommonUWP.vcxproj.filters | 2 ++ UWP/NativeUWP/NativeUWP.vcxproj | 1 - UWP/NativeUWP/NativeUWP.vcxproj.filters | 3 --- android/jni/app-android.cpp | 1 - ext/native/base/basictypes.h | 29 ------------------------- ext/native/native.vcxproj | 1 - ext/native/native.vcxproj.filters | 3 --- ext/native/util/hash/hash.h | 6 +---- ext/native/util/text/utf16.h | 3 ++- 18 files changed, 57 insertions(+), 56 deletions(-) create mode 100644 Common/ByteSwap.h delete mode 100644 ext/native/base/basictypes.h diff --git a/CMakeLists.txt b/CMakeLists.txt index e61c638d9e..c19c0da939 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -427,8 +427,6 @@ add_library(Common STATIC ${CommonFake} ${CommonWindows} ${CommonVulkan} - Common/ColorConv.cpp - Common/ColorConv.h Common/Serialize/Serializer.cpp Common/Serialize/Serializer.h Common/Serialize/SerializeDeque.h @@ -436,14 +434,26 @@ add_library(Common STATIC Common/Serialize/SerializeList.h Common/Serialize/SerializeMap.h Common/Serialize/SerializeSet.h - Common/ConsoleListener.cpp - Common/ConsoleListener.h Common/Crypto/md5.cpp Common/Crypto/md5.h Common/Crypto/sha1.cpp Common/Crypto/sha1.h Common/Crypto/sha256.cpp Common/Crypto/sha256.h + Common/BitScan.h + Common/BitSet.h + Common/ByteSwap.h + Common/CodeBlock.h + Common/ColorConv.cpp + Common/ColorConv.h + Common/Common.h + Common/CommonFuncs.h + Common/CommonTypes.h + Common/ConsoleListener.cpp + Common/ConsoleListener.h + Common/DbgNew.h + Common/FakeEmitter.h + Common/FixedSizeQueue.h Common/ExceptionHandlerSetup.cpp Common/ExceptionHandlerSetup.h Common/FileUtil.cpp @@ -939,7 +949,6 @@ endif() add_library(native STATIC ${nativeExtra} - ext/native/base/basictypes.h ext/native/base/buffer.cpp ext/native/base/buffer.h ext/native/base/colorutil.cpp diff --git a/Common/ByteSwap.h b/Common/ByteSwap.h new file mode 100644 index 0000000000..21274cd7d1 --- /dev/null +++ b/Common/ByteSwap.h @@ -0,0 +1,29 @@ +#pragma once + +#include +#include // for byte swapping + +// Byteswapping +// Just in case this has been defined by platform +#undef swap16 +#undef swap32 +#undef swap64 + +#ifdef _WIN32 +inline uint16_t swap16(uint16_t _data) { return _byteswap_ushort(_data); } +inline uint32_t swap32(uint32_t _data) { return _byteswap_ulong(_data); } +inline uint64_t swap64(uint64_t _data) { return _byteswap_uint64(_data); } +#elif defined(__GNUC__) +inline uint16_t swap16(uint16_t _data) { return __builtin_bswap16(_data); } +inline uint32_t swap32(uint32_t _data) { return __builtin_bswap32(_data); } +inline uint64_t swap64(uint64_t _data) { return __builtin_bswap64(_data); } +#else +// Slow generic implementation. Hopefully this never hits +inline uint16_t swap16(uint16_t data) { return (data >> 8) | (data << 8); } +inline uint32_t swap32(uint32_t data) { return (swap16(data) << 16) | swap16(data >> 16); } +inline uint64_t swap64(uint64_t data) { return ((uint64_t)swap32(data) << 32) | swap32(data >> 32); } +#endif + +inline uint16_t swap16(const uint8_t* _pData) { return swap16(*(const uint16_t*)_pData); } +inline uint32_t swap32(const uint8_t* _pData) { return swap32(*(const uint32_t*)_pData); } +inline uint64_t swap64(const uint8_t* _pData) { return swap64(*(const uint64_t*)_pData); } diff --git a/Common/Common.vcxproj b/Common/Common.vcxproj index 62f72077cd..ca391d93ad 100644 --- a/Common/Common.vcxproj +++ b/Common/Common.vcxproj @@ -354,6 +354,7 @@ + diff --git a/Common/Common.vcxproj.filters b/Common/Common.vcxproj.filters index 6cd39fb4f3..404207aacb 100644 --- a/Common/Common.vcxproj.filters +++ b/Common/Common.vcxproj.filters @@ -94,6 +94,7 @@ + diff --git a/Common/FakeCPUDetect.cpp b/Common/FakeCPUDetect.cpp index d314afe773..a75490160f 100644 --- a/Common/FakeCPUDetect.cpp +++ b/Common/FakeCPUDetect.cpp @@ -15,9 +15,9 @@ // Official SVN repository and contact information can be found at // http://code.google.com/p/dolphin-emu/ +#include +#include -#include -#include "base/basictypes.h" #include "Common.h" #include "CPUDetect.h" #include "StringUtils.h" diff --git a/Core/MIPS/IR/IRPassSimplify.cpp b/Core/MIPS/IR/IRPassSimplify.cpp index 13b74ab8bf..d6f96876d2 100644 --- a/Core/MIPS/IR/IRPassSimplify.cpp +++ b/Core/MIPS/IR/IRPassSimplify.cpp @@ -2,7 +2,7 @@ #include #include -#include "base/basictypes.h" +#include "Common/ByteSwap.h" #include "Common/Log.h" #include "Core/MIPS/IR/IRInterpreter.h" #include "Core/MIPS/IR/IRPassSimplify.h" diff --git a/Core/MIPS/MIPSAsm.cpp b/Core/MIPS/MIPSAsm.cpp index 08965b4fc2..37914016e6 100644 --- a/Core/MIPS/MIPSAsm.cpp +++ b/Core/MIPS/MIPSAsm.cpp @@ -7,8 +7,6 @@ #include #include "Common/CommonTypes.h" - -// This has to be before basictypes to avoid a define conflict. #include "ext/armips/Core/Assembler.h" #include "util/text/utf8.h" diff --git a/Core/MIPS/x86/CompALU.cpp b/Core/MIPS/x86/CompALU.cpp index e038bad6be..06ee0e9231 100644 --- a/Core/MIPS/x86/CompALU.cpp +++ b/Core/MIPS/x86/CompALU.cpp @@ -18,13 +18,13 @@ #include "ppsspp_config.h" #if PPSSPP_ARCH(X86) || PPSSPP_ARCH(AMD64) -#include "base/basictypes.h" +#include +#include "Common/ByteSwap.h" #include "Common/Common.h" #include "Core/MIPS/MIPSCodeUtils.h" #include "Core/MIPS/x86/Jit.h" #include "Core/MIPS/x86/RegCache.h" -#include using namespace MIPSAnalyst; diff --git a/UWP/CommonUWP/CommonUWP.vcxproj b/UWP/CommonUWP/CommonUWP.vcxproj index b6a8a7b933..1424c98b62 100644 --- a/UWP/CommonUWP/CommonUWP.vcxproj +++ b/UWP/CommonUWP/CommonUWP.vcxproj @@ -383,7 +383,9 @@ + + diff --git a/UWP/CommonUWP/CommonUWP.vcxproj.filters b/UWP/CommonUWP/CommonUWP.vcxproj.filters index 50626b680e..62ed966957 100644 --- a/UWP/CommonUWP/CommonUWP.vcxproj.filters +++ b/UWP/CommonUWP/CommonUWP.vcxproj.filters @@ -56,6 +56,8 @@ + + diff --git a/UWP/NativeUWP/NativeUWP.vcxproj b/UWP/NativeUWP/NativeUWP.vcxproj index 51fc5b92b4..717123ab72 100644 --- a/UWP/NativeUWP/NativeUWP.vcxproj +++ b/UWP/NativeUWP/NativeUWP.vcxproj @@ -379,7 +379,6 @@ - diff --git a/UWP/NativeUWP/NativeUWP.vcxproj.filters b/UWP/NativeUWP/NativeUWP.vcxproj.filters index add1237be7..0f9d862f10 100644 --- a/UWP/NativeUWP/NativeUWP.vcxproj.filters +++ b/UWP/NativeUWP/NativeUWP.vcxproj.filters @@ -463,9 +463,6 @@ - - base - base diff --git a/android/jni/app-android.cpp b/android/jni/app-android.cpp index bba710d3f0..7204b85aed 100644 --- a/android/jni/app-android.cpp +++ b/android/jni/app-android.cpp @@ -49,7 +49,6 @@ struct JNIEnv {}; #define JNI_VERSION_1_6 16 #endif -#include "base/basictypes.h" #include "base/display.h" #include "base/NativeApp.h" #include "thread/threadutil.h" diff --git a/ext/native/base/basictypes.h b/ext/native/base/basictypes.h deleted file mode 100644 index 8a52f1b6c7..0000000000 --- a/ext/native/base/basictypes.h +++ /dev/null @@ -1,29 +0,0 @@ -#pragma once - -#include -#include // for byte swapping - -// Byteswapping -// Just in case this has been defined by platform -#undef swap16 -#undef swap32 -#undef swap64 - -#ifdef _WIN32 -inline uint16_t swap16(uint16_t _data) {return _byteswap_ushort(_data);} -inline uint32_t swap32(uint32_t _data) {return _byteswap_ulong (_data);} -inline uint64_t swap64(uint64_t _data) {return _byteswap_uint64(_data);} -#elif defined(__GNUC__) -inline uint16_t swap16(uint16_t _data) {return __builtin_bswap16(_data);} -inline uint32_t swap32(uint32_t _data) {return __builtin_bswap32(_data);} -inline uint64_t swap64(uint64_t _data) {return __builtin_bswap64(_data);} -#else -// Slow generic implementation. Hopefully this never hits -inline uint16_t swap16(uint16_t data) {return (data >> 8) | (data << 8);} -inline uint32_t swap32(uint32_t data) {return (swap16(data) << 16) | swap16(data >> 16);} -inline uint64_t swap64(uint64_t data) {return ((uint64_t)swap32(data) << 32) | swap32(data >> 32);} -#endif - -inline uint16_t swap16(const uint8_t* _pData) {return swap16(*(const uint16_t*)_pData);} -inline uint32_t swap32(const uint8_t* _pData) {return swap32(*(const uint32_t*)_pData);} -inline uint64_t swap64(const uint8_t* _pData) {return swap64(*(const uint64_t*)_pData);} diff --git a/ext/native/native.vcxproj b/ext/native/native.vcxproj index caee297bd3..87ca54c357 100644 --- a/ext/native/native.vcxproj +++ b/ext/native/native.vcxproj @@ -382,7 +382,6 @@ - diff --git a/ext/native/native.vcxproj.filters b/ext/native/native.vcxproj.filters index 0c847988b1..272e10769e 100644 --- a/ext/native/native.vcxproj.filters +++ b/ext/native/native.vcxproj.filters @@ -68,9 +68,6 @@ file - - base - gfx diff --git a/ext/native/util/hash/hash.h b/ext/native/util/hash/hash.h index 2f7e4305b6..cd4a194a46 100644 --- a/ext/native/util/hash/hash.h +++ b/ext/native/util/hash/hash.h @@ -1,10 +1,7 @@ -#ifndef _UTIL_HASH_HASH_H -#define _UTIL_HASH_HASH_H +#pragma once #include -#include "base/basictypes.h" - namespace hash { // Fairly decent function for hashing strings. @@ -12,4 +9,3 @@ uint32_t Adler32(const uint8_t *data, size_t len); } // namespace hash -#endif diff --git a/ext/native/util/text/utf16.h b/ext/native/util/text/utf16.h index c23a554856..542b1e94a6 100644 --- a/ext/native/util/text/utf16.h +++ b/ext/native/util/text/utf16.h @@ -1,7 +1,8 @@ #pragma once #include -#include "base/basictypes.h" + +#include "Common/ByteSwap.h" // Should optimize out. #define UTF16_IS_LITTLE_ENDIAN (*(const uint16_t *)"\0\xff" >= 0x100)