Browse Source
Merge pull request #4891 from lioncash/clang2
General: Fix clang build
pull/15/merge
bunnei
5 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with
14 additions and
7 deletions
-
src/common/fiber.h
-
src/common/spin_lock.h
-
src/video_core/dma_pusher.h
-
src/video_core/gpu.h
|
|
|
@ -41,8 +41,8 @@ public: |
|
|
|
Fiber(const Fiber&) = delete; |
|
|
|
Fiber& operator=(const Fiber&) = delete; |
|
|
|
|
|
|
|
Fiber(Fiber&&) = default; |
|
|
|
Fiber& operator=(Fiber&&) = default; |
|
|
|
Fiber(Fiber&&) = delete; |
|
|
|
Fiber& operator=(Fiber&&) = delete; |
|
|
|
|
|
|
|
/// Yields control from Fiber 'from' to Fiber 'to' |
|
|
|
/// Fiber 'from' must be the currently running fiber. |
|
|
|
|
|
|
|
@ -15,6 +15,14 @@ namespace Common { |
|
|
|
*/ |
|
|
|
class SpinLock { |
|
|
|
public: |
|
|
|
SpinLock() = default; |
|
|
|
|
|
|
|
SpinLock(const SpinLock&) = delete; |
|
|
|
SpinLock& operator=(const SpinLock&) = delete; |
|
|
|
|
|
|
|
SpinLock(SpinLock&&) = delete; |
|
|
|
SpinLock& operator=(SpinLock&&) = delete; |
|
|
|
|
|
|
|
void lock(); |
|
|
|
void unlock(); |
|
|
|
[[nodiscard]] bool try_lock(); |
|
|
|
|
|
|
|
@ -18,6 +18,8 @@ class System; |
|
|
|
|
|
|
|
namespace Tegra { |
|
|
|
|
|
|
|
class GPU; |
|
|
|
|
|
|
|
enum class SubmissionMode : u32 { |
|
|
|
IncreasingOld = 0, |
|
|
|
Increasing = 1, |
|
|
|
@ -74,8 +76,7 @@ union CommandHeader { |
|
|
|
static_assert(std::is_standard_layout_v<CommandHeader>, "CommandHeader is not standard layout"); |
|
|
|
static_assert(sizeof(CommandHeader) == sizeof(u32), "CommandHeader has incorrect size!"); |
|
|
|
|
|
|
|
static constexpr CommandHeader BuildCommandHeader(BufferMethods method, u32 arg_count, |
|
|
|
SubmissionMode mode) { |
|
|
|
inline CommandHeader BuildCommandHeader(BufferMethods method, u32 arg_count, SubmissionMode mode) { |
|
|
|
CommandHeader result{}; |
|
|
|
result.method.Assign(static_cast<u32>(method)); |
|
|
|
result.arg_count.Assign(arg_count); |
|
|
|
@ -83,8 +84,6 @@ static constexpr CommandHeader BuildCommandHeader(BufferMethods method, u32 arg_ |
|
|
|
return result; |
|
|
|
} |
|
|
|
|
|
|
|
class GPU; |
|
|
|
|
|
|
|
struct CommandList final { |
|
|
|
CommandList() = default; |
|
|
|
explicit CommandList(std::size_t size) : command_lists(size) {} |
|
|
|
|
|
|
|
@ -273,7 +273,7 @@ public: |
|
|
|
BitField<0, 1, FenceOperation> op; |
|
|
|
BitField<8, 24, u32> syncpoint_id; |
|
|
|
|
|
|
|
static constexpr CommandHeader Build(FenceOperation op, u32 syncpoint_id) { |
|
|
|
static CommandHeader Build(FenceOperation op, u32 syncpoint_id) { |
|
|
|
FenceAction result{}; |
|
|
|
result.op.Assign(op); |
|
|
|
result.syncpoint_id.Assign(syncpoint_id); |
|
|
|
|