aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.Gpu
diff options
context:
space:
mode:
authormageven <62494521+mageven@users.noreply.github.com>2020-08-04 05:02:53 +0530
committerGitHub <noreply@github.com>2020-08-04 01:32:53 +0200
commita33dc2f4919f7fdc8ea9db41c4c70c38cedfd3df (patch)
treed3eee67f25c3a302fa23dc39670438e7ebbfd35c /Ryujinx.Graphics.Gpu
parent60db4c353099e8656a330ede03fdbe57a421fa47 (diff)
Improved Logger (#1292)
* Logger class changes only Now compile-time checking is possible with the help of Nullable Value types. * Misc formatting * Manual optimizations PrintGuestLog PrintGuestStackTrace Surfaceflinger DequeueBuffer * Reduce SendVibrationXX log level to Debug * Add Notice log level This level is always enabled and used to print system info, etc... Also, rewrite LogColor to switch expression as colors are static * Unify unhandled exception event handlers * Print enabled LogLevels during init * Re-add App Exit disposes in proper order nit: switch case spacing * Revert PrintGuestStackTrace to Info logs due to #1407 PrintGuestStackTrace is now called in some critical error handlers so revert to old behavior as KThread isn't part of Guest. * Batch replace Logger statements
Diffstat (limited to 'Ryujinx.Graphics.Gpu')
-rw-r--r--Ryujinx.Graphics.Gpu/Engine/MME/MacroInterpreter.cs2
-rw-r--r--Ryujinx.Graphics.Gpu/Engine/MME/MacroJitContext.cs2
-rw-r--r--Ryujinx.Graphics.Gpu/Engine/MethodConditionalRendering.cs2
-rw-r--r--Ryujinx.Graphics.Gpu/Engine/Methods.cs4
-rw-r--r--Ryujinx.Graphics.Gpu/Image/Texture.cs8
-rw-r--r--Ryujinx.Graphics.Gpu/Image/TexturePool.cs2
-rw-r--r--Ryujinx.Graphics.Gpu/Shader/GpuAccessor.cs2
-rw-r--r--Ryujinx.Graphics.Gpu/Synchronization/SynchronizationManager.cs2
8 files changed, 12 insertions, 12 deletions
diff --git a/Ryujinx.Graphics.Gpu/Engine/MME/MacroInterpreter.cs b/Ryujinx.Graphics.Gpu/Engine/MME/MacroInterpreter.cs
index a48b263a..9a834ca6 100644
--- a/Ryujinx.Graphics.Gpu/Engine/MME/MacroInterpreter.cs
+++ b/Ryujinx.Graphics.Gpu/Engine/MME/MacroInterpreter.cs
@@ -364,7 +364,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.MME
{
if (!Fifo.TryDequeue(out int value))
{
- Logger.PrintWarning(LogClass.Gpu, "Macro attempted to fetch an inexistent argument.");
+ Logger.Warning?.Print(LogClass.Gpu, "Macro attempted to fetch an inexistent argument.");
return 0;
}
diff --git a/Ryujinx.Graphics.Gpu/Engine/MME/MacroJitContext.cs b/Ryujinx.Graphics.Gpu/Engine/MME/MacroJitContext.cs
index ba4e66eb..ba426dc0 100644
--- a/Ryujinx.Graphics.Gpu/Engine/MME/MacroJitContext.cs
+++ b/Ryujinx.Graphics.Gpu/Engine/MME/MacroJitContext.cs
@@ -22,7 +22,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.MME
{
if (!Fifo.TryDequeue(out int value))
{
- Logger.PrintWarning(LogClass.Gpu, "Macro attempted to fetch an inexistent argument.");
+ Logger.Warning?.Print(LogClass.Gpu, "Macro attempted to fetch an inexistent argument.");
return 0;
}
diff --git a/Ryujinx.Graphics.Gpu/Engine/MethodConditionalRendering.cs b/Ryujinx.Graphics.Gpu/Engine/MethodConditionalRendering.cs
index 6bc1bef8..c508f3b6 100644
--- a/Ryujinx.Graphics.Gpu/Engine/MethodConditionalRendering.cs
+++ b/Ryujinx.Graphics.Gpu/Engine/MethodConditionalRendering.cs
@@ -37,7 +37,7 @@ namespace Ryujinx.Graphics.Gpu.Engine
return CounterCompare(condState.Address.Pack(), false);
}
- Logger.PrintWarning(LogClass.Gpu, $"Invalid conditional render condition \"{condState.Condition}\".");
+ Logger.Warning?.Print(LogClass.Gpu, $"Invalid conditional render condition \"{condState.Condition}\".");
return ConditionalRenderEnabled.True;
}
diff --git a/Ryujinx.Graphics.Gpu/Engine/Methods.cs b/Ryujinx.Graphics.Gpu/Engine/Methods.cs
index f8b6e43f..9497b045 100644
--- a/Ryujinx.Graphics.Gpu/Engine/Methods.cs
+++ b/Ryujinx.Graphics.Gpu/Engine/Methods.cs
@@ -692,7 +692,7 @@ namespace Ryujinx.Graphics.Gpu.Engine
if (!FormatTable.TryGetAttribFormat(vertexAttrib.UnpackFormat(), out Format format))
{
- Logger.PrintDebug(LogClass.Gpu, $"Invalid attribute format 0x{vertexAttrib.UnpackFormat():X}.");
+ Logger.Debug?.Print(LogClass.Gpu, $"Invalid attribute format 0x{vertexAttrib.UnpackFormat():X}.");
format = Format.R32G32B32A32Float;
}
@@ -1114,7 +1114,7 @@ namespace Ryujinx.Graphics.Gpu.Engine
return Target.CubemapArray;
}
- Logger.PrintWarning(LogClass.Gpu, $"Invalid sampler type \"{type}\".");
+ Logger.Warning?.Print(LogClass.Gpu, $"Invalid sampler type \"{type}\".");
return Target.Texture2D;
}
diff --git a/Ryujinx.Graphics.Gpu/Image/Texture.cs b/Ryujinx.Graphics.Gpu/Image/Texture.cs
index 2c4a3e4e..a312a8b7 100644
--- a/Ryujinx.Graphics.Gpu/Image/Texture.cs
+++ b/Ryujinx.Graphics.Gpu/Image/Texture.cs
@@ -414,7 +414,7 @@ namespace Ryujinx.Graphics.Gpu.Image
if (ScaleFactor != scale)
{
- Logger.PrintDebug(LogClass.Gpu, $"Rescaling {Info.Width}x{Info.Height} {Info.FormatInfo.Format.ToString()} to ({ScaleFactor} to {scale}). ");
+ Logger.Debug?.Print(LogClass.Gpu, $"Rescaling {Info.Width}x{Info.Height} {Info.FormatInfo.Format.ToString()} to ({ScaleFactor} to {scale}). ");
TextureCreateInfo createInfo = TextureManager.GetCreateInfo(Info, _context.Capabilities);
ScaleFactor = scale;
@@ -430,7 +430,7 @@ namespace Ryujinx.Graphics.Gpu.Image
HostTexture.CopyTo(newStorage, new Extents2D(0, 0, HostTexture.Width, HostTexture.Height), new Extents2D(0, 0, newStorage.Width, newStorage.Height), true);
}
- Logger.PrintDebug(LogClass.Gpu, $" Copy performed: {HostTexture.Width}x{HostTexture.Height} to {newStorage.Width}x{newStorage.Height}");
+ Logger.Debug?.Print(LogClass.Gpu, $" Copy performed: {HostTexture.Width}x{HostTexture.Height} to {newStorage.Width}x{newStorage.Height}");
ReplaceStorage(newStorage);
@@ -438,7 +438,7 @@ namespace Ryujinx.Graphics.Gpu.Image
foreach (var view in _views)
{
- Logger.PrintDebug(LogClass.Gpu, $" Recreating view {Info.Width}x{Info.Height} {Info.FormatInfo.Format.ToString()}.");
+ Logger.Debug?.Print(LogClass.Gpu, $" Recreating view {Info.Width}x{Info.Height} {Info.FormatInfo.Format.ToString()}.");
view.ScaleFactor = scale;
TextureCreateInfo viewCreateInfo = TextureManager.GetCreateInfo(view.Info, _context.Capabilities);
@@ -590,7 +590,7 @@ namespace Ryujinx.Graphics.Gpu.Image
{
string texInfo = $"{Info.Target} {Info.FormatInfo.Format} {Info.Width}x{Info.Height}x{Info.DepthOrLayers} levels {Info.Levels}";
- Logger.PrintDebug(LogClass.Gpu, $"Invalid ASTC texture at 0x{Info.Address:X} ({texInfo}).");
+ Logger.Debug?.Print(LogClass.Gpu, $"Invalid ASTC texture at 0x{Info.Address:X} ({texInfo}).");
}
data = decoded;
diff --git a/Ryujinx.Graphics.Gpu/Image/TexturePool.cs b/Ryujinx.Graphics.Gpu/Image/TexturePool.cs
index c35c3aeb..4fd51988 100644
--- a/Ryujinx.Graphics.Gpu/Image/TexturePool.cs
+++ b/Ryujinx.Graphics.Gpu/Image/TexturePool.cs
@@ -151,7 +151,7 @@ namespace Ryujinx.Graphics.Gpu.Image
{
if ((long)address > 0L && (int)format > 0)
{
- Logger.PrintError(LogClass.Gpu, $"Invalid texture format 0x{format:X} (sRGB: {srgb}).");
+ Logger.Error?.Print(LogClass.Gpu, $"Invalid texture format 0x{format:X} (sRGB: {srgb}).");
}
formatInfo = FormatInfo.Default;
diff --git a/Ryujinx.Graphics.Gpu/Shader/GpuAccessor.cs b/Ryujinx.Graphics.Gpu/Shader/GpuAccessor.cs
index 7c712a0f..03d8d196 100644
--- a/Ryujinx.Graphics.Gpu/Shader/GpuAccessor.cs
+++ b/Ryujinx.Graphics.Gpu/Shader/GpuAccessor.cs
@@ -70,7 +70,7 @@ namespace Ryujinx.Graphics.Gpu.Shader
/// <param name="message">Message to print</param>
public void Log(string message)
{
- Logger.PrintWarning(LogClass.Gpu, $"Shader translator: {message}");
+ Logger.Warning?.Print(LogClass.Gpu, $"Shader translator: {message}");
}
/// <summary>
diff --git a/Ryujinx.Graphics.Gpu/Synchronization/SynchronizationManager.cs b/Ryujinx.Graphics.Gpu/Synchronization/SynchronizationManager.cs
index 494b0c03..d246f474 100644
--- a/Ryujinx.Graphics.Gpu/Synchronization/SynchronizationManager.cs
+++ b/Ryujinx.Graphics.Gpu/Synchronization/SynchronizationManager.cs
@@ -131,7 +131,7 @@ namespace Ryujinx.Graphics.Gpu.Synchronization
if (!signaled && info != null)
{
- Logger.PrintError(LogClass.Gpu, $"Wait on syncpoint {id} for threshold {threshold} took more than {timeout.TotalMilliseconds}ms, resuming execution...");
+ Logger.Error?.Print(LogClass.Gpu, $"Wait on syncpoint {id} for threshold {threshold} took more than {timeout.TotalMilliseconds}ms, resuming execution...");
_syncpoints[id].UnregisterCallback(info);
}