Commit Graph

69 Commits

Author SHA1 Message Date
Mike Pall
8e53ccc686 Merge branch 'master' into v2.1 2023-06-02 11:42:24 +02:00
Mike Pall
9f452bbef5 Fix handling of instable types in TNEW/TDUP load forwarding.
Analyzed by Sergey Kaplun. #994
2023-06-02 11:38:45 +02:00
Mike Pall
8bbd58e534 Merge branch 'master' into v2.1 2023-04-16 13:29:58 +02:00
Mike Pall
c7db8255e1 Fix TDUP load forwarding after table rehash.
Reported by Sergey Kaplun. #980
2023-04-16 13:26:18 +02:00
Mike Pall
4ef96cff88 Fix alias analysis for table length forwarding.
Contributed by Maxim Sokolov.
2022-05-20 12:16:25 +02:00
Mike Pall
7306ba78d6 Merge branch 'master' into v2.1 2022-01-15 19:42:30 +01:00
Mike Pall
c4dfb625ba Bump copyright date. 2022-01-15 19:30:54 +01:00
Mike Pall
d5a237eae0 Fix HREFK forwarding vs. table.clear().
Reported by XmiliaH.
2022-01-15 17:52:21 +01:00
Mike Pall
bb0f241015 Compile table traversals: next(), pairs(), BC_ISNEXT/BC_ITERN.
Sponsored by OpenResty Inc.
2021-09-19 17:49:25 +02:00
Mike Pall
29bc1f04ac String buffers, part 3d: Compile string buffer methods and functions.
Sponsored by fmad.io.
2021-07-19 16:53:30 +02:00
Mike Pall
1e66d0f9e6 Merge branch 'master' into v2.1 2021-01-02 21:56:07 +01:00
Mike Pall
f47c864b01 Bump copyright date. 2021-01-02 21:49:41 +01:00
Mike Pall
4bb2e4a547 Merge branch 'master' into v2.1 2020-10-12 15:43:18 +02:00
Mike Pall
de6b1a11dd Ensure full init of IR_NOP instructions. 2020-10-12 15:40:28 +02:00
Mike Pall
8ae5170cdc Improve assertions. 2020-06-15 02:52:00 +02:00
Mike Pall
1a4ff13117 Optimize table length computation with hinting.
10x faster on loop with t[#t+1] = x idiom. Also used by table.insert.
2020-05-27 19:20:44 +02:00
Mike Pall
87b111f0fe Merge branch 'master' into v2.1 2020-01-20 23:34:21 +01:00
Mike Pall
38a5ed4b43 Bump copyright date. 2020-01-20 23:26:51 +01:00
Mike Pall
827916c67e Merge branch 'master' into v2.1 2019-05-09 11:33:30 +02:00
Mike Pall
d4c0c6e17e Fix TNEW load forwarding with instable types. 2019-05-09 11:33:03 +02:00
Mike Pall
71ff7ef8a7 Merge branch 'master' into v2.1 2017-01-17 12:41:05 +01:00
Mike Pall
b93a1dd0c8 Bump copyright date to 2017. 2017-01-17 12:35:03 +01:00
Mike Pall
7fb75ccc4c Embed 64 bit constants directly in the IR, using two slots.
Contributed by Peter Cawley.
2016-05-23 00:25:29 +02:00
Mike Pall
f4231949b5 Merge branch 'master' into v2.1 2016-03-03 12:11:37 +01:00
Mike Pall
db1b399af1 Bump copyright date to 2016. 2016-03-03 12:02:22 +01:00
Mike Pall
063f3d5d7c Merge branch 'master' into v2.1 2015-02-18 16:01:11 +01:00
Mike Pall
704280fb80 FFI: Prevent DSE across ffi.string(). 2015-02-18 16:00:15 +01:00
Mike Pall
0a5045c34e Merge branch 'master' into v2.1 2015-01-06 00:12:45 +01:00
Mike Pall
86913b9bbf Bump copyright date to 2015. 2015-01-05 23:59:31 +01:00
Mike Pall
423f10fb40 Fix alias analysis for table.len vs. table.clear. 2014-04-01 01:55:12 +02:00
Mike Pall
b65515fb48 Merge branch 'master' into v2.1 2014-03-28 19:11:35 +01:00
Mike Pall
c735293921 FFI: Fix pseudo type conversions for type punning. 2014-03-28 19:09:45 +01:00
Mike Pall
a9d4543601 Merge branch 'master' into v2.1 2014-01-16 23:18:34 +01:00
Mike Pall
ef59e54820 Bump copyright date to 2014. 2014-01-16 23:10:16 +01:00
Mike Pall
4593fb5e29 Add table.clear(). 2013-11-25 15:19:17 +01:00
Mike Pall
5a25a735f5 Fix type punning alias analysis for constified pointers. 2013-11-07 13:29:20 +01:00
Mike Pall
9211a66e0e Improve ULOAD forwarding for open upvalues. 2013-06-18 20:08:55 +02:00
Mike Pall
f17b038828 Inhibit DSE for implicit loads via calls. 2013-04-09 11:50:33 +02:00
Mike Pall
4a44c4ff69 Bump copyright date to 2013. 2013-02-11 12:54:48 +01:00
Mike Pall
c7826af5a0 FFI: Detect type punning through unions. 2012-08-27 20:53:37 +02:00
Mike Pall
a9bf455b96 Add HREFK forwarding. Eliminate HREFK guard for TDUP refs. 2012-06-28 15:10:52 +02:00
Mike Pall
9a98ba64b4 Fix TDUP to HLOAD forwarding for DUALNUM builds. 2012-06-27 19:54:52 +02:00
Mike Pall
3ed5172fe4 Fix DSE of USTORE. Have to remove OBAR, too. 2012-04-11 16:22:05 +02:00
Mike Pall
10ef109eef Bump copyright date to 2012. 2012-01-23 22:42:42 +01:00
Mike Pall
05ef03e2d0 Don't bother to chain NOPs. 2011-08-11 22:04:38 +02:00
Mike Pall
19b84009b2 Fix type mismatch in XSTORE forwarding. 2011-02-14 23:02:16 +01:00
Mike Pall
97d0874ff5 Add IR_XBAR, a barrier against XLOAD/XSTORE optimizations. 2011-02-07 21:59:25 +01:00
Mike Pall
26fadcd25b FFI: Record simple C function calls.
Only handles cdecl and fixarg C functions.
Doesn't handle pass-by-value aggregates.
Doesn't handle 64 bit args/returns on 32 bit CPUs.
2011-02-05 21:50:15 +01:00
Mike Pall
8407ac0eca Add volatile XLOADs. 2011-01-19 02:05:12 +01:00
Mike Pall
06f99fc3df Bump copyright date to 2011. 2011-01-09 17:12:53 +01:00