summaryrefslogtreecommitdiffstats
path: root/src/core/hle
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2019-02-27 00:04:45 +0100
committerLioncash <mathew1800@gmail.com>2019-02-27 00:10:36 +0100
commit254b1e3df731dd47f73b9a0267bfb6b9858fd849 (patch)
tree99b87783cfd0ed269d0b2a9e2cc95c2349633b79 /src/core/hle
parentservice/vi: Remove use of a module class (diff)
downloadyuzu-254b1e3df731dd47f73b9a0267bfb6b9858fd849.tar
yuzu-254b1e3df731dd47f73b9a0267bfb6b9858fd849.tar.gz
yuzu-254b1e3df731dd47f73b9a0267bfb6b9858fd849.tar.bz2
yuzu-254b1e3df731dd47f73b9a0267bfb6b9858fd849.tar.lz
yuzu-254b1e3df731dd47f73b9a0267bfb6b9858fd849.tar.xz
yuzu-254b1e3df731dd47f73b9a0267bfb6b9858fd849.tar.zst
yuzu-254b1e3df731dd47f73b9a0267bfb6b9858fd849.zip
Diffstat (limited to 'src/core/hle')
-rw-r--r--src/core/hle/ipc_helpers.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/core/hle/ipc_helpers.h b/src/core/hle/ipc_helpers.h
index 90f276ee8..d0721074d 100644
--- a/src/core/hle/ipc_helpers.h
+++ b/src/core/hle/ipc_helpers.h
@@ -362,6 +362,11 @@ inline u32 RequestParser::Pop() {
return cmdbuf[index++];
}
+template <>
+inline s32 RequestParser::Pop() {
+ return static_cast<s32>(Pop<u32>());
+}
+
template <typename T>
void RequestParser::PopRaw(T& value) {
std::memcpy(&value, cmdbuf + index, sizeof(T));
@@ -393,6 +398,16 @@ inline u64 RequestParser::Pop() {
}
template <>
+inline s8 RequestParser::Pop() {
+ return static_cast<s8>(Pop<u8>());
+}
+
+template <>
+inline s16 RequestParser::Pop() {
+ return static_cast<s16>(Pop<u16>());
+}
+
+template <>
inline s64 RequestParser::Pop() {
return static_cast<s64>(Pop<u64>());
}