Commit Graph

15618 Commits

Author SHA1 Message Date
Magnus Norddahl 295fc7d7f7 Revert "- the build tests are using some ancient dino 7.1 Windows SDK where UnwindInfoAddress isn't part of the struct yet."
This reverts commit 20516e1c0b.
2018-10-17 08:54:41 +02:00
Erick Tenorio c0cf19e9b5 - Visually align Doom 2 MAP04 crusher floors
Use Transfer_Heights to fake floors on the crusher sectors
2018-10-16 17:38:15 +02:00
Marisa Kirisame 1e6454598c Preserve line locknumber in savegames. 2018-10-16 08:58:37 -04:00
Christoph Oelckers 54d9ec11a8 Changed AppVeyor configuration to create the 64 bit debug build with VS 2017 and no XP toolset 2018-10-15 09:07:59 +02:00
Magnus Norddahl 20516e1c0b - the build tests are using some ancient dino 7.1 Windows SDK where UnwindInfoAddress isn't part of the struct yet. 2018-10-15 03:06:40 +02:00
Magnus Norddahl 1f0add9067 - update JIT PARAM handling to match the VM instruction change 2018-10-14 23:13:30 +02:00
Magnus Norddahl 70f18f87b9 Merge remote-tracking branch 'origin/master' into asmjit 2018-10-14 22:55:57 +02:00
Magnus Norddahl 1a2e5b12d0 - RUNTIME_FUNCTION only exists in 64-bit Windows 2018-10-14 22:54:30 +02:00
Rachael Alexanderson 239b57b41c - fixed: use 'setsizeneeded' more often in the scaling code. recalculating screen geometry for 2D elements when it changes never really hurts. 2018-10-14 16:27:08 -04:00
Erick Tenorio cc8112f88d -Fixed many IWAD mapping errors 2018-10-14 11:44:54 +02:00
Christoph Oelckers dd719f0f14 - extended the register limit for 'param'.
The instruction one free instruction byte so it's now using that to extend its argument's register range to 65535.
For param this is needed because it passes strings by reference and creating an implicit temporary copy for string constants does not work here.
2018-10-14 09:13:26 +02:00
Magnus Norddahl cd211da2d8 - fix wrong shift direction 2018-10-14 08:53:18 +02:00
Magnus Norddahl a3f6950a4f - build enough of the unwind opcodes for visual studio's debugger to produce the correct call stack 2018-10-14 08:27:27 +02:00
player701 eee0946bc5 - Fixed indentation 2018-10-14 00:52:00 +02:00
player701 6dc026895c - Exported PickNewWeapon function from PlayerPawn to ZScript. 2018-10-14 00:52:00 +02:00
Magnus Norddahl cf9bae67a8 - construct our own runtime as the one provided by asmjit is too primitive 2018-10-14 00:46:54 +02:00
Magnus Norddahl 300553a21f - add more names to asmjit objects 2018-10-12 08:02:35 +02:00
Magnus Norddahl 7ca598de2d - remove the frameX registers as they were just constant offsets to vmframe that could be merged into other constant offsets 2018-10-12 07:41:16 +02:00
Magnus Norddahl b15ca09486 - give the remaining virtual registers names 2018-10-12 07:05:42 +02:00
Magnus Norddahl c86e4480b6 - give temp registers names and reuse the FString object for formatting names 2018-10-12 06:59:03 +02:00
Magnus Norddahl 0bb4a159e5 - skip RESULT opcodes when outputting assembly 2018-10-12 06:25:51 +02:00
Magnus Norddahl 44294a051a - clean up assembly output slightly by only generating labels for the opcodes jumped to 2018-10-12 06:14:27 +02:00
Magnus Norddahl c099b2d3c8 Merge remote-tracking branch 'origin/master' into asmjit 2018-10-12 05:38:33 +02:00
Magnus Norddahl ade6ae24e9 - fix CASTB opcode implementation 2018-10-11 04:32:49 +02:00
Magnus Norddahl fc870fce87 - fix missing convert from float to double in LSP and LSP_R opcodes
- fix missing convert from double to float in SSP and SSP_R opcodes
2018-10-11 03:53:11 +02:00
Magnus Norddahl aa6e09f7e8 - fix debug build compile error 2018-10-11 03:14:42 +02:00
Magnus Norddahl 0120ea190c - remove the need to do any VARF_Native runtime checks by making native functions use the same calling convention as the script version 2018-10-10 23:47:56 +02:00
Magnus Norddahl b6bc06e568 - do script calls directly from asmjit without using a lambda wrapper
- do VARF_Native check at compile time when possible
2018-10-10 22:08:26 +02:00
Rachael Alexanderson ec7e855a56 - g3.7pre 2018-10-10 02:25:32 -04:00
Magnus Norddahl 01825231ec - add -dumpjit command line parameter that dumps the JIT log for all functions to dumpjit.txt 2018-10-10 06:17:35 +02:00
Magnus Norddahl 452c6fd158 - fix return warning 2018-10-10 04:57:35 +02:00
Christoph Oelckers 0dc7f6be19 - fixed: MD3s with a skin-less surface left the renderer in an undefined state.
The frame interpolation factor wasn't reset and rendering prematurely aborted with no chance to recover.
2018-10-09 19:16:15 +02:00
Magnus Norddahl 884e185db0 - switch to using setjmp/longjmp for exception handling 2018-10-09 16:30:55 +02:00
Magnus Norddahl 2b05e75656 Merge branch 'asmjit' of https://github.com/coelckers/gzdoom into asmjit 2018-10-09 14:46:40 +02:00
Magnus Norddahl 3f4638ca31 - add disabled code that attempts to load registers directly from function arguments 2018-10-09 14:46:27 +02:00
Erick Tenorio 22f8c26917 Fix missing enemies in HTP-RAW.WAD MAP22
Make 100% kills possible on MAP22 of Hell to Pay
2018-10-09 07:44:30 -04:00
Rachael Alexanderson e223a25863 - fixed: smooth teleporters could fudge the player over an adjacent line, causing the player to appear on top of a cliff that is much higher than the original teleport. 2018-10-09 06:55:56 -04:00
Rachael Alexanderson 3d81be1517 - always enforce a minimum distance for fog when fogmode is set to standard. without this, it was possible for the GPU to error out and stop rendering pixels for certain screen blocks 2018-10-09 04:45:23 -04:00
Magnus Norddahl 9c3b8507af - add missing include statement 2018-10-09 07:15:46 +02:00
Magnus Norddahl f0d9b49099 - allocate VMFrame on the stack for simple functions with no strings 2018-10-09 05:19:29 +02:00
Magnus Norddahl bee3a964ae - remove argument not used anymore 2018-10-09 05:18:44 +02:00
Magnus Norddahl e66015cce6 - apply asmjit register allocator bugfix
- enable debug builds of asmjit
2018-10-09 05:17:46 +02:00
Magnus Norddahl b7c0cd5d05 - move VM creation into the jitted function. this will allow the jit compiler to skip vm frame creation when possible 2018-10-09 03:37:11 +02:00
Magnus Norddahl e930dfaae7 - create ScriptCall function pointer on VMScriptFunction 2018-10-09 02:52:07 +02:00
Magnus Norddahl 137ef034d1 - modify the VM calling convention so that the callee sets up its own VM frame 2018-10-09 02:08:15 +02:00
Magnus Norddahl 367b60d88c - fix wrong registers getting saved when passing parameters by reference 2018-10-08 23:44:54 +02:00
Erick Tenorio 643e3a78d8 Fixes for Wraith Corporation WADs 2018-10-08 18:40:25 +02:00
alexey.lysiuk 77b8eb6547 - reverted macOS dark mode support with old SDKs
This feature causes several issues with NSOpenGLView:
* Mouse event coordinates are wrong in non-retina mode on HiDPI screen
* In retina mode only 1/4 of picture is visible and its scaling is incorrect
* Some sort of filtering is applied to frontbuffer picture
* Noticeable increase in CPU load because of that filtering

Linking with macOS 10.14 SDK leads to all these issues regardless of .plist option presence and its value
2018-10-08 15:50:56 +03:00
Magnus Norddahl d643fbd077 - removed CanJit as all opcodes are now implemented
- fix some store bugs
2018-10-07 22:21:48 +02:00
Magnus Norddahl 47bcf318a5 - fix 32 bit compile errors 2018-10-07 20:55:06 +02:00