Commit graph

688 commits

Author SHA1 Message Date
Juan Jose Garcia Ripoll
bd7b3fd6d8 The automatic generation of check-type forms for function arguments could not be suppressed when having additional declarations (src/cmp/cmplam.lsp) 2009-11-30 12:55:41 +01:00
Juan Jose Garcia Ripoll
bc302c2acf The optimizer for TYPEP did not work when passed three arguments. 2009-11-29 22:40:45 +01:00
Juan Jose Garcia Ripoll
2c3feb09d5 Provide compiler macros for the slot accessors of the root classes. 2009-11-29 22:00:29 +01:00
Juan Jose Garcia Ripoll
cf1ff95534 Provide inline forms for SI:INSTANCE-SET and MP:LOCK-COUNT. 2009-11-29 21:59:15 +01:00
Juan Jose Garcia Ripoll
e9644a5092 src/clos/cmpclos.lsp: maybe-optimize-slot-accessor tried to optimize generic
function calls to functions that are not slot readers / writers.
2009-11-27 22:05:55 +01:00
Juan Jose Garcia Ripoll
a0017d2185 Patch for tracker bug ID: 2900631. Losing non-primary values in compiled, proclaimed function calls (Abhishek) 2009-11-19 20:21:39 +01:00
Juan Jose Garcia Ripoll
0b3075cb96 src/cmp/cmpmulti.lsp: c1multiple-value-bind replaces multiple-value-bind with a let form when there is only one variable to be bound. 2009-11-14 18:00:56 +01:00
Juan Jose Garcia Ripoll
3447e860eb src/cmp/cmpmain.lsp: in C:BUILDER, when using SI:SAFE-EVAL to execute the prologue and epilogue codes, allow by default to start up the debugger. 2009-11-14 10:49:54 +01:00
Juan Jose Garcia Ripoll
6c380fba8e Remove debug statement. 2009-11-09 20:19:22 +01:00
Juan Jose Garcia Ripoll
a316938550 EXT:QUIT now stores the exit code of the program and this is returned by standalone executables. 2009-11-09 10:12:45 +01:00
Juan Jose Garcia Ripoll
18f5cf2d92 The IGNORE/IGNORABLE declarations accept (but ignore) arguments of the for (FUNCTION function-name). 2009-11-08 16:39:19 +01:00
Juan Jose Garcia Ripoll
e44656e9bb src/cmp/cmpmain.lsp: when building a standalone executable, wrap everything with a CL_CATCH_ALL to provide an exit point for EXT:QUIT and also to protect from unwanted transfers of control. 2009-11-08 15:38:33 +01:00
Juan Jose Garcia Ripoll
8e9c6dcad6 ECL's compiler now interprets the IGNORABLE declaration. 2009-11-07 23:12:57 +01:00
Juan Jose Garcia Ripoll
6e7caff184 The :prologue-code in cmp:builder is now executed after cl_boot() and it can be lisp code. 2009-11-01 02:38:36 +01:00
Juan Jose Garcia Ripoll
5a35ce22df When creating a unified fasl, the init function name has to be exported outside the DLL. In cygwin this means adding ECL_DLLEXPORT to +lisp-program-init+. 2009-10-29 14:30:40 +01:00
Juan Jose Garcia Ripoll
a5d5c7d3f6 src/cmp/cmpmain.lsp: clean up the files we create (*.c, *.h) before writing onto them. 2009-10-05 15:54:46 +02:00
Juan Jose Garcia Ripoll
fe000b075a src/cmp/cmpmain.lsp: silence the program "mt" that embeds the manifest in a Windows executable. 2009-10-05 12:12:05 +02:00
Juanjo
bedd620359 src/cmp/cmpmain.lsp: in Windows, embed the manifest file into the executable, dll or fasl, and delete any other automatically generated files (*.exp, *.lib, etc). 2009-10-05 11:00:50 +02:00
Juan Jose Garcia Ripoll
260853ef0a QUIT now unwinds all forms before exiting. In addition it can kill all existing threads. 2009-09-13 20:46:21 +02:00
Juan Jose Garcia Ripoll
ca6198d753 Reimplement with-lock so that it is interrupt-safe. 2009-09-04 23:12:36 +02:00
Juan Jose Garcia Ripoll
4a3349a9f2 Implemented weak pointers. 2009-09-03 16:54:25 +02:00
Juan Jose Garcia Ripoll
e434ebc3aa cmpmain.lsp: ensure that MKSTEMP did not fail or otherwise print a meaningful message 2009-08-31 15:23:10 +02:00
Juan Jose Garcia Ripoll
95ac61115c ECL was still using the deprecated c_string_to_object 2009-08-29 10:53:54 +02:00
Juan Jose Garcia Ripoll
900b20c75f The inline form for SQRT was used even for boxed values. 2009-08-12 11:56:23 +02:00
Juan Jose Garcia Ripoll
6496d98d23 There was still one place in C:BUNDLE-CC where command line arguments were not surrounded by double quotes - this caused problems when the output file had spaces. 2009-08-12 10:25:45 +02:00
Juan Jose Garcia Ripoll
085a5a4388 Implement a new configuration flag, --enable-rpath. 2009-08-10 23:23:16 +02:00
Juan Jose Garcia Ripoll
f33a082b14 Fixed a bug in the compiler expansion of COS, SIN and TAN. 2009-08-10 16:56:05 +02:00
Juan Jose Garcia Ripoll
3b412f3b3a Relax coercion errors. Sometimes lousy programmers just leave code branches that are
not going to be executed and will cause the wrong type.
2009-08-04 19:28:44 +02:00
Juan Jose Garcia Ripoll
e3f42a5c49 Make ECL less verbose in its messages, eliminating certain notes and the note context when this is too imprecise. 2009-08-04 11:22:45 +02:00
Juan Jose Garcia Ripoll
f2625c0330 Changed SI:SAFE-EVAL so that when a third value is supplied, it does not set up a condition handler. 2009-08-03 22:11:49 +02:00
Juan Jose Garcia Ripoll
185cc872f1 Removed reference to ecl_elt_unsafe() which is no longer defined. 2009-08-03 19:41:53 +02:00
Juan Jose Garcia Ripoll
7195468eec Completed the implementation of SI:SAFE-EVAL and SI:STRING-TO-OBJECT 2009-07-31 23:16:03 +02:00
Juan Jose Garcia Ripoll
c794d20f30 The constants used in COMPILE are now assigned in read_VV, not in the compiled code. 2009-07-27 21:37:51 +02:00
Juan Jose Garcia Ripoll
c8b87cb180 Inline expanders for array-has-fill-pointer-p and adjustable-array-p 2009-07-26 12:38:50 +02:00
Juan Jose Garcia Ripoll
5aff005c35 Do not create varargs C variable when it is not used. 2009-07-26 12:38:31 +02:00
Juan Jose Garcia Ripoll
92d5aac5eb We cannot build MSVC with debug information on variables because the compiler does not allow us to statically initialize arrays/vectors of the ecl_array/ecl_vector type 2009-07-24 20:26:09 +02:00
Juan Jose Garcia Ripoll
a0f06986b1 Fixed error in proclamation of si:get-sysprop. 2009-07-24 20:12:28 +02:00
Juan Jose Garcia Ripoll
7a08ed15ab We cannot build statically allocated arrays with the Microsoft compiler. 2009-07-24 19:55:57 +02:00
Juan Jose Garcia Ripoll
efc4505d58 The ld-format variable can not use tilde-question-mark format because the remaining linker options may contain tildes (happens in Windows) and be misunderstood as format commands 2009-07-24 15:58:45 +02:00
Juan Jose Garcia Ripoll
69725f20c6 The compiler now emits more accurate conversions from and to C types using the new functions (See CHANGELOG for the problem solved) 2009-07-15 15:19:43 +02:00
Juan Jose Garcia Ripoll
bfb6e2cef7 Remove debug statement 2009-07-13 23:49:26 +02:00
Juan Jose Garcia Ripoll
55eeb0e955 Remove debug statement 2009-07-13 23:48:52 +02:00
Juan Jose Garcia Ripoll
99cdc4dae7 CALL-GLOBAL-LOC used the values type of a c1form instead of the primary type and thus no safe inline form from sysfun.lsp matched any reasonable expansion. 2009-07-13 12:06:01 +02:00
Juan Jose Garcia Ripoll
c8118dd93c The utility functions for ENSURE-*-TYPE returned the argument type in the third and not in the second value (cmpnum.lsp) 2009-07-13 11:48:49 +02:00
Juan Jose Garcia Ripoll
f80bb43e28 In the type propagator for ISQRT, remove the circular reader forms. 2009-07-12 23:52:59 +02:00
Juan Jose Garcia Ripoll
eb4b073e8b CIS, ASIN, ACOS, ASINH, ACOSH and ATANH now use the calling convention for functions with a fixed number of arguments 2009-07-12 23:47:24 +02:00
Juan Jose Garcia Ripoll
f5c03a9638 Fixed a couple of typos in the new type propagations for special functions 2009-07-12 23:46:45 +02:00
Juan Jose Garcia Ripoll
88498d35f5 Type propagators now work with type names, not with C1FORMS (More general and will allow caching in the future). Implemented type propagators for COS, SIN, TAN, COSH, SINH, TANH, ATAN, SQRT, ABS, ISQRT, LOG, EXP, EXPT. 2009-07-12 20:16:23 +02:00
Juan Jose Garcia Ripoll
2657f3b9d0 Added proclamation for CIS. Made proclamation of LOG and ATAN more precise. 2009-07-12 20:14:16 +02:00
Juan Jose Garcia Ripoll
65635f1452 Minor read-only annotations in cmpopt.lsp 2009-07-09 23:31:50 +02:00