fix another Mach-O FFI problem
parent
b15a262e54
commit
9d2e4a77a6
34
CHANGES.html
34
CHANGES.html
|
|
@ -17,6 +17,7 @@
|
|||
<li>Stack shuffles are compiled more efficiently.</li>
|
||||
<li>Pushing literals on either side of a stack shuffle is now compiled more efficiently.</li>
|
||||
<li>Fixed a problem with relocation of compiled code on PowerPC.</li>
|
||||
<li>Fixed various FFI issues on Mac OS X.</li>
|
||||
</ul>
|
||||
|
||||
</li>
|
||||
|
|
@ -24,7 +25,7 @@
|
|||
<li>User interface:
|
||||
|
||||
<ul>
|
||||
|
||||
<li>Graphics rendering is now done using OpenGL and text rendering is done via FreeType. SDL_gfx and SDL_ttf libraries are no longer required.</li>
|
||||
<li>Added expandable outliners. Used by the inspector, <code>.s</code>, <code>usage.</code>, <code>uses.</code>, <code>vocabs.</code>, and various other words.</li>
|
||||
<li>Added word completion to the listener pane; press <code>TAB</code>.</li>
|
||||
<li>Added word navigation shortcuts to the listener pane; press <code>C+LEFT</code> and <code>C+RIGHT</code> to move a word at a time, and <code>C+BACKSPACE</code> and <code>C+DELETE</code> to delete the previous and next word, respectively.</li>
|
||||
|
|
@ -51,29 +52,9 @@ prefix removed.</li>
|
|||
<li>Everything else:
|
||||
|
||||
<ul>
|
||||
<li>Quaternions added to math library.
|
||||
|
||||
Quaternions are represented as pairs of real numbers. Literal syntax is <code>Q{ a b c d }Q</code>, where <code>a</code>, <code>b</code>, <code>c</code> and <code>d</code> are real numbers.
|
||||
|
||||
Many quaternion operations can be done using Factor's existing vector algebra words; this follows from the mathematical fact that the quaternions are a 2-dimensional vector space over the complex numbers:
|
||||
<ul>
|
||||
<li>Addition: <code>v+</code></li>
|
||||
<li>Subtraction: <code>v-</code></li>
|
||||
<li>Negation: <code>vneg</code></li>
|
||||
<li>Norm: <code>norm</code></li>
|
||||
<li>Multiplication by a complex number on the left: <code>n*v</code></li>
|
||||
</ul>
|
||||
A few new words are also needed:
|
||||
<ul>
|
||||
<li>Convert complex number to quaternion: <code>c>n</code></li>
|
||||
<li>Multiply by a complex number on the right: <code>q*n</code></li>
|
||||
<li>Quaternion multiplication: <code>q*</code></li>
|
||||
<li>Quaternion division: <code>q/</code></li>
|
||||
<li>Quaternion conjugate: <code>qconjugate</code></li>
|
||||
</ul>
|
||||
|
||||
</li>
|
||||
|
||||
<li>On Mac OS X, signal 11 errors caused by stack under/overflow no longer trigger the
|
||||
OS X crash reporter dialog.</li>
|
||||
<li>Easier exception handling. The <code>cleanup ( try cleanup -- )</code> word encapsulates the following idiom:
|
||||
<pre>
|
||||
[ A ] [ B rethrow ] catch
|
||||
|
|
@ -105,7 +86,12 @@ However, most uses of <code>catch</code> can be replaced by <code>cleanup</code>
|
|||
|
||||
<li>Intel 8080 CPU and Space Invaders emulator in <code>contrib/space-invaders</code> (Chris Double)</li>
|
||||
<li>AOL Instant Messenger chat client library in <code>contrib/aim</code> (Doug Coleman)</li>
|
||||
<li>Cairo graphics library binding in <code>contrib/cairo</code> (Sampo Vuori)</li>
|
||||
<li>Cairo graphics library binding in <code>contrib/cairo</code>. (Sampo Vuori)</li>
|
||||
<li>New <code>contrib/math/</code> library with quaternions, matrices, polynomials, and various
|
||||
advanced mathematical functions. (Doug Coleman)</li>
|
||||
</ul>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</li>
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ kernel-internals lists math memory namespaces words ;
|
|||
: compile-c-call ( symbol dll -- )
|
||||
2dup dlsym 11 LOAD32 0 1 rel-dlsym 11 MTLR BLRL ;
|
||||
|
||||
: stack-increment \ stack-reserve get stack@ 16 align ;
|
||||
: stack-increment \ stack-reserve get 32 max stack@ 16 align ;
|
||||
|
||||
M: %prologue generate-node ( vop -- )
|
||||
drop
|
||||
|
|
|
|||
|
|
@ -3,7 +3,9 @@ Copyright (C) 1993-1999, 2002-2003 Bruno Haible <clisp.org at bruno>
|
|||
Copyright (C) 2003 Paolo Bonzini <gnu.org at bonzini>
|
||||
|
||||
Used under BSD license with permission from Paolo Bonzini and Bruno Haible,
|
||||
2005-03-10 */
|
||||
2005-03-10
|
||||
|
||||
see http://www.caddr.com/macho/archives/sbcl-devel/2005-3/4764.html */
|
||||
|
||||
#ifdef __APPLE__
|
||||
|
||||
|
|
@ -26,10 +28,7 @@ static SIGSEGV_THREAD_STATE_TYPE save_thread_state;
|
|||
static void
|
||||
terminating_handler ()
|
||||
{
|
||||
/* Dump core. */
|
||||
raise (SIGSEGV);
|
||||
|
||||
/* Seriously. */
|
||||
abort ();
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue