diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2024-04-05 18:35:26 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2024-04-05 18:35:26 -0700 |
commit | 71a54d56ce48a1708e94f6010c4de3cb28c19ab2 (patch) | |
tree | 588cda7646a5f119e65ae930655567ee42049aa3 /lex.yy.c.patch | |
parent | 9ef7c34980354ca2a3cabd1e01aa82f96a8e00a0 (diff) | |
download | txr-71a54d56ce48a1708e94f6010c4de3cb28c19ab2.tar.gz txr-71a54d56ce48a1708e94f6010c4de3cb28c19ab2.tar.bz2 txr-71a54d56ce48a1708e94f6010c4de3cb28c19ab2.zip |
compiler: update list of constant and effect-free functions.
* stdlib/constfun.tl (%const-foldable-funs%): Numerous
functions added, mostly new ones.
(%effect-free-funs%): Indentation fixed. Some functions
added, but also removed. We don't want anything in here that
could take a functional argument. The optimizer will blindly
a call to an effect-free function, if its result is not
used, regardless of what the arguments are. It won't take into
consideration that there is a functional argument, which could
be a function that has a side effect, and that is called
by the supposedly effect-free function. So for instance, sort
is out; the comparison or key functions could have side effects.
We could put these functions into a special category.
Diffstat (limited to 'lex.yy.c.patch')
0 files changed, 0 insertions, 0 deletions