Dmitry Stogov
|
ef3ffff81b
|
Fix CALL/1 copying. Fallback to CALL+RETURN when we can't generate code for TAILCALL.
|
2022-06-22 17:57:31 +03:00 |
|
Dmitry Stogov
|
a165c43196
|
Initial support for thread local storage + optimization of some related code selection patterns
|
2022-06-22 16:02:43 +03:00 |
|
Dmitry Stogov
|
9b25587eb6
|
Compound assignment instruction fusion
|
2022-06-21 17:33:57 +03:00 |
|
Dmitry Stogov
|
082bcf89c9
|
Use ir_ctx.fixed_regset to limit available registers
|
2022-06-21 16:13:14 +03:00 |
|
Dmitry Stogov
|
fc2266d61a
|
Remove PHP specific registers
|
2022-06-21 15:09:26 +03:00 |
|
Dmitry Stogov
|
f62e1da8ef
|
Make distinction between ENTRY and regular labels
|
2022-06-21 14:57:31 +03:00 |
|
Dmitry Stogov
|
88b66a77cd
|
Support for multiple ENTRY
|
2022-06-21 13:56:29 +03:00 |
|
Dmitry Stogov
|
cb64f578eb
|
Avoid memory allocation for empty arguments list
|
2022-06-21 13:04:33 +03:00 |
|
Dmitry Stogov
|
4060f9ca23
|
Avoid hardcoded file path (use stdin instead)
|
2022-06-21 12:24:44 +03:00 |
|
Dmitry Stogov
|
00e92483bc
|
Fix compilation warnings
|
2022-06-21 11:41:59 +03:00 |
|
Dmitry Stogov
|
be054efb97
|
Use function API intead of macros
|
2022-06-21 11:24:42 +03:00 |
|
Dmitry Stogov
|
0ed7f7b41e
|
Fix CFG construction
|
2022-06-20 23:31:32 +03:00 |
|
Dmitry Stogov
|
5ef1e97261
|
Better support for unreachable basic blocks
|
2022-06-20 16:34:44 +03:00 |
|
Dmitry Stogov
|
f8a23e9fe4
|
Don't protect/unprotect external code buffer
|
2022-06-17 13:22:26 +03:00 |
|
Dmitry Stogov
|
1c78c3a2c2
|
Fix CFG consruction when some BB cannot be find using backward serach
(e.g. function with an infinity loop and without return)
|
2022-06-17 12:20:15 +03:00 |
|
Dmitry Stogov
|
688b547a1e
|
Fix incorret size
|
2022-06-17 10:08:05 +03:00 |
|
Dmitry Stogov
|
68477b7d7c
|
Add assertion
|
2022-06-17 09:41:06 +03:00 |
|
Dmitry Stogov
|
411dd20331
|
Support for code fragments with multiple entries
|
2022-06-16 23:49:27 +03:00 |
|
Dmitry Stogov
|
ac5c3981e5
|
Allow LOOP_BEGIN to have multiple input back-edges
|
2022-06-16 12:31:23 +03:00 |
|
Dmitry Stogov
|
3f6c1ee0f5
|
cleanup
|
2022-06-15 22:48:19 +03:00 |
|
Dmitry Stogov
|
ba6bb796a4
|
Fix "dot" graphs
|
2022-06-15 17:31:59 +03:00 |
|
Dmitry Stogov
|
5fb115ab11
|
Remove LOOP_EXIT
|
2022-06-15 17:27:31 +03:00 |
|
Dmitry Stogov
|
706850f578
|
Prevent mov reg to itself
|
2022-06-15 14:37:16 +03:00 |
|
Dmitry Stogov
|
d877e35909
|
Fuse load+cmp
|
2022-06-15 13:15:19 +03:00 |
|
Dmitry Stogov
|
b5a3b2fe90
|
Load fusion and cmp+guard fusion
|
2022-06-15 12:27:36 +03:00 |
|
Dmitry Stogov
|
be0ecd0eb8
|
Fix LOAD/STORE with constant addresses
|
2022-06-14 22:38:35 +03:00 |
|
Dmitry Stogov
|
0a93d2e41b
|
Fix incorrect type usage
|
2022-06-14 20:51:39 +03:00 |
|
Dmitry Stogov
|
f841fb6c34
|
Initial support for guards
|
2022-06-14 16:27:33 +03:00 |
|
Dmitry Stogov
|
af4558e439
|
Allow emitting native code into preallocated buffer
|
2022-06-10 11:30:19 +03:00 |
|
Dmitry Stogov
|
5cafe50d36
|
Initial support for PHP
|
2022-06-10 00:16:29 +03:00 |
|
Dmitry Stogov
|
63ec9b4864
|
iRemove useless (always true) condition
|
2022-06-07 14:45:57 +03:00 |
|
Dmitry Stogov
|
3212cd5bd2
|
Fix compilation warnings
|
2022-06-07 14:43:35 +03:00 |
|
Dmitry Stogov
|
03bb1d1c4d
|
Flush CPU cache
|
2022-06-07 11:53:27 +03:00 |
|
Dmitry Stogov
|
fbedabc5d8
|
cleanup
|
2022-06-07 10:17:41 +03:00 |
|
Dmitry Stogov
|
1108acf9b8
|
cleanup
|
2022-06-06 23:12:45 +03:00 |
|
Dmitry Stogov
|
ad052c59ab
|
cleanup
|
2022-06-06 22:36:11 +03:00 |
|
Dmitry Stogov
|
17797a4a84
|
cleanup
|
2022-06-06 18:10:41 +03:00 |
|
Dmitry Stogov
|
f6b81b14e9
|
Aarch64 back-end
|
2022-06-06 15:27:25 +03:00 |
|
Dmitry Stogov
|
054a70012e
|
Aarch64 back-end (incomplete)
|
2022-06-03 12:47:02 +03:00 |
|
Dmitry Stogov
|
c28fe2734d
|
Validate operand types
|
2022-06-03 11:23:05 +03:00 |
|
Dmitry Stogov
|
30e11861dd
|
Aarch64 back-end (incomplete)
|
2022-06-03 00:38:49 +03:00 |
|
Dmitry Stogov
|
fb998c9058
|
Aarch64 back-end (incomplete)
|
2022-06-02 18:34:47 +03:00 |
|
Dmitry Stogov
|
2af3f0569d
|
Merge last changes from LuaJIT repo
|
2022-06-02 15:26:58 +03:00 |
|
Dmitry Stogov
|
ab8019e0cd
|
Aarch64 back-end (incomplete)
|
2022-06-02 15:12:56 +03:00 |
|
Dmitry Stogov
|
77e5e4a62c
|
DynAsm/ARM64: Temporary fix for "LSL Rx(dst), Rd(src), #imm" encoding
|
2022-06-02 13:40:50 +03:00 |
|
Dmitry Stogov
|
bb842b489c
|
Aarch64 backend support & unification
|
2022-06-01 18:16:32 +03:00 |
|
Dmitry Stogov
|
1be868c779
|
Start Aarch64 back-end
|
2022-06-01 00:51:02 +03:00 |
|
Dmitry Stogov
|
91bddc09ed
|
Cleanup & unification
|
2022-06-01 00:34:45 +03:00 |
|
Dmitry Stogov
|
00c300fc9f
|
Start Aarch64 back-end
|
2022-05-31 11:22:31 +03:00 |
|
Dmitry Stogov
|
a45d40277c
|
Replace xmm(dst-IR_REG_XMM0) by xmm(dst-IR_REG_FP_FIRST)
|
2022-05-31 10:44:10 +03:00 |
|