Mike Pall
|
8a5e398c52
|
Avoid negation of signed integers in C that may hold INT*_MIN.
Reported by minoki.
Recent C compilers 'take advantage' of the undefined behavior.
This completely changes the meaning of expressions like (k == -k).
|
2022-12-22 00:03:06 +01:00 |
|
Mike Pall
|
1a401622fe
|
Fix assertions.
Reported by ssdr.
|
2022-04-17 10:56:11 +02:00 |
|
Mike Pall
|
c4dfb625ba
|
Bump copyright date.
|
2022-01-15 19:30:54 +01:00 |
|
Mike Pall
|
c8bcf1e5fb
|
Fix ABC FOLD rule with constants.
Reported by XmiliaH.
|
2022-01-13 14:40:11 +01:00 |
|
Mike Pall
|
e73916d811
|
Prevent CSE of a REF_BASE operand across IR_RETF.
Reported by XmiliaH.
|
2021-12-19 18:35:27 +01:00 |
|
Mike Pall
|
7b994e0ee0
|
Fix FOLD rule for x-0.
Reported by XmiliaH.
|
2021-12-17 14:15:40 +01:00 |
|
Mike Pall
|
f47c864b01
|
Bump copyright date.
|
2021-01-02 21:49:41 +01:00 |
|
Mike Pall
|
38a5ed4b43
|
Bump copyright date.
|
2020-01-20 23:26:51 +01:00 |
|
Mike Pall
|
c4e15b457e
|
Fix narrowing of conversions to U32.
Reported by spacewander.
|
2019-11-10 22:37:42 +01:00 |
|
Mike Pall
|
9f0caad0e4
|
Fix FOLD rule for strength reduction of widening.
Reported by Matthew Burk.
|
2017-11-08 12:53:05 +01:00 |
|
Mike Pall
|
e205ad0c55
|
FFI: Fix FOLD rules for int64_t comparisons.
Thanks to Peter Cawley.
|
2017-03-30 11:35:29 +02:00 |
|
Mike Pall
|
b93a1dd0c8
|
Bump copyright date to 2017.
|
2017-01-17 12:35:03 +01:00 |
|
Mike Pall
|
db1b399af1
|
Bump copyright date to 2016.
|
2016-03-03 12:02:22 +01:00 |
|
Mike Pall
|
1f578bd424
|
FFI: Fix FOLD rule for TOBIT + CONV num.u32.
Thanks to Jiale Zhi.
|
2015-03-02 17:34:06 +01:00 |
|
Mike Pall
|
86913b9bbf
|
Bump copyright date to 2015.
|
2015-01-05 23:59:31 +01:00 |
|
Mike Pall
|
e15765186c
|
Fix FOLD rule for string.sub(s, ...) == k.
|
2014-05-20 11:41:32 +02:00 |
|
Mike Pall
|
8a38af2f99
|
Fix FOLD rule for STRREF of SNEW.
|
2014-05-15 17:03:28 +02:00 |
|
Mike Pall
|
ef59e54820
|
Bump copyright date to 2014.
|
2014-01-16 23:10:16 +01:00 |
|
Mike Pall
|
6964a7752a
|
Fix ABC elimination.
|
2014-01-05 16:57:51 +01:00 |
|
Mike Pall
|
474bb21af1
|
Fix ABC elimination.
|
2013-09-14 12:52:51 +02:00 |
|
Mike Pall
|
d686217926
|
Add missing PHI barrier to string.sub(str, a, b) == kstr FOLD rule.
|
2013-05-24 01:28:40 +02:00 |
|
Mike Pall
|
895a8bc91f
|
Tighten requirements for non-default optimization flags.
FOLD is required for FWD/DSE optimizations.
|
2013-04-26 00:54:53 +02:00 |
|
Mike Pall
|
4a44c4ff69
|
Bump copyright date to 2013.
|
2013-02-11 12:54:48 +01:00 |
|
Mike Pall
|
1651684417
|
Add missing FOLD rules for U32 conversions.
|
2013-01-21 16:49:03 +01:00 |
|
Mike Pall
|
fd292c9f26
|
Fix assertion.
|
2012-10-11 21:40:46 +02:00 |
|
Mike Pall
|
5ebe4990ba
|
Add LJ_TARGET_UNALIGNED.
|
2012-10-09 21:42:42 +02:00 |
|
Mike Pall
|
0452e97ba0
|
Add FOLD rules for CONV.int.i8/u8/i16/u16 of KINT.
|
2012-10-09 21:36:56 +02:00 |
|
Mike Pall
|
e013206dd8
|
FFI: ctypeid of ctype object is immutable.
|
2012-09-27 14:48:13 +02:00 |
|
Mike Pall
|
4c882fe714
|
Replace strtod() with builtin string to number conversion.
|
2012-08-25 23:02:29 +02:00 |
|
Mike Pall
|
f2479a9654
|
Minor fixes to FOLD rules.
|
2012-08-20 18:45:50 +02:00 |
|
Mike Pall
|
0dd175d9e7
|
Fix last commit.
|
2012-08-15 21:08:00 +02:00 |
|
Mike Pall
|
ff0a1f3f4e
|
FOLD x / 2^k ==> x * 2^-k.
|
2012-08-15 16:17:34 +02:00 |
|
Mike Pall
|
e8af6e9da4
|
Don't treat all constified cdata content as constant.
|
2012-07-24 14:56:29 +02:00 |
|
Mike Pall
|
4d9c29a78c
|
FFI: Box all accessed or returned enums.
|
2012-07-17 22:22:07 +02:00 |
|
Mike Pall
|
2139c6791f
|
Fix FOLD rule (i-j)-i => 0-j.
Thanks to Thomas Schilling.
|
2012-07-17 21:47:45 +02:00 |
|
Mike Pall
|
c172e7aa30
|
Workaround for MSVC conversion bug (double -> uint32_t -> int32_t).
|
2012-07-17 21:45:49 +02:00 |
|
Mike Pall
|
17d3fc47f3
|
Avoid pesky compiler warnings about C++ keywords (eh?).
|
2012-07-03 13:19:32 +02:00 |
|
Mike Pall
|
a9bf455b96
|
Add HREFK forwarding. Eliminate HREFK guard for TDUP refs.
|
2012-06-28 15:10:52 +02:00 |
|
Mike Pall
|
5032e6d87f
|
FFI: Use CNEWI/FLOAD to box/access ffi.new("int", x) (for varargs).
|
2012-06-04 15:39:16 +02:00 |
|
Mike Pall
|
10ef109eef
|
Bump copyright date to 2012.
|
2012-01-23 22:42:42 +01:00 |
|
Mike Pall
|
455917fa0a
|
Add more FOLD rules for shift + BAND simplifications.
|
2011-10-25 21:16:27 +02:00 |
|
Mike Pall
|
aa502203a6
|
Add missing FOLD rule for CONV.u64.int + sign-extension.
|
2011-10-22 02:03:07 +02:00 |
|
Mike Pall
|
a39aac0445
|
Fix FOLD rule for CONV.flt.num(CONV.num.flt(x)) => x.
|
2011-10-19 01:52:50 +02:00 |
|
Mike Pall
|
270de2d6cc
|
Add missing FOLD rule for integer NEG of constants.
|
2011-10-17 17:21:09 +02:00 |
|
Mike Pall
|
f34ac81e3a
|
Remove unneeded PHI barrier for reassociation of duplicate ops.
|
2011-10-10 20:35:42 +02:00 |
|
Mike Pall
|
8c5935000d
|
Add narrowing of modulo operator.
|
2011-06-03 18:48:02 +02:00 |
|
Mike Pall
|
fff2fb31f9
|
ARM: Don't generate unaligned XLOADs.
|
2011-06-02 01:46:23 +02:00 |
|
Mike Pall
|
7683f39786
|
ARM: Fix math.ldexp() recording and folding.
|
2011-05-27 02:03:02 +02:00 |
|
Mike Pall
|
185554b682
|
ARM: Unify rotates to simplify assembler backend.
|
2011-05-23 20:20:34 +02:00 |
|
Mike Pall
|
28e87d33e9
|
Use common helper functions for unaligned loads.
|
2011-05-09 18:09:29 +02:00 |
|