40 lines
932 B
C++
40 lines
932 B
C++
// SPDX-FileCopyrightText: Copyright 2024 shadPS4 Emulator Project
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
#pragma once
|
|
|
|
#include <array>
|
|
#include <cstdint>
|
|
|
|
using s8 = std::int8_t;
|
|
using s16 = std::int16_t;
|
|
using s32 = std::int32_t;
|
|
using s64 = std::int64_t;
|
|
|
|
using u8 = std::uint8_t;
|
|
using u16 = std::uint16_t;
|
|
using u32 = std::uint32_t;
|
|
using u64 = std::uint64_t;
|
|
|
|
using f32 = float;
|
|
using f64 = double;
|
|
|
|
using u128 = std::array<std::uint64_t, 2>;
|
|
static_assert(sizeof(u128) == 16, "u128 must be 128 bits wide");
|
|
|
|
using VAddr = uintptr_t;
|
|
using PAddr = uintptr_t;
|
|
|
|
#define PS4_SYSV_ABI __attribute__((sysv_abi))
|
|
|
|
// UDLs for memory size values
|
|
constexpr unsigned long long operator""_KB(unsigned long long x) {
|
|
return 1024ULL * x;
|
|
}
|
|
constexpr unsigned long long operator""_MB(unsigned long long x) {
|
|
return 1024_KB * x;
|
|
}
|
|
constexpr unsigned long long operator""_GB(unsigned long long x) {
|
|
return 1024_MB * x;
|
|
}
|