Juan Jose Garcia Ripoll
43dd4b50fa
In C-INLINE forms, ## is replaced with a single hash # character.
2010-10-17 16:49:45 +02:00
Juan Jose Garcia Ripoll
24b9f04161
ECL captures SIGPIPE
2010-10-17 16:49:13 +02:00
Juan Jose Garcia Ripoll
69f87e41d3
ECL now waits for its signal handling thread to start so that quitting becomes safe.
2010-10-17 15:14:20 +02:00
Juan Jose Garcia Ripoll
bd0fba96fc
The new reader and printer routines are incorporated into the MSVC port
2010-10-17 14:45:10 +02:00
Juan Jose Garcia Ripoll
4f23ce577c
Ported SBCL's FLONUM-TO-STRING to ECL's core (in C).
...
New function INTEGER-TO-STRING added to ECL's core.
Both FLOAT-TO-STRING and INTEGER-TO-STRING are used in ECL's printer.
FORMAT uses ECL's new FLOAT-TO-STRING.
2010-10-17 14:38:47 +02:00
Juan Jose Garcia Ripoll
f8c9558a5d
SI:ARRAY-ELEMENT-TYPE-BYTE-SIZE now accepts an array instead of a type (A Gavrilov)
2010-10-14 09:50:45 +02:00
Juan Jose Garcia Ripoll
98c08821c6
Simplify the decision on when to inline -/+/*... fixing a problem with single-argument negation
2010-10-11 11:20:54 +02:00
Juan Jose Garcia Ripoll
e1d0e28890
Fixed typo in expansion of AREF for (SIGNED-BYTE 64)
2010-10-10 22:55:28 +02:00
Juan Jose Garcia Ripoll
7fae69de9d
Include the current directory in the list of search paths for the C compiler
2010-10-06 09:48:35 +02:00
Juan Jose Garcia Ripoll
06759cf68f
Fixed typo
2010-10-04 23:28:42 +02:00
Juan Jose Garcia Ripoll
6fd15dac1b
The names of the programs ranlib and ar are no longer hardcoded in ECL (Gabriel Dos Reis). Names of C files, headers and other files are output in brief form using enough-namestring.
2010-10-04 21:49:46 +02:00
Juan Jose Garcia Ripoll
29f46d0387
Added contributed cl-simd module by Alexander Gavrilov
2010-10-03 23:49:58 +02:00
Alexander Gavrilov
0b0c437281
Add a contrib module with SSE intrinsic definitions.
...
Define wrappers for SSE intrinsics that make sense for
lisp usage. Also implement a set of convenience macros
to fill holes in the coverage of operations like bitwise
not or unary negation.
2010-10-03 23:45:49 +02:00
Alexander Gavrilov
12fb30c0a9
Make unboxed SSE pack variables visible in the debugger.
...
Add location type tags and make the compiler use them.
2010-10-03 23:45:02 +02:00
Alexander Gavrilov
1c3d729ef5
Add a special variable to control printing of SSE packs.
...
Valid values: NIL, :int, :float, :double.
Non-NIL values override the type tag carried by the pack.
2010-10-03 23:44:31 +02:00
Alexander Gavrilov
03049ee7e2
Make boxed SSE packs untyped for all purposes but printing.
...
Now the following rules hold:
- (type-of pack) = SSE-PACK
- (typep pack '*-SSE-PACK) = T
The compiler is tweaked to unbox unidentified packs as
__m128i (integer), assuming that a cast would be inserted
later if that is not what was needed.
2010-10-03 23:43:52 +02:00
Alexander Gavrilov
8f835233d6
Enable automatic coercion of SSE subtypes via _mm_cast* intrinsics.
...
Assume that any sse-pack subtype matches any other one in inline
expansion matcher, and insert casts when required.
This uses intrinsics that are present only in the recent versions
of compilers, so add fallback inline definitions to a header file.
2010-10-03 23:42:57 +02:00
Alexander Gavrilov
2f4723012e
Open-code array-row-major-index too if enabled for aref/aset.
...
This should make manually expanded index computations faster.
2010-10-03 23:41:33 +02:00
Juan Jose Garcia Ripoll
46785eafe9
Fixed substitution of SSE2 in msvc/ecl/config.h.msvc6
2010-10-03 23:40:10 +02:00
Juan Jose Garcia Ripoll
87891b763e
Fixes for cross compilation of ECL (A Vodonosov)
2010-10-03 23:36:55 +02:00
Juan Jose Garcia Ripoll
9b88831357
Install dpp with +x flags
2010-10-03 23:29:53 +02:00
Juan Jose Garcia Ripoll
c96650531c
When dlopen and friends fail, the cblock got inserted in the library list (A Gavrilov)
2010-10-03 23:22:31 +02:00
Juan Jose Garcia Ripoll
91e61db455
Enable long double by default
2010-10-03 22:32:20 +02:00
Juan Jose Garcia Ripoll
585b1c8c95
ecl.exe and libeclmin.a depend on the lisp and C sources.
2010-10-03 22:32:03 +02:00
Juan Jose Garcia Ripoll
deaef70e52
Fixed use of AC_CONFIG_AUX_DIR
2010-10-03 22:17:22 +02:00
Juan Jose Garcia Ripoll
0270afbb05
Rounding routines ratio_to_double, ratio_to_long_double, were missing code for the situation when the argument is not a fixnum
2010-10-03 15:54:29 +02:00
Samium Gromoff
ef0b0add8f
Fix configure not picking up win32 threads on MinGW
2010-10-03 10:21:28 +02:00
Samium Gromoff
b999a2c8fb
Fix gc.h stomping over _beginthread() declaration and other MinGW issues
2010-10-03 10:18:26 +02:00
Juan Jose Garcia Ripoll
c2d8e70d1b
In LET/LET* forms, a local binding did not shadow a special variable binding.
...
> (defun test ()
(let ((a 5))
(declare (special a))
(flet ((x () a))
(let ((a 10))
(x)))))
> (test)
5
> (compile 'test)
> (test)
10
2010-09-28 23:42:15 +02:00
Juan Jose Garcia Ripoll
0180c8b0a7
Optimized LOOP-REPEAT to have the same quality of code as in LOOP-FOR-IN
2010-09-27 10:25:22 +02:00
Juan Jose Garcia Ripoll
33a9087056
Optimization policies were overwritten by its own code, not being available in a fresh new image.
2010-09-27 10:24:48 +02:00
Juan Jose Garcia Ripoll
145e0e6ec2
The C inliner always inlined forms whose return type matched exactly, even when POLICY-ASSUME-RIGHT-TYPE was false
2010-09-27 10:24:04 +02:00
Juan Jose Garcia Ripoll
04c2a210b3
ecl_parse_number and ecl_parse_integer are splitted into separate files and do not rely on the C library (atoi, strtod, ...) because these functions are affected by the locale.
2010-09-27 10:23:13 +02:00
Juan Jose Garcia Ripoll
655809781a
Rounding of bignums in ecl_to_double() did not work (GMP truncates).
2010-09-27 00:35:02 +02:00
Juan Jose Garcia Ripoll
f53e1fc768
After recompiling cmppolicy the declaration specifiers were lost.
2010-09-22 00:03:23 +02:00
Juan Jose Garcia Ripoll
a14a97e9b7
In LOOP REPEAT avoid using DECF
2010-09-21 09:42:20 +02:00
Juan Jose Garcia Ripoll
8046f644dd
LOOP REPEAT recognizes the type of the iterator variable
2010-09-21 09:31:15 +02:00
Juan Jose Garcia Ripoll
09ae1f43c0
Fixed type warning in macroexpansion of sequece iterators
2010-09-21 09:25:26 +02:00
Juan Jose Garcia Ripoll
bd4f3597ed
Unix signals reported as continuable errors
2010-09-21 09:18:22 +02:00
Juan Jose Garcia Ripoll
c2661518a9
The compiler no longer interferes with the debugger hooks.
2010-09-21 09:12:52 +02:00
Juan Jose Garcia Ripoll
294a4280c6
MAKE-ARRAY did not check the type of its first argument
2010-09-12 15:06:38 +02:00
Juan Jose Garcia Ripoll
2ff3ebe751
Fixing file name cases to work with Wine (G. Dos Reis)
2010-09-12 15:00:00 +02:00
Juan Jose Garcia Ripoll
1af0162b6f
The compiler package is now part of the ones that are built in
2010-09-12 09:58:33 +02:00
Juan Jose Garcia Ripoll
9904da236e
When computing the init name of a compiled module, use the physical namestring
2010-09-12 09:57:48 +02:00
Juan Jose Garcia Ripoll
1245e5e8a0
Allow embedding ASDF in monolithic executables
2010-09-12 09:57:32 +02:00
Juan Jose Garcia Ripoll
c4dd32ca96
Third iteration at the problem with packages_to_be_created. Now this variable is associated to a flag that deactivates its use outside read_VV's reader.
2010-09-05 22:43:49 +02:00
Juan Jose Garcia Ripoll
e42b76c2f7
Another iteration in the reader package handling
2010-09-04 16:04:41 +02:00
Juan Jose Garcia Ripoll
c4af381d02
Detection of missing packages in the reader was accidentally deactivated.
2010-08-30 11:20:07 +02:00
Juan Jose Garcia Ripoll
1ec501768e
Initial support for WIN64
2010-08-28 23:52:23 +02:00
Juan Jose Garcia Ripoll
6e90253faf
Fixed compiler warnings
2010-08-24 17:32:22 +02:00