dvander@alliedmods.net
37af05c456
Move the debug return stack into PluginContext.
2015-02-24 15:20:00 -08:00
dvander@alliedmods.net
8eed58a467
Rename sp_vm_basecontext to plugin-context.
2015-02-24 12:55:00 -08:00
David Anderson
781c5129a9
Remove the JITX86 class.
2015-02-24 02:03:58 -08:00
David Anderson
111dd7eb68
Factor code stubs out of JITX86.
2015-02-24 02:03:58 -08:00
David Anderson
21f5400d9c
Remove ICompilationData.
2015-02-24 02:03:57 -08:00
David Anderson
8cf3e227ea
Move context var initialization into BaseContext.
2015-02-24 02:03:56 -08:00
David Anderson
8c95919b32
Move watchdog/runtime interaction into Environment.
2015-02-24 02:03:55 -08:00
David Anderson
c70e87d582
Move the code cache into Environment, and out of knight/shared.
2015-02-24 01:57:50 -08:00
David Anderson
57ba8fd09b
De-singleton-ify the watchdog timer.
2015-02-24 01:53:37 -08:00
David Anderson
3cf3f6c3f8
Merge sp_vm_engine and engine2.
2015-02-24 01:52:14 -08:00
David Anderson
499f7b3929
Refactor the public API entrypoint for SourcePawn.
2015-02-24 01:52:13 -08:00
dvander@alliedmods.net
1f9b898702
Rename BaseRuntime files to plugin-runtime.
2015-02-23 16:44:15 -08:00
dvander@alliedmods.net
2f71cb4cd7
Rename BaseRuntime to PluginRuntime.
2015-02-23 16:40:36 -08:00
dvander@alliedmods.net
b2d8dde3a5
Rename Function to CompiledFunction.
2015-02-23 16:27:57 -08:00
dvander@alliedmods.net
45bac7feb0
Rename jit_function to compiled-function.
2015-02-23 16:04:57 -08:00
dvander@alliedmods.net
892b8c05b1
Rename JitFunction to CompiledFunction and CFunction to ScriptedInvoker.
2015-02-23 16:03:08 -08:00
David Anderson
225954a27c
Modernize the smx headers.
2014-08-21 22:16:07 -07:00
Ryan Stecker
6864bf0068
Only spew JIT compilation and opcodes when built with JIT_SPEW defined.
2014-07-05 10:57:08 -05:00
David Anderson
ec61d4d188
Add a general profiling abstraction layer.
2014-06-24 01:04:13 -07:00
Kyle Sanderson
9c62e94239
Optimize native call if statically bound (bug 5842, r=ds,fyren f=dvander).
...
Original patch written by David Anderson (original r from Fyren).
- Updated to function with the current JIT compiler.
- Took in clean-ups from later-dated patches.
2014-05-11 14:36:32 -07:00
David Anderson
e69e9eddc7
Change float comparison operators to return false for NaN (bug 6107, r=ds).
...
--HG--
extra : rebase_source : a11c56fb23d6617545def3591ec6100dd143eb3e
2014-04-22 19:40:45 -07:00
David Anderson
f9f4c7dcd6
Add an interpreter because. (bug 5902, r=ds).
2013-09-01 00:23:44 -07:00
Nicholas Hastings
124ede82b3
Fix build.
2013-08-29 15:05:34 -04:00
Nicholas Hastings
1c40d77b14
Fix build.
2013-08-29 14:16:18 -04:00
Kyle Sanderson
d05feabcd6
Suppress SpewOpcode if not a debug build (bug 5859, r=dvander).
2013-08-27 08:39:15 -04:00
David Anderson
d6a6194e68
Make amtl headers BSD-licensed and clean up outstanding style issues.
2013-08-22 17:11:17 -07:00
David Anderson
c373527851
Rename ke_* headers to am-*
...
--HG--
rename : public/amtl/ke_allocator_policies.h => public/amtl/am-allocator-policies.h
rename : public/amtl/ke_inline_list.h => public/amtl/am-inline-list.h
rename : public/amtl/ke_thread_posix.h => public/amtl/am-thread-posix.h
rename : public/amtl/ke_thread_utils.h => public/amtl/am-thread-utils.h
rename : public/amtl/ke_thread_windows.h => public/amtl/am-thread-windows.h
rename : public/amtl/ke_utility.h => public/amtl/am-utility.h
rename : public/amtl/ke_vector.h => public/amtl/am-vector.h
2013-08-22 17:10:59 -07:00
David Anderson
b972ea4781
Fix stack alignment when lazily compiling scripted calls (bug 5871, r=ds).
2013-08-20 23:59:11 -07:00
David Anderson
582162460f
Fix OP_MOVS to not clobber random memory (bug 5868, r=psychonic).
2013-08-19 12:59:10 -07:00
David Anderson
c48cc0afdc
Fix OS X build.
2013-08-15 16:26:16 -07:00
David Anderson
3ac43497b9
Implement a watchdog timer for scripts that take too long to execute (bug 5837, r=fyren).
...
--HG--
extra : rebase_source : ffacb38457eca581660ce8f15c444ad828b7fedd
2013-08-14 23:54:25 -07:00
David Anderson
b39fcebe65
Remove InfoVars, reassign DAT from EBP to ESI to preserve C++ stacktraces in JIT code (bug 5844 part 10, r=ds).
2013-08-12 00:24:02 +01:00
David Anderson
04129a0841
Remove InfoVars::frm (bug 5844 part 9, r=ds).
2013-08-12 00:23:54 +01:00
David Anderson
a7658f013e
Eliminate InfoVars::hp (bug 5844 part 8, r=ds).
2013-08-12 00:23:00 +01:00
David Anderson
2822bf7a65
Eliminate InfoVars::cip (bug 5844 part 7, r=ds).
2013-08-12 00:22:54 +01:00
David Anderson
87ccd272ee
Eliminate InfoVars::rval (bug 5844 part 6, r=ds).
2013-08-12 00:22:41 +01:00
David Anderson
18275ce2c9
Remove InfoVars::ctx (bug 5844 part 5, r=fyren).
2013-08-11 11:33:47 -07:00
David Anderson
5935070dfa
Remove InfoVars::memory (bug 5844 part 4, r=ds).
2013-08-11 11:33:29 -07:00
David Anderson
8391c83121
Remove InfoVars::stp (bug 5844 part 3, r=fyren).
2013-08-11 11:31:55 -07:00
David Anderson
4255ee105f
Remove InfoVars::data_size (bug 5844 part 2, r=ds).
2013-08-11 11:31:24 -07:00
David Anderson
e3c45bd1f7
Clean up INFO register structure (bug 5844 part 1, r=ds).
2013-08-11 11:30:27 -07:00
David Anderson
449617474b
Statically align the stack at function boundaries (bug 5842, r=ds).
2013-08-11 11:27:19 -07:00
David Anderson
ce542ac5f6
Move tracker related opcodes entirely to C++.
...
The tracker related opcodes:
GENARRAY
GENARRAY_Z
TRACKER_POP_SETHEAP
TRACKER_PUSH_C
All contain some vastly overcomplicated assembly containing logic that could
be implemented much easier in C++. If it were a performance concern, these
opcodes would be entirely in C++, but most of them call out to one or more
routines to do additional work. This patch just moves most of the logic out
to C++ to reduce complexity and fix reported bugs.
--HG--
extra : rebase_source : 1397056ac3ca3efb969e66ec577e2b33ca725e1a
2013-08-10 21:23:02 -07:00
David Anderson
bf325b72f1
Use SSE when available for floating-point operations (bug 5841, r=her).
2013-08-08 20:26:36 -07:00
David Anderson
9e56725406
Refactor the JIT to use a newer, simpler macro assembler. (bug 5827, r=ann)
2013-08-08 09:41:24 -07:00
Kyle Sanderson
6f45794574
Fixed mismatched delete [] on thunks in JIT CompData dtor (bug 5639, r=dvander).
2013-03-16 13:08:35 -04:00
David Anderson
6c68082359
Fix crash when dynamic arrays run out of memory (bug 4632, r=fyren).
2011-07-04 01:57:19 -07:00
David Anderson
97ab5dd1b5
Fixed switch case comparisons failing with large numbers (bug 4457, r=pred).
2010-06-13 20:26:58 -07:00
David Anderson
d3f0a14867
Imported support for new build system.
2009-08-30 00:21:42 -07:00
David Anderson
1fe38c7473
SourceMod can now be somewhat compiled on OS X for patch sanity testing (bug 3516, r=ds).
...
This adds the ability for us to change the GCC version we use more flexibly.
2008-12-23 01:33:37 -05:00