Commit Graph

2811 Commits

Author SHA1 Message Date
Mike Pall
2f35cb45fd MIPS64 R2/R6: Fix FP to integer conversions.
Thanks to Peter Cawley. #1146
2024-01-22 19:12:13 +01:00
Mike Pall
4b90f6c4d7 Add cross-32/64 bit and deterministic bytecode generation.
Contributed by Peter Cawley. #993 #1008
2024-01-22 19:06:36 +01:00
Mike Pall
c525bcb902 DynASM/x86: Allow [&expr] operand.
Thanks to Dmitry Stogov. #1138
2023-12-23 20:06:17 +01:00
Mike Pall
dbd363ca25 Merge branch 'master' into v2.1 2023-12-23 19:49:43 +01:00
Mike Pall
658530562c Check for IR_HREF vs. IR_HREFK aliasing in non-nil store check.
Thanks to Peter Cawley. #1133
2023-12-23 19:43:03 +01:00
Mike Pall
293199c5eb Merge branch 'master' into v2.1 2023-12-23 19:23:12 +01:00
Mike Pall
7dbe545933 Respect jit.off() on pending trace exit.
Thanks to Sergey Kaplun. #1134
2023-12-23 19:22:34 +01:00
Mike Pall
e02a207909 Merge branch 'master' into v2.1 2023-12-23 19:15:57 +01:00
Mike Pall
c42c62e71a Simplify handling of instable types in TNEW/TDUP load forwarding.
Thanks to Peter Cawley. #994
2023-12-23 19:14:32 +01:00
Mike Pall
29b0b282f5 Merge branch 'master' into v2.1 2023-12-11 13:04:43 +01:00
Mike Pall
9bdfd34dcc Only emit proper parent references in snapshot replay.
Thanks to Peter Cawley. #1132
2023-12-11 13:01:36 +01:00
Mike Pall
ff204d0350 Fix anchoring for string buffer set() method (again).
Thanks to Peter Cawley. #1125
2023-12-10 19:42:22 +01:00
Mike Pall
8d5ea4ceb9 Merge branch 'master' into v2.1 2023-12-10 16:13:34 +01:00
Mike Pall
10cc759f25 ARM: Fix stack restore for FP slots.
Thanks to Peter Cawley. #1131
2023-12-10 16:10:48 +01:00
Mike Pall
420a9afa93 Merge branch 'master' into v2.1 2023-12-10 15:50:14 +01:00
Mike Pall
1b38c73655 Document workaround for multilib vs. cross-compiler conflict.
Reported by igorpupkinable. #1126
2023-12-10 15:45:10 +01:00
Mike Pall
e02cb19b57 Fix anchoring for string buffer set() method.
Thanks to Peter Cawley. #1125
2023-12-10 15:33:47 +01:00
Mike Pall
e4168fae5b Merge branch 'master' into v2.1 2023-12-10 15:02:26 +01:00
Mike Pall
856423f5da Fix runtime library flags for MSVC debug builds.
Reported by igor725. #1127
2023-12-10 15:00:52 +01:00
Mike Pall
487eaaf040 Merge branch 'master' into v2.1 2023-12-10 14:50:29 +01:00
Mike Pall
dcf3627d79 Fix .debug_abbrev section in GDB JIT API.
Thanks to Dmitry Stogov. #1129
2023-12-10 14:48:34 +01:00
Mike Pall
d1236a4caa Optimize table.new() with constant args to (sinkable) IR_TNEW.
Thanks to Peter Cawley. #1128
2023-12-10 14:41:56 +01:00
Mike Pall
7ad68a1fd3 Merge branch 'master' into v2.1 2023-12-10 14:33:48 +01:00
Mike Pall
1761fd2ef7 Emit sunk IR_NEWREF only once per key on snapshot replay.
Thanks to Sergey Kaplun and Peter Cawley. #1128
2023-12-10 14:29:45 +01:00
Mike Pall
43d0a19158 Fix last commit. 2023-11-15 01:41:31 +01:00
Mike Pall
536cf8a271 Merge branch 'master' into v2.1 2023-11-14 22:56:09 +01:00
Mike Pall
644723649e x86/x64: Don't fuse loads across IR_NEWREF.
Reported by Peter Cawley. #1117
2023-11-14 22:50:21 +01:00
Mike Pall
113a168b79 Improve last commit. 2023-11-12 16:11:11 +01:00
Mike Pall
45c88b7963 x86/x64: Don't fuse loads across table.clear.
Reported by Peter Cawley. #1117
2023-11-12 15:41:52 +01:00
Mike Pall
6807e60af1 Merge branch 'master' into v2.1 2023-11-12 15:25:14 +01:00
Mike Pall
d854d00ce9 x86/x64: Add more red zone checks to assembler backend.
Thanks to Peter Cawley. #1116
2023-11-12 15:18:44 +01:00
Mike Pall
7c9671a043 Merge branch 'master' into v2.1 2023-11-12 15:11:29 +01:00
Mike Pall
a4c1640432 Add stack check to pcall/xpcall.
Analyzed by Peter Cawley. #1048
2023-11-12 14:42:24 +01:00
Mike Pall
69bbbf7736 Merge branch 'master' into v2.1 2023-11-09 11:05:27 +01:00
Mike Pall
65c8493907 Invalidate SCEV entry when returning to lower frame.
Thanks to Zhongwei Yao. #1115
2023-11-09 11:02:36 +01:00
Mike Pall
b94fbfbee9 Merge branch 'master' into v2.1 2023-11-07 22:28:53 +01:00
Mike Pall
433d7e8d8d FFI: Fix pragma push stack limit check and throw on overflow.
Reported by Sergey Kaplun. #1114
2023-11-07 22:25:42 +01:00
Mike Pall
ce2cd61739 ARM64: Fix disassembly of ldp/stp offsets.
Thanks to Peter Cawley. #1113
2023-11-06 23:14:22 +01:00
Mike Pall
07b3cd3cf9 Check for upvalue state transition in IR_UREFO.
Thanks to Peter Cawley. #1085
2023-11-05 16:34:46 +01:00
Mike Pall
0afa1676b2 Merge branch 'master' into v2.1 2023-11-05 11:37:57 +01:00
Mike Pall
d133d67c88 x64: Properly fix __call metamethod return dispatch.
Reported by Sergey Kaplun. #1110
2023-11-05 11:31:08 +01:00
Mike Pall
f2e955dae8 Windows/x86: _BitScan*64 are only available on 64 bit archs.
Reported by memcorrupt. #1109
2023-11-05 11:27:35 +01:00
Mike Pall
e826d0c101 Add 'cc' file type for saving bytecode.
Contributed by Sergey Bronnikov. #1105
2023-10-21 13:31:45 +02:00
Mike Pall
4eb47df605 FFI/Windows: Fix type declaration for int64_t and uint64_t.
Thanks to Peter Cawley. #1106
2023-10-21 13:18:51 +02:00
Mike Pall
7269b02130 Merge branch 'master' into v2.1 2023-10-21 13:13:34 +02:00
Mike Pall
db944b2b56 FFI: Fix dangling reference to CType in carith_checkarg().
Reported by Sergey Kaplun. #1108
2023-10-21 13:11:50 +02:00
Mike Pall
656ecbcf8f DynASM/ARM64: Support ldp/stp of q registers.
Thanks to Peter Cawley. #1096
2023-10-08 22:12:01 +02:00
Mike Pall
d2a5487fd7 ARM64: Use ADR and ADRP to form constants.
Thanks to Peter Cawley. #1100
2023-10-08 22:10:02 +02:00
Mike Pall
14866a6828 ARM64: Fix disassembly of U12 loads.
Thanks to Peter Cawley. #1100
2023-10-08 21:57:04 +02:00
Mike Pall
c5b075eb31 ARM64: Unify constant register handling in interpreter.
Plus minor optimizations. Simplifications for out-of-tree ARM64EC.
Thanks to Peter Cawley. #1096
2023-10-08 21:39:40 +02:00