Commit graph

78 commits

Author SHA1 Message Date
Daniel Kochmański
479400f6fb disassembler: add newly added opcodes to bytecodes disassembler 2025-03-27 22:45:34 +01:00
Daniel Kochmański
32dfca42e5 bytevm: introduce unsafe primops SI:CONS-CAR and SI:CONS-CDR 2025-03-27 22:45:34 +01:00
Marius Gerbershagen
36a9c95c80 tree-wide: use new dpp @"" specifier for constant base strings where appropriate 2021-03-12 19:53:33 +01:00
Marius Gerbershagen
c6b4296bb8 cosmetic: fix some compiler warnings 2020-04-29 20:35:37 +02:00
Marius Gerbershagen
24dcb778cf clean up functions creating base strings from C strings
Make functions behave as documented, remove use of legacy names.
    Fixes #462.
2019-01-07 18:43:55 +01:00
Marius Gerbershagen
25a72ff80a cosmetic: indentation fixes and some comments 2018-06-23 21:37:26 +02:00
Daniel Kochmański
ae7cae404d indent: d-f 2016-05-05 15:24:58 +02:00
Matthew Mondor
8f07cd58d8 The ECL code no longer uses tabulator characters, they were replaced
by spaces.

A custom script was used to insert/replace Emacs and ViM per-file editor
settings according to their type and the new ECL coding style.
2015-09-03 07:35:47 -04:00
Daniel Kochmański
4d19a27424 cosmetic: untabify
Signed-off-by: Daniel Kochmański <dkochmanski@turtle-solutions.eu>
2015-06-21 14:38:20 +02:00
Juan Jose Garcia Ripoll
d1a2ad7a4e Some statements from si::bc-disassemble were written to the wrong stream 2012-12-19 23:29:32 +01:00
Juan Jose Garcia Ripoll
158f4281f7 Fix bytecode disassembler for OP_GO 2012-08-18 20:19:59 +02:00
Juan Jose Garcia Ripoll
e54d9a6173 Rename type_of -> ecl_t_of 2012-07-05 23:07:34 +02:00
Juan Jose Garcia Ripoll
825fc8cbd3 Cnil and Ct are now part of legacy 2012-06-30 23:01:40 +02:00
Juan Jose Garcia Ripoll
52512c15a4 Rename the stp_* and aet_* enumeration names with the ecl_ prefix 2012-06-08 00:12:48 +02:00
Juan Jose Garcia Ripoll
64a9168434 CHARACTERP, BASE_CHAR_P, BASE_CHAR_CODE_P, CODE_CHAR, CHAR_CODE, REAL_TYPE, IMMEDIATE, IMMEDIATE_TAG, FIXNUM_TAG, FIXNUM_MINUSP, FIXNUM_PLUSP, FIXNUMP and fix get the ecl_ prefix 2012-06-06 11:19:55 +02:00
Juan Jose Garcia Ripoll
036cb55928 Fixes to remove warnings about unused variables. Replaced some uses of @(return) with ecl_return*() 2012-04-10 23:20:40 +02:00
Juan Jose Garcia Ripoll
5909bb0621 Removed debug statement. 2012-02-09 23:37:01 +01:00
Juan Jose Garcia Ripoll
f873e36de1 Fixed typo in disassemble (Jerry James) 2012-02-06 22:13:50 +01:00
Juanjo Garcia-Ripoll
a3726a2ecc Changed the bytecodes compiler so that constants are stored in a vector and are shared by the main form and all its children (functions) 2012-02-06 17:06:14 +01:00
Juan Jose Garcia Ripoll
20d5b17948 Disassembler for missing code OP_EXIT_PROGV 2011-03-27 23:36:55 +02:00
Juan Jose Garcia Ripoll
4fd77c7963 Fixed disassembly of OP_CSET 2011-02-27 16:21:01 +01:00
Juan Jose Garcia Ripoll
0a7f39449a Added the possibility of compiling load-time forms in the interpreter, when :load-toplevel is active. 2011-02-26 23:56:57 +01:00
Juan Jose Garcia Ripoll
c83303354c Wrong size of bytecodes when splitting the bytecodes 2011-02-04 22:56:37 +01:00
Juan Jose Garcia Ripoll
1a775ca835 SI:BC-SPLIT and SI:BC-JOIN now as means to deconstruct and join a bytecodes object. 2011-02-04 21:52:05 +01:00
Juan Jose Garcia Ripoll
f682dda3f4 Functions can now carry information about the source file and its position. 2009-06-07 01:14:16 +02:00
Juan Jose Garcia Ripoll
77cde5c2f8 Several fixes for various compiler warnings. 2009-06-07 00:02:49 +02:00
Juan Jose Garcia Ripoll
03ed288a85 New bytecodes for parsing the arguments of an interpreted function. 2009-02-21 00:07:16 +01:00
Juan Jose Garcia Ripoll
70c64f9652 The macros/functions for accessing and changing symbol values require an environment value. 2008-10-12 16:44:29 +02:00
Juan Jose Garcia Ripoll
5a41a55a2d Since dpp now generates code that uses 'the_env', it has to be defined in functions that use @(return) 2008-10-11 23:47:40 +02:00
Juan Jose Garcia Ripoll
98b4e216e8 Split an opcode for actual frame creation from those for frame identification. 2008-06-22 16:44:34 +02:00
Juan Jose Garcia Ripoll
38d4306a09 si::bc-disassemble did not know about OP_[P]INT 2008-06-22 11:13:54 +02:00
Juan Jose Garcia Ripoll
29c45b2c89 Extend c_new_env as a step towards changing the lexical environments. 2008-06-18 10:43:34 +02:00
Juan Jose Garcia Ripoll
a8c7c95ef0 Simplify the interpreter code for calling functions 2008-06-17 19:46:18 +02:00
Juan Jose Garcia Ripoll
cb9939d6c0 Separate lisp objects for functions with fixed and variable # arguments 2008-06-16 23:09:21 +02:00
Juan Jose Garcia Ripoll
34c363cc9f Avoid using FORMAT when it has not been defined. 2008-06-15 23:05:29 +02:00
Juan Jose Garcia Ripoll
5ef5df4135 Turn the macros in bytecodes.h into standalone forms that output no value. This restriction allows us to have more complex code in them. 2008-06-15 19:17:42 +02:00
Juan Jose Garcia Ripoll
9e210529e8 Split OP_MSETQ into OP_VSETQ and OP_VSETQS. 2008-06-15 10:50:32 +02:00
Juan Jose Garcia Ripoll
846d79dce3 Implement bytecodes for calling functions with 1 and 2 arguments. 2008-06-15 00:35:21 +02:00
Juan Jose Garcia Ripoll
2020fe6966 Optimize some common lisp functions 2008-06-14 22:07:20 +02:00
Juan Jose Garcia Ripoll
21fafd42dc Introduce bytecode closure objects to save space in FLET/LABELS forms 2008-06-11 23:49:38 +02:00
Juan Jose Garcia Ripoll
b208e43f34 Revert to the old code for multiple-value-setq 2008-06-11 20:15:14 +02:00
Juan Jose Garcia Ripoll
3453e6d56c More compact format for bytecodes OP_FLET/LABELS 2008-06-10 19:50:21 +02:00
Juan Jose Garcia Ripoll
33861197f3 Split operator MSETQ into VSETQ and VSETQS. 2008-06-09 19:19:25 +02:00
Juan Jose Garcia Ripoll
2ac39d71bb Removed global environment field cl_env.lex_env 2008-06-08 20:30:35 +02:00
jgarcia
e418eeb8e7 Improved presentation of interpreted forms in the backtraces. These forms can now be inspected. 2008-05-22 11:15:58 +00:00
jgarcia
b4e1916be1 Let interpreted forms remember the file they come from 2008-04-22 12:29:44 +00:00
jgarcia
5ef5d32e74 Enforce indent and mode conditions on files 2008-01-26 10:30:41 +00:00
jgarcia
aa3dfe4058 Prefix most functions with 'ecl_' to avoid name collisions when embedding ECL in other libraries 2007-01-18 11:46:07 +00:00
jgarcia
fa937337f8 Some lisp functions with non-standard names (base-char-p, base-string) are renamed and moved to the SYS package. socket.lsp fixed to understand base strings. limited support for arbitrary strings in string streams. 2006-05-29 08:51:28 +00:00
jgarcia
ff0be77070 Support for unicode strings as data structure (no clever handling of characters yet) contributed by Brian Spilsbury. 2006-05-29 08:51:21 +00:00