Compare commits
2 Commits
main
...
fix-window
| Author | SHA1 | Date |
|---|---|---|
|
|
39da594aa7 | |
|
|
3d7c5504d7 |
|
|
@ -40,6 +40,11 @@ if (NOT (WIN32 OR LINUX OR APPLE))
|
||||||
message(FATAL_ERROR "only Windows, Linux, and macOS builds are supported")
|
message(FATAL_ERROR "only Windows, Linux, and macOS builds are supported")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(WIN32)
|
||||||
|
# Prevent Windows headers from defining min/max macros in all targets.
|
||||||
|
add_compile_definitions(NOMINMAX)
|
||||||
|
endif()
|
||||||
|
|
||||||
set(CMAKE_CXX_STANDARD 20)
|
set(CMAKE_CXX_STANDARD 20)
|
||||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
set(CMAKE_CXX_EXTENSIONS OFF)
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||||
|
|
|
||||||
|
|
@ -405,7 +405,7 @@ void CompileSrtWalker(ResourcePlan& program) {
|
||||||
if (reg < program.user_data_base ||
|
if (reg < program.user_data_base ||
|
||||||
RegIndex(high->Arg(0).ScalarRegister()) != reg + 1u) return;
|
RegIndex(high->Arg(0).ScalarRegister()) != reg + 1u) return;
|
||||||
const auto base = reg - program.user_data_base;
|
const auto base = reg - program.user_data_base;
|
||||||
user_data_count = std::max<uint32_t>(user_data_count, base + 2u);
|
user_data_count = std::max(user_data_count, base + 2u);
|
||||||
uses = &roots[base];
|
uses = &roots[base];
|
||||||
} else {
|
} else {
|
||||||
const auto lo = offsets.find(low);
|
const auto lo = offsets.find(low);
|
||||||
|
|
@ -794,7 +794,7 @@ bool SrtWalker::EvaluateInst(const Inst& inst, uint64_t& result) {
|
||||||
return false;
|
return false;
|
||||||
case ValueOpcode::UMin32:
|
case ValueOpcode::UMin32:
|
||||||
if (binary()) {
|
if (binary()) {
|
||||||
result = std::min<uint32_t>(static_cast<uint32_t>(a), static_cast<uint32_t>(b));
|
result = std::min(static_cast<uint32_t>(a), static_cast<uint32_t>(b));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@
|
||||||
#if KYTY_PLATFORM == KYTY_PLATFORM_WINDOWS
|
#if KYTY_PLATFORM == KYTY_PLATFORM_WINDOWS
|
||||||
#define WIN32_LEAN_AND_MEAN
|
#define WIN32_LEAN_AND_MEAN
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#elif KYTY_PLATFORM == KYTY_PLATFORM_LINUX
|
#elif defined(__linux__)
|
||||||
#include <linux/close_range.h>
|
#include <linux/close_range.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
@ -45,7 +45,7 @@ int LoadExec(const char* path, const char* const argv[]) {
|
||||||
!Common::File::IsFileExisting(Libs::LibKernel::FileSystem::GetRealFilename(path))) {
|
!Common::File::IsFileExisting(Libs::LibKernel::FileSystem::GetRealFilename(path))) {
|
||||||
return SYSTEM_SERVICE_ERROR_PARAMETER;
|
return SYSTEM_SERVICE_ERROR_PARAMETER;
|
||||||
}
|
}
|
||||||
#if KYTY_PLATFORM == KYTY_PLATFORM_WINDOWS || KYTY_PLATFORM == KYTY_PLATFORM_LINUX
|
#if KYTY_PLATFORM == KYTY_PLATFORM_WINDOWS || defined(__linux__)
|
||||||
std::vector<std::string> arguments {"--guest-exec", path};
|
std::vector<std::string> arguments {"--guest-exec", path};
|
||||||
size_t bytes = 0;
|
size_t bytes = 0;
|
||||||
for (size_t i = 0; argv != nullptr && argv[i] != nullptr; ++i) {
|
for (size_t i = 0; argv != nullptr && argv[i] != nullptr; ++i) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue