sbcl Log


Commit Date  
[9759f6] by Nathan Froyd Nathan Froyd

add :TYPE for some STRING-OUTPUT-STREAM slots

The transition through FILL shows up in some profiles when
GET-OUTPUT-STREAM-STRING is used heavily. Add :TYPE information to the
appropriate slots so the compiler knows LIST-FILL* can be used.

Moving the NREVERSE call is required so the compiler understands that
PREV is actually of list type. NREVERSE's :DERIVE-TYPE is set up
correctly; I think the compiler's failure to understand that

(setf prev (nreverse prev))

is not also a list is just fallout from the compiler not dealing
well with SETF and/or some fault in the type derivation itself.

2014-04-07 00:40:28 Tree
[1e6d78] by Douglas Katzman Douglas Katzman

Remove all C code that dealt with TLS index assignment.

While this reduces duplicated code, it regretably introduces duplicate data.
At least the lose() message informs you what list should be maintained.

2014-04-05 23:52:01 Tree
[e980e9] by Stas Boukarev Stas Boukarev

Remove strange #defines from *-linux-os.c

#define function_name somethine_nonexisting
just before a function named function_name doesn't appear to make any
sense.

2014-04-05 15:33:41 Tree
[41e62e] by Stas Boukarev Stas Boukarev

Remove unused ldt.h includes from x86-64-*-os.c files.

2014-04-05 15:17:48 Tree
[cadf7d] by Stas Boukarev Stas Boukarev

Enable building 32-bit SBCL on 64-bit FreeBSD.

Allow for ./make.sh --arch=x86 to work on x86-64.

2014-04-05 15:05:56 Tree
[87ee0e] by Stas Boukarev Stas Boukarev

Stop sb-sprof test from failing on FreeBSD 10.

setitimer with small intervals is broken on FreeBSD 10.

2014-04-05 14:44:39 Tree
[6380ff] by Stas Boukarev Stas Boukarev

Fix make-windows-installer.

The change of where contribs are stored is still popping up.

2014-04-05 12:18:01 Tree
[8d490e] by Douglas Katzman Douglas Katzman

Remove x86-64 disassembler hack for unknown tls-index of static symbol.

The use-case no longer exists. Cross-compilation chooses the tls-index.

2014-04-05 07:08:49 Tree
[e54280] by Douglas Katzman Douglas Katzman

Remove ineffectual concurrency test of INFO.

The database supports multi-reader/writer concurrency, but testing
symbols proves nothing since they aren't backed by a shared table.

2014-04-05 06:35:00 Tree
[8a7417] by Douglas Katzman Douglas Katzman

Fix bad math in %THREAD-LOCAL-REFERENCES.

This was no mere fencepost bug - it was off by a factor of 2 or 4
despite attempted previous fix in revision 85a570a, probably
explaining why the careful MAKE-LISP-OBJ was used.

2014-04-05 06:18:00 Tree
[39f716] by Douglas Katzman Douglas Katzman

Unify the algorithms for (CAS SYMBOL-VALUE) and SET on x86-64.

2014-04-05 02:02:14 Tree
[9fb70c] by Douglas Katzman Douglas Katzman

Speed up x86oid non-local exits.

In changeset dc386436 Nikodemus made WITH-ALIEN rebind *ALIEN-STACK*
to itself. This made some work of SAVE-/RESTORE-DYNAMIC-STATE redundant
so far as the special binding takes care of releasing aliens.
He even pointed out that aliens were no longer freed one at a time,
but didn't remove the extra mechanism, which incidentally seems not to
have worked correctly, as otherwise the bug which prompted the rebinding
approach couldn't have occurred.

Net of all previous related changes, the minimal example
(lambda () (catch 'foo (funcall 'bar)) nil)
is 14 instructions shorter and 90 bytes less on x86-64.
Gabriel's CTAK benchmark runs 10% faster, maybe more.

2014-04-04 22:14:16 Tree
[4b7208] by Douglas Katzman Douglas Katzman

Speed up manipulation of special variables on threaded x86-64.

This replaces branching instructions with conditional moves.
Additionally, tests for unbound/no-tls-value markers use :dword
operands, which should be invisible to user code. Putting random data
in the high 32 bits of those markers expecting them to be immediate
objects distinct from markers is just wrong.

Gabriel's STAK test runs at least 5% faster.

Note: %compare-and-swap-symbol-value isn't materially changed,
it just looks like it because of the new macros. It could get the
same treatment as the SET vop possibly.

2014-04-04 20:41:46 Tree
[25d503] by Douglas Katzman Douglas Katzman

Trivial change sb!vm::sym -> sb!vm:sym where it's an external symbol.

2014-04-04 01:30:03 Tree
[a00654] by Douglas Katzman Douglas Katzman

Assign constant TLS indices to some important symbols.

And simplify related macrology.

2014-04-04 01:25:20 Tree
[6c0b3e] by Douglas Katzman Douglas Katzman

Unbreak my previous change. Not sure how it worked.

2014-04-04 00:23:47 Tree
[d77adf] by Douglas Katzman Douglas Katzman

Rename *ALIEN-STACK* to *ALIEN-STACK-POINTER*

This eliminates one piddling annoyance from genesis.

2014-04-04 00:03:06 Tree
[8c2c56] by Douglas Katzman Douglas Katzman

Make cross-compilation a smidgen less noisy.

2014-04-03 18:34:00 Tree
[2d1cbf] by Douglas Katzman Douglas Katzman

Remove a FIXME. lp#1026439 dealt with this.

2014-04-03 18:12:12 Tree
[03ceb4] by Douglas Katzman Douglas Katzman

Macroize WRITE[-TO-STRING] defknowns, the latter missing a keyword

... which was recently corrected for one and not the other.

2014-04-03 15:26:31 Tree
[4e815e] by Douglas Katzman Douglas Katzman

Assign thread-local storage indices at load-time on x86-64

This also includes a disassembler enhancement.

2014-04-03 05:31:54 Tree
[5d1093] by Douglas Katzman Douglas Katzman

Use bzero from C library on x86-64

2014-04-03 01:19:14 Tree
[860c7d] by Douglas Katzman Douglas Katzman

Fix bitrot in LDB's print_cmd which assumed n-fixnum-tag-bits=2

2014-04-02 22:47:54 Tree
[30f049] by Douglas Katzman Douglas Katzman

Really skip multithreading INFO tests if missing sb-thread feature.

2014-04-02 00:37:27 Tree
[f06a47] by Douglas Katzman Douglas Katzman

Avoid compiler note about non-use of type assertion due to assignment.

2014-04-01 19:47:01 Tree
Older >