Ryan Houdek
439d49b802
Merge pull request #550 from FEX-Emu/skmp/improve-dead-flags
...
DFSE: Fix dead clag calculation, Extend InvalidateFlags
2020-12-03 20:18:43 -08:00
Ryan Houdek
c7c2e56ae5
Merge pull request #552 from FEX-Emu/skmp/perblock-debug-data
...
JITSYMS: Per-block symbol information
2020-12-03 20:13:34 -08:00
Ryan Houdek
91ee753cae
Merge pull request #553 from FEX-Emu/skmp/mul-to-lshl
...
ConstProp: Mul x,#powof2 -> Lshl x,ctz(#powof2)
2020-12-03 20:10:13 -08:00
Ryan Houdek
4187123b49
Merge pull request #551 from FEX-Emu/skmp/arm64-backend-opts
...
arm64: Backend Opts
2020-12-03 20:08:53 -08:00
Ryan Houdek
eb57f5f489
Merge pull request #547 from FEX-Emu/skmp/optimize-flag-access
...
IR: Move BFEs to SetFlag, remove from OP_STOREFLAG
2020-12-03 20:07:53 -08:00
Ryan Houdek
12237abf67
Merge pull request #543 from FEX-Emu/skmp/frontend-improve-ss-sd
...
frontend: Improve IR for some *SS/*SD opcodes
2020-12-03 20:06:47 -08:00
Ryan Houdek
d3201ff498
Merge pull request #546 from FEX-Emu/skmp/sfbe-sext-switcheroo
...
IR: Replace Sext with Sbfe
2020-12-03 15:03:19 -08:00
Stefanos Kornilios Mitsis Poiitidis
0024b7bd46
RA: Fix global value range expansion
2020-12-03 20:19:00 +02:00
Stefanos Kornilios Mitsis Poiitidis
b2d862a8c7
IR: Replace Sext with Sbfe
2020-12-03 20:08:08 +02:00
Stefanos Kornilios Mitsis Poiitidis
46fb0503f0
ConstProp: Mul x,#powof2 -> Lshl x,clz(#powof2)
2020-12-03 19:06:14 +02:00
Stefanos Kornilios Mitsis Poiitidis
bc5b235b7c
CompileService: Fix DebugData
2020-12-03 18:58:58 +02:00
Stefanos Kornilios Mitsis Poiitidis
28bff432e5
DebugData: Add Subblock list, populate it from arm64 backend
2020-12-03 18:43:38 +02:00
Stefanos Kornilios Mitsis Poiitidis
12fcd5c2c7
arm64: Avoid needless movs in OP_VMOV
2020-12-03 18:41:51 +02:00
Stefanos Kornilios Mitsis Poiitidis
27e2c4fbfd
arm64: Optimize VIns* to only use temp reg if it must
2020-12-03 18:41:44 +02:00
Stefanos Kornilios Mitsis Poiitidis
d7316fe2d0
OpDisp, IR: Extend InvalidateFlags to invalidate a bitfield, invalidate PF when not emulated
2020-12-03 18:38:16 +02:00
Stefanos Kornilios Mitsis Poiitidis
4a9718c8e8
DFSE: Use uint64_t for flag bitmask, we use up to bit 47 w/ x87 flags
2020-12-03 18:38:08 +02:00
Stefanos Kornilios Mitsis Poiitidis
55f8e64068
IR: Move BFEs to SetFlag, remove from OP_STOREFLAG
2020-12-03 18:05:53 +02:00
Stefanos Kornilios Mitsis Poiitidis
de6eee510e
x86tables: Mark some SD sse opcodes as 64-bit to reduce overhead
2020-12-03 17:31:58 +02:00
Stefanos Kornilios Mitsis Poiitidis
f0e2d9364f
OpDisp: Avoid some pointless vinserts
2020-12-03 17:31:51 +02:00
Stefanos Kornilios Mitsis Poiitidis
d481bd4ffc
Merge pull request #541 from Sonicadvance1/remove_sonicutils
...
Moves SonicUtils in to FEXCore
2020-12-03 16:54:56 +02:00
Stefanos Kornilios Mitsis Poiitidis
7c40083106
Merge pull request #539 from Sonicadvance1/more_64bit_syscall_movement
...
Moves 64bit sigaltstack and execve to 64bit files
2020-12-03 16:51:38 +02:00
Ryan Houdek
a28df9f5c1
Moves SonicUtils in to FEXCore
...
Removes the extraneous and dead VM CPU backend
2020-11-29 00:30:28 -08:00
Ryan Houdek
638201254a
Moves 64bit sigaltstack and execve to 64bit files
...
These need specific 32bit handling
2020-11-27 20:33:23 -08:00
Ryan Houdek
94b034db6c
Moves shmat to 64bit memory specific file
...
This removes the bad attempt to keep shm regions in our 64GB shm region
This will need to be handled specially on the 32bit side through its
memory management once we have that wired up
2020-11-27 00:32:25 -08:00
Ryan Houdek
e23ae78795
Merge pull request #537 from Sonicadvance1/move_memory_x64
...
Moves some memory op implementations to x64 file
2020-11-27 00:20:10 -08:00
Ryan Houdek
55129bed41
Merge pull request #536 from Sonicadvance1/move_getdents_x64
...
Moves the getdents implementations for x64
2020-11-27 00:19:33 -08:00
Ryan Houdek
516db28a20
Moves some memory op implementations to x64 file
...
These will need to be unique for 32bit
2020-11-26 18:06:27 -08:00
Ryan Houdek
b228d6bad1
Moves the getdents implementations for x64
...
These end up being different for x32 so move them now
2020-11-26 17:58:32 -08:00
Ryan Houdek
fb973f23dd
Fixes manufacturer id for CPUID fn8000_0000
...
This has the same vendor ID in the as CPUID fn0000_0000
2020-11-26 17:44:46 -08:00
Scott Mansell
ee98cbfe3f
IR: Remove Rol as it's not native to ARM
2020-11-26 14:00:24 +13:00
Scott Mansell
0ec6e40a67
IR: Remove 8/16bit ROR
...
Opcode Dispatcher will now explictly emualte them
2020-11-26 14:00:24 +13:00
Scott Mansell
5b1d4eadd4
IR: Make BFI sizes explicit
...
Otherwise they can be quite hard to get right.
2020-11-26 12:40:37 +13:00
Ryan Houdek
269c73f60b
Merge pull request #531 from Sonicadvance1/remove_dead_tls
...
Removes dead TLS setting code
2020-11-25 13:45:29 -08:00
Scott Mansell
5ca6435dd5
GdbServer: Add Hacky segfault signal handling
2020-11-26 10:36:29 +13:00
Scott Mansell
cf8365d923
Core: Fix start paused
...
Otherwise we can't attach to the program
with GDB server before it runs.
2020-11-26 10:19:55 +13:00
Ryan Houdek
6605c6e6eb
Removes dead TLS setting code
...
This is no longer necessary now that phire fixed mapping of static elfs
2020-11-25 13:18:57 -08:00
Ryan Houdek
830d8146cf
Support unity+mono+bdwgc sigsuspend GC shenanigans
2020-11-20 01:07:54 -08:00
Ryan Houdek
f32bc6a5a5
Merge pull request #489 from FEX-Emu/skmp/cc-bypass
...
OpDisp: flags bypass
2020-11-20 00:48:37 -08:00
Ryan Houdek
1aae6bd231
Revert "Adds resizable frontend decoded buffer"
...
This reverts commit c122516077 .
2020-11-20 00:06:30 -08:00
Ryan Houdek
4503f41957
Merge pull request #473 from FEX-Emu/skmp/memops-addressgen
...
Complex address generation for Load/StoreMem
2020-11-19 23:57:20 -08:00
Ryan Houdek
c430f10c86
Implements a threaded compile service routine
...
This is made to be completely synchronous to a thread
2020-11-18 10:07:47 -08:00
Stefanos Kornilios Mitsis Poiitidis
0d1fc2869d
Merge pull request #512 from Sonicadvance1/cpubackend_compile_service
...
Adds support for the CPUBackends to run in a compile thread
2020-11-18 20:04:58 +02:00
Stefanos Kornilios Mitsis Poiitidis
59c9138282
Merge pull request #511 from Sonicadvance1/compile_service_shared_data
...
Adds function for copying data required for threaded compiler
2020-11-18 20:03:27 +02:00
Stefanos Kornilios Mitsis Poiitidis
ee2c1cf925
Merge pull request #509 from Sonicadvance1/fix_cache_clear
...
Fixes cache clear bug on x86_64
2020-11-18 11:16:19 +02:00
Stefanos Kornilios Mitsis Poiitidis
ab08544f8e
Merge pull request #508 from Sonicadvance1/cpu_count_file
...
Captures another CPU count file
2020-11-18 11:15:45 +02:00
Stefanos Kornilios Mitsis Poiitidis
5ff2e0edf7
Merge pull request #507 from Sonicadvance1/resizable_frontend_buffer
...
Adds resizable frontend decoded buffer
2020-11-18 11:14:41 +02:00
Stefanos Kornilios Mitsis Poiitidis
d288602eeb
Merge pull request #505 from Sonicadvance1/fix_missing_pragma
...
Adds missing pragma in RA pass
2020-11-18 11:11:55 +02:00
Ryan Houdek
c677fdf3e1
Adds support for the CPUBackends to run in a compile thread
...
These take different paths depending on if it was for a compile thread
or not
2020-11-17 14:07:18 -08:00
Ryan Houdek
edce88e66e
Ensures that we don't try and free the Dispatcher code if it doesn't
...
exist
This doesn't happen yet but it will soon
2020-11-17 14:07:10 -08:00
Ryan Houdek
47d47fac86
Adds function for copying data required for threaded compiler
...
These structures need to be shared to the threaded compiler, so set it
up for copying.
Will be necessary for the compile service
2020-11-17 13:48:10 -08:00