summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Fernando Sahmkow2019-11-16 14:23:15 -0400
committerGravatar GitHub2019-11-16 14:23:15 -0400
commit67a8bd1e701e9da6ec47d877b2e21b2e86d1603b (patch)
treeddfd5d15ff0a055cdd4b4aa5df85c0b2bfc56713 /src
parentMerge pull request #3106 from lioncash/bitfield (diff)
parentRevert "common/bit_field: Silence sign-conversion warnings" (diff)
downloadyuzu-67a8bd1e701e9da6ec47d877b2e21b2e86d1603b.tar.gz
yuzu-67a8bd1e701e9da6ec47d877b2e21b2e86d1603b.tar.xz
yuzu-67a8bd1e701e9da6ec47d877b2e21b2e86d1603b.zip
Merge pull request #3126 from yuzu-emu/revert-3106-bitfield
Revert "common/bit_field: Silence sign-conversion warnings"
Diffstat (limited to 'src')
-rw-r--r--src/common/bit_field.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/common/bit_field.h b/src/common/bit_field.h
index 2dbe37839..fd2bbbd99 100644
--- a/src/common/bit_field.h
+++ b/src/common/bit_field.h
@@ -135,8 +135,7 @@ public:
135 /// Constants to allow limited introspection of fields if needed 135 /// Constants to allow limited introspection of fields if needed
136 static constexpr std::size_t position = Position; 136 static constexpr std::size_t position = Position;
137 static constexpr std::size_t bits = Bits; 137 static constexpr std::size_t bits = Bits;
138 static constexpr StorageType mask = StorageType( 138 static constexpr StorageType mask = (((StorageType)~0) >> (8 * sizeof(T) - bits)) << position;
139 (std::numeric_limits<StorageType>::max() >> (8 * sizeof(T) - bits)) << position);
140 139
141 /** 140 /**
142 * Formats a value by masking and shifting it according to the field parameters. A value 141 * Formats a value by masking and shifting it according to the field parameters. A value
@@ -144,7 +143,7 @@ public:
144 * the results together. 143 * the results together.
145 */ 144 */
146 static constexpr FORCE_INLINE StorageType FormatValue(const T& value) { 145 static constexpr FORCE_INLINE StorageType FormatValue(const T& value) {
147 return (static_cast<StorageType>(value) << position) & mask; 146 return ((StorageType)value << position) & mask;
148 } 147 }
149 148
150 /** 149 /**