diff --git a/rpcs3/Emu/CMakeLists.txt b/rpcs3/Emu/CMakeLists.txt index 9b76530d63..a5ce5df1b5 100644 --- a/rpcs3/Emu/CMakeLists.txt +++ b/rpcs3/Emu/CMakeLists.txt @@ -25,7 +25,9 @@ target_link_libraries(rpcs3_emu 3rdparty::pugixml 3rdparty::gsl) -set_source_files_properties("../../Utilities/JIT.cpp" PROPERTIES COMPILE_FLAGS -fno-rtti) +if (NOT MSVC) + set_source_files_properties("../../Utilities/JIT.cpp" PROPERTIES COMPILE_FLAGS -fno-rtti) +endif() # Crypto diff --git a/rpcs3/Emu/RSX/D3D12/D3D12FragmentProgramDecompiler.h b/rpcs3/Emu/RSX/D3D12/D3D12FragmentProgramDecompiler.h index 113866b4b5..6e6c07c716 100644 --- a/rpcs3/Emu/RSX/D3D12/D3D12FragmentProgramDecompiler.h +++ b/rpcs3/Emu/RSX/D3D12/D3D12FragmentProgramDecompiler.h @@ -10,8 +10,7 @@ class D3D12FragmentDecompiler : public FragmentProgramDecompiler protected: virtual std::string getFloatTypeName(size_t elementCount) override; virtual std::string getHalfTypeName(size_t elementCount) override; - virtual std::string getFunction(enum class FUNCTION) override; - virtual std::string saturate(const std::string &code) override; + virtual std::string getFunction(enum FUNCTION) override; virtual std::string compareFunction(enum COMPARE, const std::string &, const std::string &) override; virtual void insertHeader(std::stringstream &OS) override; diff --git a/rpcs3/Emu/RSX/GL/GLProgramBuffer.h b/rpcs3/Emu/RSX/GL/GLProgramBuffer.h index 3eb2743d56..166a631c81 100644 --- a/rpcs3/Emu/RSX/GL/GLProgramBuffer.h +++ b/rpcs3/Emu/RSX/GL/GLProgramBuffer.h @@ -2,8 +2,8 @@ #include "GLVertexProgram.h" #include "GLFragmentProgram.h" #include "GLHelpers.h" -#include "../RSXThread.h" #include "../Common/ProgramStateCache.h" +#include "../rsx_utils.h" struct GLTraits { diff --git a/rpcs3/Emu/RSX/RSXThread.h b/rpcs3/Emu/RSX/RSXThread.h index 6eeb6f0f73..e0556c6cea 100644 --- a/rpcs3/Emu/RSX/RSXThread.h +++ b/rpcs3/Emu/RSX/RSXThread.h @@ -1,4 +1,4 @@ -#pragma once +#pragma once #include #include @@ -57,34 +57,6 @@ extern RSXIOTable RSXIOMem; namespace rsx { - namespace limits - { - enum - { - fragment_textures_count = 16, - vertex_textures_count = 4, - vertex_count = 16, - fragment_count = 32, - tiles_count = 15, - zculls_count = 8, - color_buffers_count = 4 - }; - } - - namespace constants - { - static std::array fragment_texture_names = - { - "tex0", "tex1", "tex2", "tex3", "tex4", "tex5", "tex6", "tex7", - "tex8", "tex9", "tex10", "tex11", "tex12", "tex13", "tex14", "tex15", - }; - - static std::array vertex_texture_names = - { - "vtex0", "vtex1", "vtex2", "vtex3", - }; - } - enum framebuffer_creation_context : u8 { context_draw = 0, diff --git a/rpcs3/Emu/RSX/rsx_utils.h b/rpcs3/Emu/RSX/rsx_utils.h index b5c1bada44..0322e8db40 100644 --- a/rpcs3/Emu/RSX/rsx_utils.h +++ b/rpcs3/Emu/RSX/rsx_utils.h @@ -1,4 +1,4 @@ -#pragma once +#pragma once #include "../System.h" #include "Utilities/address_range.h" @@ -72,9 +72,37 @@ namespace rsx } }; + namespace limits + { + enum + { + fragment_textures_count = 16, + vertex_textures_count = 4, + vertex_count = 16, + fragment_count = 32, + tiles_count = 15, + zculls_count = 8, + color_buffers_count = 4 + }; + } + + namespace constants + { + static std::array fragment_texture_names = + { + "tex0", "tex1", "tex2", "tex3", "tex4", "tex5", "tex6", "tex7", + "tex8", "tex9", "tex10", "tex11", "tex12", "tex13", "tex14", "tex15", + }; + + static std::array vertex_texture_names = + { + "vtex0", "vtex1", "vtex2", "vtex3", + }; + } + /** - * Holds information about a framebuffer - */ + * Holds information about a framebuffer + */ struct gcm_framebuffer_info { u32 address = 0;