Raymond Toy [Wed, 26 Sep 2012 04:19:05 +0000]
Add WITH-CYCLE-COUNTER for x86, sparc, and ppc. Sparc and ppc
versions are untested.
Raymond Toy [Wed, 26 Sep 2012 04:15:51 +0000]
Update.
Raymond Toy [Wed, 26 Sep 2012 04:09:46 +0000]
Fix ticket:63.
Raymond Toy [Wed, 5 Sep 2012 02:49:17 +0000]
Output lisp strings in utf8 format in ldb print.
print.c:
* Use utf16_output to output strings as utf8 instead of raw utf16.
interr.c:
* Make utf16_output public instead of static.
interr.h:
* Declare utf16_output.
Raymond Toy [Tue, 4 Sep 2012 03:49:31 +0000]
Fix ticket:62: Needed an IN-PACKAGE.
Raymond Toy [Mon, 3 Sep 2012 15:08:54 +0000]
Finish splitting out x86-validate into separate OS versions.
* Didn't finish the solaris split in previous commit, so finish it
now.
* Split out FreeBSD, NetBSD, and OpenBSD into new files.
Raymond Toy [Sat, 1 Sep 2012 18:08:01 +0000]
Split x86-validate into separate files.
src/lisp/x86-validate.h:
o Remove linux, darwin, and solaris parts
src/lisp/x86-validate-linux.h:
src/lisp/x86-validate-darwin.h:
src/lisp/x86-validate-solaris.h:
o New files for each os.
Raymond Toy [Sat, 1 Sep 2012 18:05:15 +0000]
Update from logs.
Raymond Toy [Sat, 1 Sep 2012 17:46:55 +0000]
Clean up RCS ids
* Get rid of the RCS Header stuff. They're meaningless in git.
* Add public domain comment to some of the files if the only comment
was the RCS header.
Raymond Toy [Tue, 28 Aug 2012 06:00:23 +0000]
Update to asdf 2.24.
Raymond Toy [Tue, 28 Aug 2012 05:47:36 +0000]
Clean up debug_print. Surrogate pairs are always high surrogate
followed by low; anything else is invalid.
Raymond Toy [Mon, 27 Aug 2012 03:12:29 +0000]
Minor cleanups of utf8 code.
Raymond Toy [Sat, 25 Aug 2012 15:48:51 +0000]
Change %primitive print.to output strings in utf8 instead of utf16.
No more random NUL ASCII characters on output now.
Raymond Toy [Thu, 23 Aug 2012 03:50:30 +0000]
Need to wrap EVAL-WHEN around USE-PACKAGE since use-package doesn't
have special treatment in the compiler anymore.
Raymond Toy [Sun, 19 Aug 2012 14:58:06 +0000]
Floating-point micro-optimizations
o Convert x/n to x*(1/n) when n is a power of two since 1/n has an
exact representation.
o Convert 2*x to x+x.
Raymond Toy [Sat, 11 Aug 2012 23:50:28 +0000]
Move the FPU save/restore stuff from os.h to arch.h
* src/lisp/os.h
* Move macros and definitions for FPU save/restore from here.
* src/lisp/arch.h
* Put architecture neutral stuff from os.h here.
* src/lisp/ppc-arch.h
* src/lisp/sparc-arch.h
* src/lisp/x86-arch.h
* Implement the FPU save/restore macros here for each supported
architecture.
Raymond Toy [Fri, 10 Aug 2012 06:46:43 +0000]
src/lisp/os.h:
src/lisp/gencgc.c:
* Move the macros for fpu buffers from gencgc.c to here.
src/lisp/x86-arch.c:
* Use the new save_fpu_state instead of fpu_save. And apply to all
OSes.
Raymond Toy [Fri, 10 Aug 2012 06:44:26 +0000]
Use /usr/bin/sed instead of whatever is in the path.
Raymond Toy [Sun, 5 Aug 2012 23:32:21 +0000]
Support Lion and Mountain Lion which return x86-64 for uname -m.
Raymond Toy [Sat, 4 Aug 2012 04:57:38 +0000]
Add note that OSX 10.4 is no longer supported.
Raymond Toy [Sat, 4 Aug 2012 04:41:20 +0000]
Add note that OSX Lion can compile cmucl.
Raymond Toy [Sat, 4 Aug 2012 04:39:13 +0000]
Merge branch 'master' of ssh://common-lisp.net/var/git/projects/cmucl/cmucl
Raymond Toy [Sat, 4 Aug 2012 04:28:21 +0000]
Update.
Raymond Toy [Sat, 4 Aug 2012 04:27:36 +0000]
Recognize x86_64 (for OSX Lion).
Raymond Toy [Fri, 3 Aug 2012 16:57:27 +0000]
* Remove comments about gcc-4.2. gcc or clang should work.
* Min OSX version is 10.5 now. Don't have access to anything older
than 10.5 anyway.
Raymond Toy [Wed, 18 Jul 2012 06:09:21 +0000]
Update to asdf 2.23.
Raymond Toy [Wed, 18 Jul 2012 03:13:39 +0000]
Remove comment about compiling with clang, which now works fine.
Raymond Toy [Wed, 18 Jul 2012 03:11:13 +0000]
Fix ticket:61, using option 2.
src/lisp/gencgc.c:
o Save and restore the FPU state in alloc().
src/compiler/x86/alloc.lisp
src/compiler/x86/array.lisp
src/compiler/x86/call.lisp
src/compiler/x86/float-sse2.lisp
src/compiler/x86/float.lisp
src/compiler/x86/move.lisp
src/compiler/x86/sap.lisp:
o Don't need to use :save-p anymore because the allocation routine
saves an live registers anyway. This improves code generation as
well.
src/general-info/release-20d.txt:
o Update.
Raymond Toy [Wed, 18 Jul 2012 02:51:28 +0000]
Add -R option to force recompilation of C runtime.
Raymond Toy [Wed, 18 Jul 2012 02:35:23 +0000]
Fix possible stack corruption caused by possibly not allocating enough
stack space to hold the SSE2 state. (Forgot to add extra bytes for
16-byte alignment!)
Raymond Toy [Wed, 18 Jul 2012 02:32:17 +0000]
Clean up and correct some comments.
Raymond Toy [Tue, 17 Jul 2012 05:21:18 +0000]
Change url to www.cmucl.org.
Raymond Toy [Tue, 17 Jul 2012 02:43:14 +0000]
Clean up not-inline-allocation.
src/lisp/x86-assem.S:
o Remove the (now) unused alloc_to_<reg> functions.
src/compiler/x86/macros.lisp:
o Simplify the not-inline-allocation to use the same routines as
inline allocation.
Raymond Toy [Fri, 13 Jul 2012 03:49:43 +0000]
Remove old inline allocation function and corresponding assembly routines.
Raymond Toy [Thu, 12 Jul 2012 05:00:07 +0000]
Clean up alloc overflow routine. Cross-compile needed.
src/bootfiles/20c/boot-2012-07-1-x86-cross.lisp:
o X86 cross-compile script
src/compiler/x86/macros.lisp:
o New inline-allocation to call our new overflow routine.
src/lisp/x86-assem.S:
o New alloc_overflow routine.
src/tools/cross-scripts/cross-x86-x86.lisp:
o Export all symbols in VM that are external symbols in OLD-VM with
the corresponding symbol name.
Raymond Toy [Thu, 5 Jul 2012 22:24:18 +0000]
Oops. Need to use long long's to compute the age in gen_av_mem_age().
Raymond Toy [Thu, 5 Jul 2012 15:48:31 +0000]
Rearrange the fpu save/restore stuff to make it a bit simpler.
Raymond Toy [Sat, 30 Jun 2012 22:08:37 +0000]
All VOPs that call allocation should save any live registers.
Raymond Toy [Fri, 15 Jun 2012 19:52:24 +0000]
Change min_av_mem_age to be an int instead of double. No floating
point operations should occur in allocation or GC now, except when
printing stats.
Raymond Toy [Fri, 15 Jun 2012 19:19:47 +0000]
Update to asdf 2.22. Testsuite for asdf, using 2012-06, passes fine.
Raymond Toy [Tue, 12 Jun 2012 03:54:47 +0000]
Oops. Didn't mean for the gencgc.o rule to get included.
Raymond Toy [Sat, 2 Jun 2012 22:02:00 +0000]
Add comments about using clang instead of gcc on x86.
Raymond Toy [Fri, 1 Jun 2012 04:25:33 +0000]
Don't set dimension of array to 1 for the rest slots of a primitive
object.
Raymond Toy [Fri, 1 Jun 2012 02:55:27 +0000]
Update translation template.
Raymond Toy [Wed, 30 May 2012 03:17:47 +0000]
Update.
Raymond Toy [Wed, 30 May 2012 02:57:28 +0000]
Revert :file-attribute changes.
Raymond Toy [Mon, 28 May 2012 22:49:32 +0000]
Update with new :FILE-ATTRIBUTE external format, contributed by
Douglas Crosher.
Raymond Toy [Mon, 28 May 2012 16:47:36 +0000]
Remove extra closing parenthesis.
Raymond Toy [Mon, 28 May 2012 16:19:17 +0000]
Merge branch 'master' into ext-format-file-attribute
Raymond Toy [Mon, 28 May 2012 16:18:47 +0000]
Update with changes.
Raymond Toy [Mon, 28 May 2012 16:11:46 +0000]
Fix ticket:60
src/compiler/main.lisp:
o Remove special treatment of EXPORT (and others) in the compiler. I
think we only need to treat IN-PACKAGE and DEFPACKAGE specially.
src/contrib/defsyste/defsystem.lisp:
o Add FIND-SYSTEM to the defpackage export list for MAKE.
src/tools/hemcom.lisp:
o Add defpackage for hemlock-internals since export no longer has the
compile-time effect.
Raymond Toy [Sat, 26 May 2012 18:13:01 +0000]
Fix so this can build on 8-bit cmucl.
o Clean up reader conditionals in MAKE-FD-STREAM.
o Add dummy %SET-FD-STREAM-EXTERNAL-FORMAT for non-unicode.
Raymond Toy [Sat, 26 May 2012 16:13:34 +0000]
Use concatenate instead of format because format isn't available when
compiling.
Raymond Toy [Sat, 26 May 2012 15:24:55 +0000]
Debugger needs to open file with the appropriate external format.
Patch from Douglas.
Raymond Toy [Sat, 26 May 2012 15:24:22 +0000]
Add all the emacs format encodings. From Douglas.
Raymond Toy [Sat, 26 May 2012 05:50:38 +0000]
* {{{COMPILE-FILE}}} should not signal an error when given a list for
{{{:EXTERNAL-FORMAT}}}. Lists are needed to specify a composing
external format like {{{:DOS}}} or {{{:MAC}}}.
Raymond Toy [Sat, 26 May 2012 05:49:18 +0000]
First cut at :file-attribute external-format that determines the
format from the file contents ala emacs.
Raymond Toy [Fri, 25 May 2012 03:27:37 +0000]
Clear matching current exceptions when enabling new exceptions. This
prevents the exception from being resignaled immediately.
src/code/float-trap.lisp:
o Clear current and accrued exception bits that match any new enabled
exceptions specified by :traps.
src/general-info/release-20d.txt:
o Update.
Raymond Toy [Thu, 10 May 2012 06:14:00 +0000]
Add popcnt instruction and use it in logcount vop if :sse3 is a
feature.
* src/compiler/x86/arith.lisp
* Add vop for logcount that uses popcnt instruction.
* src/compiler/x86/insts.lisp
* Define popcnt instruction (but only for :sse3)
* src/general-info/release-20d.txt:
* Update.
Raymond Toy [Sun, 6 May 2012 06:33:11 +0000]
Link to www.cmucl.org.
Raymond Toy [Tue, 1 May 2012 03:10:53 +0000]
Update with more info that was left out.
Raymond Toy [Tue, 1 May 2012 03:08:50 +0000]
Update to ASDF2 2.21.
Raymond Toy [Tue, 1 May 2012 03:07:49 +0000]
Update.
Raymond Toy [Wed, 25 Apr 2012 20:48:32 +0000]
Handle case where we run out of octets in the middle of a two-octet
code.
Raymond Toy [Wed, 25 Apr 2012 05:20:39 +0000]
First cut at an external format for EUC-KR.
Raymond Toy [Wed, 25 Apr 2012 05:20:09 +0000]
Add some comments on what INVERT-TABLE (and GET-INVERSE) does and what
it returns.
Raymond Toy [Wed, 25 Apr 2012 05:09:39 +0000]
Fix typo in iso8859-2 external format.
* src/pcl/simple-streams/external-formats/iso8859-2.lisp:
* Fix typo.
* src/general-info/release-20d.txt:
* Update.
Raymond Toy [Wed, 25 Apr 2012 05:05:35 +0000]
Correct the type declarations for the state (for BOM).
Raymond Toy [Sat, 21 Apr 2012 21:06:44 +0000]
Fix some typos, change url to cmucl.org and add url to
trac.common-lisp.net/cmucl.
Raymond Toy [Sat, 21 Apr 2012 02:44:04 +0000]
Fix bug in handling the state BOM marker and also extend to work
composing external formats. The state BOM marker also needs to
indicate how long the BOM is.
* src/code/stream.lisp
* Handle the BOM marker correctly for composed format.
* Handle the new values for the state BOM marker.
* src/pcl/simple-streams/external-formats/utf-16.lisp
* Change BOM state marker to +2 and -2 instead of 1 and 2 to
indicate the length of the BOM.
* src/pcl/simple-streams/external-formats/utf-32.lisp
* Change BOM state marker to +4 and -4 instead of 1 and 2 to
indicate the length of the BOM.
Raymond Toy [Fri, 20 Apr 2012 16:35:43 +0000]
Oops. Debugging print accidentally left in.
Raymond Toy [Fri, 20 Apr 2012 16:34:48 +0000]
UTF-16-BE and UTF-16-LE external formats were returning the incorrect
number of octets for surrogate pairs. Two was returned instead of
four.
* src/pcl/simple-streams/external-formats/utf-16-be.lisp:
* src/pcl/simple-streams/external-formats/utf-16-le.lisp:
* Return correct number of octets
* src/general-info/release-20d.txt
* Update.
Raymond Toy [Fri, 20 Apr 2012 15:41:14 +0000]
Test for state change was wrong.
Raymond Toy [Thu, 19 Apr 2012 06:53:31 +0000]
Fix ticket:58. Handle the BOM character for utf-16 and utf-32. This
is a bit of a hack.
* src/code/stream.lisp:
* Check the state to see if a BOM was read. This critically depends
on knowing the format of the state variable for utf16 and utf32
formats, but the stream code shouldn't have to know the state
internals.
* src/general-info/release-20d.txt
* Update.
Raymond Toy [Thu, 19 Apr 2012 04:38:46 +0000]
Add many additional aliases to match glibc iconv aliases. Donated by
Douglas Crosher.
* src/pcl/simple-streams/external-formats/aliases
* Add additional aliases.
* src/general-info/release-20d.txt:
* Update
Raymond Toy [Wed, 18 Apr 2012 22:02:31 +0000]
Fix typo in external format for utf-32.
utf-32.lisp::
* Fix typo.
release-20d.txt::
* Update.
Raymond Toy [Fri, 30 Mar 2012 01:53:33 +0000]
Clarify a comment.
Raymond Toy [Thu, 29 Mar 2012 04:14:12 +0000]
Add comments, clean up code a little.
Raymond Toy [Thu, 29 Mar 2012 04:11:18 +0000]
Microoptimization: (logand x #xffffffff) can be just a register move
without and'ing. (If x is a signed-byte 32.)
Raymond Toy [Tue, 27 Mar 2012 23:38:23 +0000]
Update.
Raymond Toy [Tue, 27 Mar 2012 23:20:18 +0000]
Add contrib for packed SSE2 operations.
src/contrib/contrib.lisp:
o Define the module
src/contrib/packed-sse2/compile-packed-sse2.lisp:
o New file to compile the contrib.
src/contrib/packed-sse2/packed-sse2.lisp:
o New file implementing the packed sse2 vops and functions.
Raymond Toy [Tue, 27 Mar 2012 23:19:03 +0000]
Oops. Long-standing bug that cmu-contribs was defined so it couldn't
be loaded to get the other contribs.
Raymond Toy [Tue, 27 Mar 2012 21:22:11 +0000]
Set the generator costs for the complex multiply vops to be the number
of instructions. This gives the sse3 complex multiply vop a chance to
be used if SSE3 is available. (The user needs to :SSE3 to *FEATURES*
for this to work. The core of CMUCL only assumes SSE2 is available.)
Alex Goncharov [Sun, 4 Mar 2012 17:09:30 +0000]
.gitignore: add build-*
Raymond Toy [Sat, 3 Mar 2012 16:46:19 +0000]
Really update to 6.1.0!
Raymond Toy [Sat, 3 Mar 2012 15:46:53 +0000]
Update for snapshot.
Raymond Toy [Sat, 3 Mar 2012 15:36:13 +0000]
Merge branch 'master' of ssh://common-lisp.net/var/git/projects/cmucl/cmucl
Raymond Toy [Sat, 3 Mar 2012 15:34:30 +0000]
Return NIL if the prefix isn't a prefix of any name instead of
signaling an error.
Raymond Toy [Fri, 24 Feb 2012 17:22:58 +0000]
Oops. Always write the fpu mode to the core file on x86. (Previously
only wrote the mode when compiling with sse2.)
Raymond Toy [Sun, 19 Feb 2012 23:49:10 +0000]
Add -R flag to force recompilation of C runtime.
Raymond Toy [Fri, 17 Feb 2012 19:38:21 +0000]
Merge branch 'master' of ssh://common-lisp.net/var/git/projects/cmucl/cmucl
Raymond Toy [Fri, 17 Feb 2012 18:44:59 +0000]
Fix compiler warning.
Raymond Toy [Fri, 17 Feb 2012 18:44:45 +0000]
Remove unused var.
Raymond Toy [Fri, 17 Feb 2012 04:41:32 +0000]
Fix compiler warning and use fwrite instead of putw to print a
string.
Raymond Toy [Sun, 12 Feb 2012 02:16:23 +0000]
Add the fpu type to kernel.core on x86. Needed to set the fpu_mode
when it's loaded so that the C code knows what to do. In particular
call_into_lisp needs to know to save the correct fpu state.
Raymond Toy [Sat, 11 Feb 2012 17:40:23 +0000]
Update documentation for string-to-octets.
Raymond Toy [Sat, 11 Feb 2012 06:45:33 +0000]
Use fwrite to dump the string instead of putw.
Raymond Toy [Wed, 8 Feb 2012 02:48:56 +0000]
Oops. Remove the set -x/set +x lines from the last commit.
Raymond Toy [Tue, 7 Feb 2012 06:48:12 +0000]
No default version anymore; let load-world.sh specify it.
Raymond Toy [Tue, 7 Feb 2012 06:47:49 +0000]
If git describe looks like a snapshot tag, just use that as the
default version instead of adding the date to it. The tag has most of
the desired information already, and this helps to keep
lisp-implementation-version from having duplicate information.