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
Juan Jose Garcia Ripoll
bee95fc949
Small typo in windows thread status detection that only affects WIN64.
2010-08-23 12:54:28 +02:00
Juan Jose Garcia Ripoll
2e0b4d2135
More places where ECL_MS_WINDOWS_HOST should be used instead of _MSC_VER
2010-08-22 23:50:41 +02:00
Juan Jose Garcia Ripoll
d429aa28f3
windows.h is needed also for mingw in alloc_2.d
2010-08-22 23:15:20 +02:00
Juan Jose Garcia Ripoll
f4f846b928
In some files windows.h was included before ecl.h
2010-08-22 23:02:52 +02:00
Juan Jose Garcia Ripoll
ab6f5dc64e
Add the definition of ECL_MS_WINDOWS_HOST to MSVC's config.h
2010-08-22 22:30:14 +02:00
Juan Jose Garcia Ripoll
5c63cd8345
When compiling for the Windows API, define ECL_MS_WINDOWS_HOST instead of checking for mingw or _MSC_VER separately (Gabriel Dos Reis)
2010-08-22 22:29:21 +02:00
Juan Jose Garcia Ripoll
fb2c950202
Use GMP_CPPFLAGS in src/util/ecl-config
2010-08-22 22:29:18 +02:00
Juan Jose Garcia Ripoll
03fd191528
Fixed --with-gmp-prefix, which should modify CPPFLAGS not CFLAGS.
2010-08-22 22:28:24 +02:00
Juan Jose Garcia Ripoll
e4262ab3d8
Fixed declaration for _ecl_big_set_fixnum/index (Gabriel Dos Reis). Added those functions to the core in all cases.
2010-08-22 21:53:50 +02:00
Juan Jose Garcia Ripoll
a9a412d1b4
Fixed typo in condition initarg name.
2010-08-22 20:35:38 +02:00
Juan Jose Garcia Ripoll
4518b18892
Rewrite var-changed-in... because it was missing special variables without explicit references
2010-08-22 01:07:32 +02:00
Juan Jose Garcia Ripoll
a677a3b0c0
Rename features.h -> ecl_features.h because Linux has a header with the same name
2010-08-21 22:46:03 +02:00
Juan Jose Garcia Ripoll
321356dadf
cl_core is now mostly filled statically in main.d
2010-08-21 16:31:42 +02:00
Juan Jose Garcia Ripoll
ca6e9168cb
Fixed two small typos
2010-08-21 16:31:23 +02:00
Juan Jose Garcia Ripoll
bac154bc98
More of the string constants that are used in main.d are now statically allocated.
2010-08-21 13:25:16 +02:00
Juan Jose Garcia Ripoll
b400db086b
Avoid consing when creating the package names.
2010-08-21 12:08:48 +02:00
Juan Jose Garcia Ripoll
b9b648e16e
The default rehash size and threshold are now static constants.
2010-08-21 11:53:33 +02:00
Juan Jose Garcia Ripoll
b54f17085c
New condition for Unix signals.
2010-08-20 23:41:30 +02:00
Juan Jose Garcia Ripoll
dc2ce379ec
Make the SSE2 feature optional.
2010-08-20 21:07:01 +02:00
Alexander Gavrilov
8ed8a8e807
Add a function for retrieving the array element size in bytes.
...
This information is necessary for various alignment needs and
other low-level memory manipulation. For bit it returns a ratio.
2010-08-20 20:29:04 +02:00
Alexander Gavrilov
7c7a40e4bd
Add a function for computing the pointer to a row-major-aref item.
...
This is necessary for open-coding the actual array access, while
keeping the array object type and index bound check. The array
element type is not checked; instead the function ensures that the
specified number of bytes at the returned ptr are within bounds.
2010-08-20 20:29:03 +02:00
Alexander Gavrilov
dcf08cd6c0
Warn about automatic boxing of SSE values in the compiler.
...
Since the whole point of SSE is high performance, boxing
defeats the purpose and should be immediately flagged.
Also enable marking functions so that the compiler warns
if they are not inlined.
2010-08-20 20:29:03 +02:00
Alexander Gavrilov
5088dd10b5
Implement compilation of SSE packed vector constants.
...
The constants are dumped as static C constants, with
data represented as integer byte values. This should
provide optimal performance and exact equality.
2010-08-20 20:29:03 +02:00
Alexander Gavrilov
c348b6f948
Implement boxing and unboxing of SSE values in the compiler.
...
This makes the SSE types marginally usable via c-inline:
(defun foo (xx yy)
(let ((sum (ffi:c-inline
(xx yy) (:float-sse-pack :float-sse-pack)
:float-sse-pack
"_mm_add_ps(#0,#1)" :one-liner t)))
(ffi:c-inline (sum) (:float-sse-pack) :float-sse-pack
"_mm_mul_ps(#0,_mm_set1_ps(3.0))" :one-liner t)))
2010-08-20 20:29:03 +02:00
Alexander Gavrilov
ce2badff90
Add the boxed SSE packed vector types.
...
Boxing SSE values is useless performance-wise, but necessary
to provide continuity between compiled and interpreted code.
This set of types is peculiar in that while the actual CPU
instruction set mostly does not care about the data types
(although mixing commands for ints and floats leads to
some performance degradation), the C intrinsic function
interface does distinguish the types to some extent.
Thus it also has to be represented in the ECL compiler.
2010-08-20 20:29:03 +02:00
Juan Jose Garcia Ripoll
7178a288a6
Slight reorganization in RENAME-FILE
2010-08-20 20:21:54 +02:00
Juan Jose Garcia Ripoll
ed8dbe4c13
(EXPT 2 -2.0d0) is now computed in double precision.
2010-08-20 20:19:51 +02:00
Juan Jose Garcia Ripoll
ee5dcec824
Change RENAME-FILE so that it does not use link/unlink. This way it can move directories
2010-08-19 23:29:28 +02:00
Juan Jose Garcia Ripoll
8440e9d0c4
Fixed typo.
2010-08-18 23:07:03 +02:00
Juan Jose Garcia Ripoll
6a1a28f343
Fixed typo.
2010-08-18 23:07:03 +02:00
Juan Jose Garcia Ripoll
e83bd3dfb4
Unboxed type SHORT-FLOAT removed from the core.
2010-08-17 19:47:14 +02:00
Juan Jose Garcia Ripoll
0e3b1c389f
Replace some more uses of mpz_set_si/ui with _ecl_big_set_fixnum/index
2010-08-17 19:47:13 +02:00
Juan Jose Garcia Ripoll
680bd6988c
If ECL is too small, long long can be used for cl_fixnum
2010-08-17 19:47:13 +02:00
Juan Jose Garcia Ripoll
5d76e2e302
Simplify integer type tests using Autoconf's ones (G. Dos Reis)
2010-08-11 23:53:26 +02:00
Juan Jose Garcia Ripoll
2f1e68128e
Fixed proclamation for compiled-function-file.
2010-07-31 13:34:26 +02:00
Juan Jose Garcia Ripoll
557221c97e
FINISH-OUTPUT was not defined for FILE streams
2010-07-28 23:14:19 +02:00