rpcs3/Utilities
Jan Beich dd5791a2cc Fixes from FreeBSD package (#3765)
* Thread: unbreak on BSDs after dbc9bdfe02

Utilities/Thread.cpp:1920:2: error: unknown type name 'cpu_set_t'; did you mean 'cpusetid_t'?
        cpu_set_t cs;
        ^~~~~~~~~
        cpusetid_t
/usr/include/sys/types.h:84:22: note: 'cpusetid_t' declared here
typedef __cpusetid_t    cpusetid_t;
                        ^
Utilities/Thread.cpp:1921:2: error: use of undeclared identifier 'CPU_ZERO'
        CPU_ZERO(&cs);
        ^
Utilities/Thread.cpp:1922:2: error: use of undeclared identifier 'CPU_SET'
        CPU_SET(core, &cs);
        ^
Utilities/Thread.cpp:1923:48: error: unknown type name 'cpu_set_t'; did you mean 'cpusetid_t'?
        pthread_setaffinity_np(pthread_self(), sizeof(cpu_set_t), &cs);
                                                      ^~~~~~~~~
                                                      cpusetid_t

* JIT: use MAP_32BIT on Linux and FreeBSD

Unless RLIMIT_DATA is low enough FreeBSD by default reserves lower 2Gb
for brk(2) style heap, ignoring mmap(2) address hint requested by RPCS3.
Passing MAP_32BIT fixes the following crash

Assertion failed: ((Type == ELF::R_X86_64_32 && (Value <= UINT32_MAX)) || (Type == ELF::R_X86_64_32S && ((int64_t)Value <= INT32_MAX && (int64_t)Value >= INT32_MIN))), function resolveX86_64Relocation, file /usr/ports/devel/llvm40/work/llvm-4.0.1.src/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp, line 287.

* build: unbreak -DVULKAN_PREBUILT with system glslang on Unix

rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:4:10: fatal error: '../../../../Vulkan/glslang/SPIRV/GlslangToSpv.h' file not found
 #include "../../../../Vulkan/glslang/SPIRV/GlslangToSpv.h"
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

rpcs3/CMakeFiles/rpcs3.dir/Emu/RSX/VK/VKCommonDecompiler.cpp.o: In function `vk::compile_glsl_to_spv(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, glsl::program_domain, std::__1::vector<unsigned int, std::__1::allocator<unsigned int> >&)':
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x50e): undefined reference to `glslang::TProgram::TProgram()'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x51d): undefined reference to `glslang::TShader::TShader(EShLanguage)'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x542): undefined reference to `glslang::TShader::setStrings(char const* const*, int)'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x581): undefined reference to `glslang::TShader::parse(TBuiltInResource const*, int, EProfile, bool, bool, EShMessages, glslang::TShader::Includer&)'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x5d6): undefined reference to `glslang::TProgram::link(EShMessages)'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x5f1): undefined reference to `glslang::GlslangToSpv(glslang::TIntermediate const&, std::__1::vector<unsigned int, std::__1::allocator<unsigned int> >&, glslang::SpvOptions*)'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x5ff): undefined reference to `glslang::TShader::getInfoLog()'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x61a): undefined reference to `glslang::TShader::getInfoDebugLog()'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x630): undefined reference to `glslang::TShader::~TShader()'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x63c): undefined reference to `glslang::TProgram::~TProgram()'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x6d2): undefined reference to `glslang::TShader::~TShader()'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x6de): undefined reference to `glslang::TProgram::~TProgram()'
rpcs3/CMakeFiles/rpcs3.dir/Emu/RSX/VK/VKCommonDecompiler.cpp.o: In function `vk::initialize_compiler_context()':
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x6f5): undefined reference to `glslang::InitializeProcess()'
rpcs3/CMakeFiles/rpcs3.dir/Emu/RSX/VK/VKCommonDecompiler.cpp.o: In function `vk::finalize_compiler_context()':
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x856): undefined reference to `glslang::FinalizeProcess()'

* build/msvc: add missing glslang include directory after 6bb3f1b4d7

"c:\projects\rpcs3\rpcs3\VKGSRender.vcxproj" (default target) (15) ->
(ClCompile target) ->
  Emu\RSX\VK\VKCommonDecompiler.cpp(4): fatal error C1083: Cannot open include file: 'SPIRV/GlslangToSpv.h': No such file or directory [c:\projects\rpcs3\rpcs3\VKGSRender.vcxproj]
2017-11-21 01:56:25 +04:00
..
yaml-cpp@017626a6ce Update yaml-cpp 2017-05-11 19:19:10 +03:00
Atomic.h 16b atomic load fix 2017-02-05 15:49:51 +03:00
AtomicPtr.h
BEType.h offset32(): pointer-to-member arithmetic 2017-04-20 00:17:16 +03:00
bin_patch.cpp Patch: new 'load' syntax 2017-09-19 15:07:07 +03:00
bin_patch.h Patch: new 'load' syntax 2017-09-19 15:07:07 +03:00
bit_set.h
BitField.h bf_t: fix warning 2017-07-04 02:04:22 +03:00
cfmt.h cfmt improved 2017-05-19 01:13:23 +03:00
cond.cpp Fix cond_variable timeout 2017-11-18 10:24:17 +03:00
cond.h Fix cond_variable timeout 2017-11-18 10:24:17 +03:00
Config.cpp Add <typeinfo> 2017-09-19 15:07:07 +03:00
Config.h CFG: provide _int range in to_list() 2017-08-04 14:33:53 +03:00
CRC.h ds4: use controller calibration values for accel/gyro 2017-05-21 18:07:43 +03:00
dynamic_library.cpp Compilation fix (mingw) 2017-03-05 19:00:08 +03:00
dynamic_library.h util::dynamic_import 2017-01-25 00:38:07 +03:00
event.h Minor changes 2017-02-07 16:37:30 +03:00
File.cpp Handle Win32 error 87 ERROR_INVALID_PARAMETER with fs::error::inval 2017-11-20 17:55:41 +03:00
File.h Fix fs::dir (const begin/end) 2017-11-15 21:00:02 +03:00
GDBDebugServer.cpp Configuration simplified 2017-05-20 16:01:48 +03:00
GDBDebugServer.h Gdb debug server (#2542) 2017-04-02 21:10:06 +03:00
geometry.h rsx/gl: Implement resolution scaling 2017-10-09 20:25:41 +03:00
git-version-gen.cmd Fixes commit count on GIT-VERSION 2017-11-12 18:13:22 +00:00
GSL.h
hash.h rsx/util: Add simple consistent hash function 2017-08-16 23:58:30 +03:00
Interval.h
JIT.cpp Fixes from FreeBSD package (#3765) 2017-11-21 01:56:25 +04:00
JIT.h PPU LLVM: simplify module loading 2017-07-17 16:49:46 +03:00
lockless.h lf_spsc, lf_mpsc added 2017-02-22 12:57:08 +03:00
Log.cpp Remove unnecessary include git-version.h 2017-09-20 14:26:42 +03:00
Log.h config.yml: Log section optimized 2017-05-15 14:37:05 +03:00
LUrlParser.cpp Add cross-platform implementation of cellHttpUtilParseUri 2017-09-04 00:37:36 +03:00
LUrlParser.h Add cross-platform implementation of cellHttpUtilParseUri 2017-09-04 00:37:36 +03:00
mutex.cpp mutex.cpp: minor update 2017-10-05 19:51:37 +03:00
mutex.h mutex.cpp: minor update 2017-10-05 19:51:37 +03:00
recursive_wrapper.hpp Add variant.hpp from mapbox 2016-08-24 21:58:59 +02:00
rXml.cpp Fix rXml limitation 2017-09-04 02:15:28 +03:00
rXml.h Fix rXml limitation 2017-09-04 02:15:28 +03:00
sema.cpp Busy waiting added 2017-02-16 00:13:55 +03:00
sema.h Busy waiting added 2017-02-16 00:13:55 +03:00
StrFmt.cpp Code review (#3114) 2017-08-01 20:22:33 +03:00
StrFmt.h Minor StrFmt fix 2017-05-15 14:37:05 +03:00
StrUtil.h
sync.h util::dynamic_import 2017-01-25 00:38:07 +03:00
sysinfo.cpp Optimize cpuid 2017-11-15 21:00:02 +03:00
sysinfo.h Optimize cpuid 2017-11-15 21:00:02 +03:00
Thread.cpp Fixes from FreeBSD package (#3765) 2017-11-21 01:56:25 +04:00
Thread.h PPU LLVM: multithread compilation 2017-06-24 19:12:19 +03:00
Timer.h replace high_resolution_clock 2017-01-29 19:52:19 +03:00
types.h ppu_acontext draft 2017-10-28 23:24:08 +03:00
variant.hpp Minor changes 2017-01-25 04:43:12 +03:00
version.cpp
version.h
VirtualMemory.cpp Add PPU instruction stat dumper 2017-10-11 20:06:33 +03:00
VirtualMemory.h utils::memory update 2017-03-21 20:16:41 +03:00
yaml-cpp.vcxproj Update yaml-cpp 2017-05-11 19:19:10 +03:00
yaml-cpp.vcxproj.filters Update yaml-cpp 2017-05-11 19:19:10 +03:00