mirror of
https://gitlab.com/embeddable-common-lisp/ecl.git
synced 2025-12-06 02:40:26 -08:00
C inline information is saved in +default-machine+, which was previously a constant. However, the value assigned to +default-machine+ is recomputed during load and compile time. Technically, assigning a constant a new value which is not eql to the old one is undefined behaviour in the ANSI standard. What ECL did was simply to reassign the constant when compiling cmpc-machine.lsp. However, this meant that the inline information which was added to +default-machine+ when loading sysfun.lsp was lost. Thus, all ECL source files compiled after cmpc-machine.lsp were compiled without inline information. We prevent this by using an ordinary variable *default-machine* instead of a constant. |
||
|---|---|---|
| .. | ||
| cl-simd.asd | ||
| cl-simd.texinfo | ||
| ecl-sse-core.lisp | ||
| ecl-sse-utils.lisp | ||
| LICENSE | ||
| README | ||
| sbcl-arrays.lisp | ||
| sbcl-core.lisp | ||
| sbcl-functions.lisp | ||
| sse-array-defs.lisp | ||
| sse-intrinsics.lisp | ||
| sse-package.lisp | ||
| sse-utils.lisp | ||
| test-sfmt.lisp | ||
This module implements SSE intrinsic functions for ECL and SBCL.
NOTE: CURRENTLY THIS SHOULD BE CONSIDERED EXPERIMENTAL, AND
SUBJECT TO INCOMPATIBLE CHANGES IN A FUTURE RELEASE.
Since the implementation is closely tied to the internals of
the compiler, it should normally be obtained exclusively via
the bundled contrib mechanism of the above implementations.