Commit Graph

1162 Commits

Author SHA1 Message Date
Ben Vanik b0034f3b4d Fix cntlz. 2014-05-27 15:15:52 -07:00
Ben Vanik 2856d38024 Fixing some instructions. 2014-05-27 14:31:19 -07:00
Ben Vanik 5436cde0fc Saturating unsigned VECTOR_ADD. 2014-05-27 14:27:07 -07:00
Ben Vanik 8619a15ee3 Emulated POW2/LOG2. Can probably be faked with polynomials. 2014-05-27 13:25:22 -07:00
Ben Vanik 0612a68f80 Fixing encoding of vpextr*. 2014-05-27 13:02:38 -07:00
Ben Vanik 87f8a4bb25 vector_add. 2014-05-27 13:02:23 -07:00
Ben Vanik e32342e956 Variable vector_shl int8. 2014-05-27 13:02:00 -07:00
Ben Vanik 7635bb71a0 Constant permute. 2014-05-27 12:03:40 -07:00
Ben Vanik 2d765461ff Common constant vector shifts. 2014-05-27 12:03:13 -07:00
Ben Vanik d85665bb06 More efficient 11111... vec loading. 2014-05-27 11:57:20 -07:00
Ben Vanik 16bac6d9c5 Constant support for a lot of vector ops. 2014-05-27 11:56:55 -07:00
Ben Vanik efa0565398 Fixing permute. 2014-05-27 07:53:19 -07:00
Ben Vanik 5a85263e5f Trying out a new style of JIT pattern matching. 2014-05-26 20:28:21 -07:00
Ben Vanik a001714fb0 Adding lock to stdout logging. Disable with --fast_stdout.
Fixes #78.
2014-05-21 11:24:44 -07:00
Ben Vanik 1bb0b08a14 Fixing WIN32 build. 2014-05-21 10:38:41 -07:00
Ben Vanik ced1d799ca Merge pull request #83 from inolen/macosx
misc build fixes for compiling with clang
2014-05-21 10:15:10 -07:00
Anthony Pesch 1a4355a36b implemented xerotl to replace win32 specific _rotl usage 2014-05-14 00:39:50 -07:00
Anthony Pesch f01609c5aa replace usage of itoa with snprintf 2014-05-14 00:39:47 -07:00
Anthony Pesch 68e5833647 use getpagesize on non-win32 platforms 2014-05-14 00:36:05 -07:00
Anthony Pesch 0e6c47aac5 use custom __m128 struct on non-win32 platforms to provide element-wise access
explicitly cast param for set_constant to correctly resolve overloaded function
2014-05-14 00:36:05 -07:00
Anthony Pesch c6cdf1f672 nest X64Function in its own block to avoid clang errors related to goto usage 2014-05-14 00:36:05 -07:00
Anthony Pesch 60a7e79e1a assume c++11
clang didn't like static members in anonymous structures, gave them names
WriteEvent template wouldn't resolve for temporary values without const decl in clang
added a few missing headers
added -fno-operator-names for xbyak compilation under gcc/clang
2014-05-14 00:35:21 -07:00
Ben Vanik 482ffb053a Merge pull request #76 from shuffle2/fix-GetLogicalProcessorInformation
Fix spelling of GetLogicalProcessorInformation in GetProcAddress call
2014-03-28 21:59:36 -07:00
Shawn Hoffman 1e196df4b3 Fix spelling of GetLogicalProcessorInformation in GetProcAddress call - spelling actually matters here. 2014-03-28 21:48:20 -07:00
Ben Vanik 9a2d99d652 Fixing CFA. 2014-03-28 20:39:21 -07:00
Ben Vanik 24fc5acb07 Partially implemented Windows keyboard HID for testing. 2014-02-23 16:36:17 -08:00
Ben Vanik 86f66c4ab7 So few (faked) registers seems to break some things. 2014-02-15 15:49:41 -08:00
Ben Vanik b2f886be98 Fixing more x64 stuff. 2014-02-10 23:48:41 -08:00
Ben Vanik 74c9df6697 Re-enabling x64 backend, fixing many bugs. 2014-02-10 23:24:46 -08:00
Ben Vanik 4a584129d2 A probably-working register allocator. 2014-02-10 21:16:38 -08:00
Ben Vanik 6bd214af0b Adding a shared scratch arena for compiler passes. 2014-02-08 22:01:51 -08:00
Ben Vanik e6f3716d87 Disabling x64 backend for now, as it's rubbish. 2014-02-08 22:01:26 -08:00
Ben Vanik e36e1acc1a TLS access is slow. 2014-02-08 22:00:53 -08:00
Ben Vanik 2403f367b1 MachineInfo 2014-02-08 22:00:21 -08:00
Ben Vanik ee69696485 Hiding some D3D11 log spew. 2014-02-06 22:18:44 -08:00
Ben Vanik 6199e9f7b5 Vector constant support. 2014-02-06 22:18:30 -08:00
Ben Vanik c5b70e615f Fixing div. 2014-02-06 22:18:15 -08:00
Ben Vanik 5309356908 Fixing tail calls in the jit. 2014-02-06 21:53:31 -08:00
Ben Vanik 0d88e83daa Avoiding function lookup for compiled functions. Still need caching. 2014-02-02 14:41:57 -08:00
Ben Vanik ef5f59ed0b I seem to relearn blr != return once every month or so. 2014-02-02 14:35:16 -08:00
Ben Vanik 2d65bea0ea Fix warning. 2014-02-02 13:34:03 -08:00
Ben Vanik 05387b4996 Fixing type mismatches. 2014-02-02 13:10:24 -08:00
Ben Vanik bc54fc1ae8 UNPACK D3DCOLOR and EXTRACT INT32 variable. 2014-02-02 13:04:42 -08:00
Ben Vanik 544d453691 Stack fixes. 2014-02-02 12:28:40 -08:00
Ben Vanik e5e490ca9b AVX1+ required. I'm sure I'm using AVX2 instructions now, though. 2014-02-02 11:25:00 -08:00
Ben Vanik 14d6855b6d PERMUTE by V128 and fixing some ops. 2014-02-02 11:23:03 -08:00
Ben Vanik 44c29a6691 Possibly working LOAD_VECTOR_SHL/SHR. 2014-02-02 02:18:59 -08:00
Ben Vanik ae02dc7eba Fixing rdx clobber from mul/div. 2014-02-02 01:51:38 -08:00
Ben Vanik bca349b302 Oh my. Basic CFA/DFA, local variable support, misc fixes, etc. 2014-02-02 00:33:57 -08:00
Ben Vanik b29276e167 Reserve address cleanup. 2014-02-01 01:13:23 -08:00