Ryan Houdek
9498a41f9b
More ioctl32 emulation
...
More DRM and i915 things, then wireless for some reason renderdoc relies on it
2021-05-01 09:40:02 -07:00
Ryan Houdek
1340ffabe4
Workaround fixes in sendmsg/recvmsg
...
Rebased and cleaned up #933
Needs to be larger allocations than what was originally proposed by #933
2021-05-01 09:37:01 -07:00
Ryan Houdek
b5115e096f
Initial base implementation of sigtimedwait
2021-05-01 09:35:29 -07:00
Ryan Houdek
a8881e8835
Adds option to force 32-bit allocator
2021-05-01 09:19:55 -07:00
Ryan Houdek
a19c0184a6
Keep using the 32-bit allocator if the kernel is old
...
Works around the Xavier boards running kernel 4.9
2021-05-01 09:06:39 -07:00
Ryan Houdek
2d0dced9e7
Work around old asound headers
2021-05-01 09:06:39 -07:00
Ryan Houdek
52cb96d630
Work around old DRM headers for i915
2021-05-01 09:06:39 -07:00
Ryan Houdek
c83a5d1bc3
Allow some more clone flags through with info log
2021-05-01 09:06:39 -07:00
Ryan Houdek
c20777d558
Change these log messages so we know which one failed
2021-05-01 09:06:38 -07:00
Ryan Houdek
9a0fc4e7e8
Workaround quick with memory allocator. Aligned 4GB regions are hard to allocate
2021-05-01 07:39:14 -07:00
Ryan Houdek
237865e064
Adds ioctl verification to struct verifier
2021-05-01 07:39:14 -07:00
Ryan Houdek
45223cc7e7
Adds initial ioctl emulation code
2021-05-01 07:39:14 -07:00
Ryan Houdek
b6344c4753
Removes old 32-bit allocator usage
...
Replaces with using host side allocations since we always have a 64-bit allocator in this case
2021-05-01 07:39:14 -07:00
Ryan Houdek
5143100a73
Switches more usages of memory allocation routines over to FEX internal
2021-05-01 07:39:14 -07:00
Stefanos Kornilios Mitsis Poiitidis
ab44f800f7
AOTgen: Cleaner interfaces, use LogMan
2021-05-01 09:40:50 +03:00
Stefanos Kornilios Mitsis Poiitidis
4bd997adaa
AOT: Postfix ir files with .aotir
2021-05-01 09:40:50 +03:00
Stefanos Kornilios Mitsis Poiitidis
244ef94e9b
AOTIR: Generate list of files with code, add Scripts/FEXUpdateAOTIRCache.sh to generate all files
2021-05-01 09:40:50 +03:00
Stefanos Kornilios Mitsis Poiitidis
a85ef061d1
AOITR: Add AOTIRGenerate fo FEXLoader option that does generation
2021-05-01 09:40:50 +03:00
Stefanos Kornilios Mitsis Poiitidis
ce9324f50f
Kinda-parse unwind table
2021-05-01 09:40:49 +03:00
Stefanos Kornilios Mitsis Poiitidis
0897fc4a0a
pretrans wip
2021-05-01 09:40:49 +03:00
Ryan Houdek
73e61b0c8e
Switches default logging output to stderr
...
stdout is too likely to break something
2021-04-30 18:28:45 -07:00
Ryan Houdek
a30866a886
Merge pull request #976 from FEX-Emu/skmp/aotir-mmap
...
AOTIR: Switch over to mmap-based loading
2021-04-30 18:24:54 -07:00
Ryan Houdek
f6cc75de87
Fixes SDL2 interface check...again.
2021-04-30 01:55:08 -07:00
Stefanos Kornilios Mitsis Poiitidis
32b4b02302
AOTIR: mmap based loading
2021-04-28 13:08:43 +03:00
Stefanos Kornilios Mitsis Poiitidis
aae4de106a
Merge pull request #992 from Sonicadvance1/optimize_cpuid
...
Optimizes CPUID generation a bit
2021-04-28 09:12:09 +03:00
Ryan Houdek
b17464d81a
Oops: Missed line on FEXConfig SDL2
2021-04-27 16:51:12 -07:00
Ryan Houdek
34a5eb6d6f
Optimizes CPUID generation a bit
...
The flags calculation is fairly intensive and we were doing it for every core.
Do it once then duplicate it per core instead
Improves generation time quite significantly. A couple of milliseconds converted to half a millisecond
Slight improvement to startup time
2021-04-27 01:09:28 -07:00
Ryan Houdek
2a1a863c58
Only use SDL2 import target if it exists
...
Should fix Arch and Ubuntu 20.04 together
2021-04-27 00:45:20 -07:00
Ryan Houdek
04e0baadc6
Changes LogMan assert to defines
...
C++ no-op functions can't optimize out the predicate arguments in all cases.
This was causing a problem where zero cost assertions weren't actually zero cost.
The only way to resolve this is to actually use macros sadly enough.
This will give a fairly hefty performance uplift with anything operating on IR.
2021-04-26 13:49:35 -07:00
Stefanos Kornilios Mitsis Poiitidis
b45b7c3441
IR: Remove Entry from OP_HEADER, pass as parameter to CompileCode
2021-04-25 13:15:23 +03:00
Stefanos Kornilios Mitsis Poiitidis
6635765ea9
Merge pull request #972 from Sonicadvance1/naked_mman
...
Naked mman usage removal
2021-04-22 09:47:41 +03:00
Ryan Houdek
93ed411899
Fixes ELFCodeLoader2 loading relative ELF files
2021-04-20 01:58:37 -07:00
Stefanos Kornilios Mitsis Poiitidis
8260ddda13
Merge pull request #970 from Sonicadvance1/sdl2_target_imports
...
Use cmake SDL2 target properties
2021-04-19 00:02:59 +03:00
Ryan Houdek
5820c251e8
Fixes OpenAt breaking with anonymous objects
...
Fixes #753
2021-04-16 21:21:08 -07:00
Ryan Houdek
eff97509c0
Replaces naked mman usage in TestHarnessRunner
2021-04-16 21:01:59 -07:00
Ryan Houdek
3128d0c148
Replaces naked mman usage in SyscallHandler
2021-04-16 21:01:39 -07:00
Ryan Houdek
0216d7b552
Replaces naked mman usage in x86-64 syscalls
2021-04-16 21:01:07 -07:00
Ryan Houdek
87b473c7ee
Replaces naked mman usage in IRLoader
2021-04-16 21:00:51 -07:00
Ryan Houdek
f9d647c852
Replaces naked mman usage in HarnessHelpers
2021-04-16 21:00:19 -07:00
Ryan Houdek
2c175f1e0b
Replaces naked mman usage in FEXLoader
2021-04-16 21:00:01 -07:00
Ryan Houdek
96813b0d6c
Replaces naked mman usage in ELFCodeLoader
2021-04-16 20:59:27 -07:00
Ryan Houdek
e9aeebb3a1
Use cmake SDL2 target properties
...
Some distros include generated cmake files instead of the two cmake files from the source.
Distros that use the generated cmake files only have SDL import properties, so we are required
to use those.
2021-04-16 18:45:06 -07:00
Ryan Houdek
08bc7a8364
Merge pull request #967 from FEX-Emu/skmp/new-elf-loading
...
ELF: Simpler loader, uses mmap
2021-04-16 18:35:56 -07:00
Stefanos Kornilios Mitsis Poiitidis
13bfdcad06
Emulated Files: Don't precalculate /proc/pid path, it changes after fork
2021-04-15 15:33:10 +03:00
Stefanos Kornilios Mitsis Poiitidis
38a707b38e
Add missing functions to elfcodeloader2
2021-04-15 13:51:22 +03:00
Stefanos Kornilios Mitsis Poiitidis
ada7915b01
Convert an assert to log
2021-04-15 13:40:28 +03:00
Stefanos Kornilios Mitsis Poiitidis
9775a2148e
Fix rootfs interpreter loading
2021-04-15 12:16:33 +03:00
Stefanos Kornilios Mitsis Poiitidis
bc8696828b
More logging
2021-04-15 12:14:55 +03:00
Stefanos Kornilios Mitsis Poiitidis
7d792e65f0
Rootfs, assert fixes
2021-04-15 12:04:42 +03:00
Stefanos Kornilios Mitsis Poiitidis
14b5b881c5
Add more logging
2021-04-15 11:47:42 +03:00