mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-30 21:30:04 +00:00 
			
		
		
		
	Remove GCC version checks
Citra can't be compiled using GCC <7 because of required C++17 support, so these version checks don't need to exist anymore.
This commit is contained in:
		
							parent
							
								
									f409342ab5
								
							
						
					
					
						commit
						433ab35e7e
					
				
					 4 changed files with 3 additions and 25 deletions
				
			
		|  | @ -58,9 +58,7 @@ private: | ||||||
|     } |     } | ||||||
|     u32_le storage; |     u32_le storage; | ||||||
| }; | }; | ||||||
| #if (__GNUC__ >= 5) || defined(__clang__) || defined(_MSC_VER) |  | ||||||
| static_assert(std::is_trivially_copyable<u32_dsp>::value, "u32_dsp isn't trivially copyable"); | static_assert(std::is_trivially_copyable<u32_dsp>::value, "u32_dsp isn't trivially copyable"); | ||||||
| #endif |  | ||||||
| 
 | 
 | ||||||
| // There are 15 structures in each memory region. A table of them in the order they appear in memory
 | // There are 15 structures in each memory region. A table of them in the order they appear in memory
 | ||||||
| // is presented below:
 | // is presented below:
 | ||||||
|  | @ -103,21 +101,12 @@ static_assert(std::is_trivially_copyable<u32_dsp>::value, "u32_dsp isn't trivial | ||||||
| 
 | 
 | ||||||
| #define INSERT_PADDING_DSPWORDS(num_words) INSERT_PADDING_BYTES(2 * (num_words)) | #define INSERT_PADDING_DSPWORDS(num_words) INSERT_PADDING_BYTES(2 * (num_words)) | ||||||
| 
 | 
 | ||||||
| // GCC versions < 5.0 do not implement std::is_trivially_copyable.
 |  | ||||||
| // Excluding MSVC because it has weird behaviour for std::is_trivially_copyable.
 |  | ||||||
| #if (__GNUC__ >= 5) || defined(__clang__) |  | ||||||
| #define ASSERT_DSP_STRUCT(name, size)                                                              \ | #define ASSERT_DSP_STRUCT(name, size)                                                              \ | ||||||
|     static_assert(std::is_standard_layout<name>::value,                                            \ |     static_assert(std::is_standard_layout<name>::value,                                            \ | ||||||
|                   "DSP structure " #name " doesn't use standard layout");                          \ |                   "DSP structure " #name " doesn't use standard layout");                          \ | ||||||
|     static_assert(std::is_trivially_copyable<name>::value,                                         \ |     static_assert(std::is_trivially_copyable<name>::value,                                         \ | ||||||
|                   "DSP structure " #name " isn't trivially copyable");                             \ |                   "DSP structure " #name " isn't trivially copyable");                             \ | ||||||
|     static_assert(sizeof(name) == (size), "Unexpected struct size for DSP structure " #name) |     static_assert(sizeof(name) == (size), "Unexpected struct size for DSP structure " #name) | ||||||
| #else |  | ||||||
| #define ASSERT_DSP_STRUCT(name, size)                                                              \ |  | ||||||
|     static_assert(std::is_standard_layout<name>::value,                                            \ |  | ||||||
|                   "DSP structure " #name " doesn't use standard layout");                          \ |  | ||||||
|     static_assert(sizeof(name) == (size), "Unexpected struct size for DSP structure " #name) |  | ||||||
| #endif |  | ||||||
| 
 | 
 | ||||||
| struct SourceConfiguration { | struct SourceConfiguration { | ||||||
|     struct Configuration { |     struct Configuration { | ||||||
|  |  | ||||||
|  | @ -195,10 +195,8 @@ private: | ||||||
| }; | }; | ||||||
| #pragma pack() | #pragma pack() | ||||||
| 
 | 
 | ||||||
| #if (__GNUC__ >= 5) || defined(__clang__) || defined(_MSC_VER) |  | ||||||
| static_assert(std::is_trivially_copyable<BitField<0, 1, unsigned>>::value, | static_assert(std::is_trivially_copyable<BitField<0, 1, unsigned>>::value, | ||||||
|               "BitField must be trivially copyable"); |               "BitField must be trivially copyable"); | ||||||
| #endif |  | ||||||
| 
 | 
 | ||||||
| template <std::size_t Position, std::size_t Bits, typename T> | template <std::size_t Position, std::size_t Bits, typename T> | ||||||
| using BitFieldBE = BitField<Position, Bits, T, BETag>; | using BitFieldBE = BitField<Position, Bits, T, BETag>; | ||||||
|  |  | ||||||
|  | @ -30,8 +30,8 @@ | ||||||
| #include <cstring> | #include <cstring> | ||||||
| #include "common/common_types.h" | #include "common/common_types.h" | ||||||
| 
 | 
 | ||||||
| // GCC 4.6+
 | // GCC
 | ||||||
| #if __GNUC__ >= 5 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6) | #ifdef __GNUC__ | ||||||
| 
 | 
 | ||||||
| #if __BYTE_ORDER__ && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) && !defined(COMMON_LITTLE_ENDIAN) | #if __BYTE_ORDER__ && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) && !defined(COMMON_LITTLE_ENDIAN) | ||||||
| #define COMMON_LITTLE_ENDIAN 1 | #define COMMON_LITTLE_ENDIAN 1 | ||||||
|  | @ -40,7 +40,7 @@ | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| // LLVM/clang
 | // LLVM/clang
 | ||||||
| #elif __clang__ | #elif defined(__clang__) | ||||||
| 
 | 
 | ||||||
| #if __LITTLE_ENDIAN__ && !defined(COMMON_LITTLE_ENDIAN) | #if __LITTLE_ENDIAN__ && !defined(COMMON_LITTLE_ENDIAN) | ||||||
| #define COMMON_LITTLE_ENDIAN 1 | #define COMMON_LITTLE_ENDIAN 1 | ||||||
|  |  | ||||||
|  | @ -17,21 +17,12 @@ class Process; | ||||||
| 
 | 
 | ||||||
| namespace Service::LDR { | namespace Service::LDR { | ||||||
| 
 | 
 | ||||||
| // GCC versions < 5.0 do not implement std::is_trivially_copyable.
 |  | ||||||
| // Excluding MSVC because it has weird behaviour for std::is_trivially_copyable.
 |  | ||||||
| #if (__GNUC__ >= 5) || defined(__clang__) |  | ||||||
| #define ASSERT_CRO_STRUCT(name, size)                                                              \ | #define ASSERT_CRO_STRUCT(name, size)                                                              \ | ||||||
|     static_assert(std::is_standard_layout<name>::value,                                            \ |     static_assert(std::is_standard_layout<name>::value,                                            \ | ||||||
|                   "CRO structure " #name " doesn't use standard layout");                          \ |                   "CRO structure " #name " doesn't use standard layout");                          \ | ||||||
|     static_assert(std::is_trivially_copyable<name>::value,                                         \ |     static_assert(std::is_trivially_copyable<name>::value,                                         \ | ||||||
|                   "CRO structure " #name " isn't trivially copyable");                             \ |                   "CRO structure " #name " isn't trivially copyable");                             \ | ||||||
|     static_assert(sizeof(name) == (size), "Unexpected struct size for CRO structure " #name) |     static_assert(sizeof(name) == (size), "Unexpected struct size for CRO structure " #name) | ||||||
| #else |  | ||||||
| #define ASSERT_CRO_STRUCT(name, size)                                                              \ |  | ||||||
|     static_assert(std::is_standard_layout<name>::value,                                            \ |  | ||||||
|                   "CRO structure " #name " doesn't use standard layout");                          \ |  | ||||||
|     static_assert(sizeof(name) == (size), "Unexpected struct size for CRO structure " #name) |  | ||||||
| #endif |  | ||||||
| 
 | 
 | ||||||
| static constexpr u32 CRO_HEADER_SIZE = 0x138; | static constexpr u32 CRO_HEADER_SIZE = 0x138; | ||||||
| static constexpr u32 CRO_HASH_SIZE = 0x80; | static constexpr u32 CRO_HASH_SIZE = 0x80; | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue