/[cmucl]/src/code/ppc-vm.lisp
ViewVC logotype

Log of /src/code/ppc-vm.lisp

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (annotate)
Sticky Tag:

Revision 1.11 - (view) (annotate) - [select for diffs]
Mon Apr 19 02:18:04 2010 UTC (4 years ago) by rtoy
Branch: MAIN
CVS Tags: GIT-CONVERSION, HEAD, RELEASE_20b, cross-sol-x86-2010-12-20, cross-sol-x86-base, cross-sol-x86-merged, cross-sparc-branch-base, release-20b-pre1, release-20b-pre2, snapshot-2010-05, snapshot-2010-06, snapshot-2010-07, snapshot-2010-08, snapshot-2010-11, snapshot-2010-12, snapshot-2011-01, snapshot-2011-02, snapshot-2011-03, snapshot-2011-04, snapshot-2011-06, snapshot-2011-07, snapshot-2011-09, sparc-tramp-assem-2010-07-19, sparc-tramp-assem-base
Branch point for: RELEASE-20B-BRANCH, cross-sol-x86-branch, cross-sparc-branch, sparc-tramp-assem-branch
Changes since 1.10: +5 -5 lines
Diff to previous 1.10
Remove _N"" reader macro from docstrings when possible.

Revision 1.10 - (view) (annotate) - [select for diffs]
Fri Mar 19 15:18:59 2010 UTC (4 years, 1 month ago) by rtoy
Branch: MAIN
CVS Tags: post-merge-intl-branch, snapshot-2010-04
Changes since 1.9: +7 -5 lines
Diff to previous 1.9
Merge intl-branch 2010-03-18 to HEAD.  To build, you need to use
boot-2010-02-1 as the bootstrap file.  You should probably also use
the new -P option for build.sh to generate and update the po files
while building.

Revision 1.9.18.2 - (view) (annotate) - [select for diffs]
Fri Feb 26 06:23:25 2010 UTC (4 years, 1 month ago) by rtoy
Branch: intl-branch
CVS Tags: intl-branch-2010-03-18-1300
Changes since 1.9.18.1: +5 -5 lines
Diff to previous 1.9.18.1 , to branch point 1.9 , to next main 1.11
Mark more translatable strings.

Revision 1.9.20.1 - (view) (annotate) - [select for diffs]
Thu Feb 25 20:34:51 2010 UTC (4 years, 1 month ago) by rtoy
Branch: intl-2-branch
Changes since 1.9: +3 -1 lines
Diff to previous 1.9 , to next main 1.11
Restart internalization work.  This new branch starts with code from
the intl-branch on date 2010-02-12 18:00:00+0500.  This version works
and

LANG=en@piglatin bin/lisp

works (once the piglatin translation is added).

Revision 1.9.18.1 - (view) (annotate) - [select for diffs]
Mon Feb 8 17:15:48 2010 UTC (4 years, 2 months ago) by rtoy
Branch: intl-branch
CVS Tags: intl-branch-working-2010-02-11-1000, intl-branch-working-2010-02-19-1000
Changes since 1.9: +3 -1 lines
Diff to previous 1.9
Add (intl:textdomain "cmucl") to the files to set the textdomain.

Revision 1.8.4.1 - (view) (annotate) - [select for diffs]
Thu Jun 19 03:30:44 2008 UTC (5 years, 10 months ago) by rtoy
Branch: unicode-utf16-branch
CVS Tags: unicode-snapshot-2009-05, unicode-snapshot-2009-06, unicode-utf16-char-support-2009-03-25, unicode-utf16-char-support-2009-03-26, unicode-utf16-extfmt-2009-03-27, unicode-utf16-extfmt-2009-06-11, unicode-utf16-extfmts-pre-sync-2008-11, unicode-utf16-extfmts-sync-2008-12, unicode-utf16-sync-2008-07, unicode-utf16-sync-2008-09, unicode-utf16-sync-2008-11, unicode-utf16-sync-2008-12, unicode-utf16-sync-label-2009-03-16
Branch point for: unicode-utf16-extfmt-branch
Changes since 1.8: +15 -1 lines
Diff to previous 1.8 , to next main 1.11
Merge changes from HEAD to the unicode-utf16 branch.

Revision 1.9 - (view) (annotate) - [select for diffs]
Fri May 23 18:15:30 2008 UTC (5 years, 10 months ago) by rtoy
Branch: MAIN
CVS Tags: RELEASE_19f, RELEASE_20a, amd64-dd-start, intl-2-branch-base, intl-branch-base, label-2009-03-16, label-2009-03-25, merge-sse2-packed, merge-with-19f, merged-unicode-utf16-extfmt-2009-06-11, portable-clx-base, portable-clx-import-2009-06-16, pre-merge-intl-branch, release-19f-base, release-19f-pre1, release-20a-base, release-20a-pre1, snapshot-2008-06, snapshot-2008-07, snapshot-2008-08, snapshot-2008-09, snapshot-2008-10, snapshot-2008-11, snapshot-2008-12, snapshot-2009-01, snapshot-2009-02, snapshot-2009-04, snapshot-2009-05, snapshot-2009-07, snapshot-2009-08, snapshot-2009-11, snapshot-2009-12, snapshot-2010-01, snapshot-2010-02, snapshot-2010-03, sse2-base, sse2-checkpoint-2008-10-01, sse2-merge-with-2008-10, sse2-merge-with-2008-11, sse2-packed-2008-11-12, sse2-packed-base, unicode-string-buffer-base, unicode-string-buffer-impl-base
Branch point for: RELEASE-19F-BRANCH, RELEASE-20A-BRANCH, amd64-dd-branch, intl-2-branch, intl-branch, portable-clx-branch, sse2-branch, sse2-packed-branch, unicode-string-buffer-branch, unicode-string-buffer-impl-branch
Changes since 1.8: +15 -1 lines
Diff to previous 1.8
Add functions for fused-multiply-add and fused-multiply-subtract.  Not
necessary but nice to have around.

Revision 1.8 - (view) (annotate) - [select for diffs]
Tue Nov 14 04:47:49 2006 UTC (7 years, 5 months ago) by rtoy
Branch: MAIN
CVS Tags: pre-telent-clx, release-19e, release-19e-base, release-19e-pre1, release-19e-pre2, snapshot-2006-12, snapshot-2007-01, snapshot-2007-02, snapshot-2007-03, snapshot-2007-04, snapshot-2007-05, snapshot-2007-06, snapshot-2007-07, snapshot-2007-08, snapshot-2007-09, snapshot-2007-10, snapshot-2007-11, snapshot-2007-12, snapshot-2008-01, snapshot-2008-02, snapshot-2008-03, snapshot-2008-04, snapshot-2008-05, unicode-utf16-base, unicode-utf16-string-support
Branch point for: release-19e-branch, unicode-utf16-branch
Changes since 1.7: +2 -2 lines
Diff to previous 1.7
SIGCONTEXT-FLOAT-REGISTER should return a single-float if the FORMAT
is single-float.

Revision 1.7 - (view) (annotate) - [select for diffs]
Tue Nov 14 02:41:25 2006 UTC (7 years, 5 months ago) by rtoy
Branch: MAIN
Changes since 1.6: +8 -1 lines
Diff to previous 1.6
Floating-point fixes for ppc.

code/float-trap.lisp:
o Set FP modes now.
o Clear out sticky bits in SIGFPE handler

code/ppc-vm.lisp:
o Add (setf sigcontext-floating-point-modes) to set the FP mode.

compiler/ppc/parms.lisp:
o Add fields for various invalid operations bits.
o Fix float-fast-bit

Revision 1.6 - (view) (annotate) - [select for diffs]
Wed Jan 18 15:21:26 2006 UTC (8 years, 3 months ago) by rtoy
Branch: MAIN
CVS Tags: double-double-array-base, double-double-array-checkpoint, double-double-base, double-double-init-%make-sparc, double-double-init-checkpoint-1, double-double-init-ppc, double-double-init-sparc, double-double-init-sparc-2, double-double-init-x86, double-double-irrat-end, double-double-irrat-start, double-double-reader-base, double-double-reader-checkpoint-1, double-double-sparc-checkpoint-1, release-19d, release-19d-base, release-19d-pre1, release-19d-pre2, snapshot-2006-02, snapshot-2006-03, snapshot-2006-04, snapshot-2006-05, snapshot-2006-06, snapshot-2006-07, snapshot-2006-08, snapshot-2006-09, snapshot-2006-10, snapshot-2006-11
Branch point for: double-double-array-branch, double-double-branch, double-double-reader-branch, release-19d-branch
Changes since 1.5: +3 -1 lines
Diff to previous 1.5
Merge ppc_gencgc_branch to HEAD.

Revision 1.5.2.2 - (view) (annotate) - [select for diffs]
Mon Dec 19 01:09:52 2005 UTC (8 years, 4 months ago) by rtoy
Branch: ppc_gencgc_branch
CVS Tags: ppc_gencgc_snap_2005-12-17, ppc_gencgc_snap_2006-01-06
Changes since 1.5.2.1: +0 -0 lines
Diff to previous 1.5.2.1 , to branch point 1.5 , to next main 1.11
Merge code from main branch of 2005-12-17 to ppc gencgc branch.  Still
doesn't work of course.

Revision 1.5.2.1 - (view) (annotate) - [select for diffs]
Tue Apr 5 03:41:08 2005 UTC (9 years ago) by rtoy
Branch: ppc_gencgc_branch
CVS Tags: ppc_gencgc_snap_2005-05-14
Changes since 1.5: +3 -1 lines
Diff to previous 1.5
Checkin the current code for gencgc.  This is a basic port of sparc
gencgc for ppc.  This is not yet functional.  Allocation seems to
work, but GC does not.  We're just making a checkpoint now.

compiler/ppc/macros.lisp:
o Update allocation macro to support gencgc.  Need a temp-tn as a
  scratch register for inline allocation.
o Update with-fixed-allocation to use allocation macro correctly for
  gencgc.

assembly/ppc/array.lisp:
o Update for new allocation macro for gencgc.

code/ppc-vm.lisp:
o Define *scavenge-read-only-space*

compiler/ppc/alloc.lisp:
compiler/ppc/array.lisp:
compiler/ppc/call.lisp:
o Update to use new allocation macro for gencgc.

compiler/ppc/parms.lisp:
o Add necessary static symbols to support gencgc.

lisp/Config.ppc_darwin:
o Update to build with gencgc as needed.

lisp/Darwin-os.c:
o Update C code for gencgc.  Mostly for checking if pointer is in the
  dynamic space.
o Many debugging printf's enabled.

lisp/gencgc.c:
o Adjust sparc version appropriately for ppc.
o Enable many gencgc self-checks.

lisp/gencgc.h:
o Update PAGE_SIZE for ppc, which is 4K.

lisp/ppc-arch.c:
o Add necessary code to handle the allocation traps for gencgc.
  Basically ported sparc version for ppc.

lisp/ppc-assem.S:
o The way pseudo-atomic is done has been changed, so make the assembly
  code match.  PA is now more like sparc where the LSB is the
  PA-interrupted bit.
o do_pending_interrupt may need work.

lisp/ppc-validate.h:
o Make the READ_ONLY_SPACE_SIZE right.
o Define CONTROL_STACK_END.

lisp/purify.c:
o Enable debugging printfs
o Adjust purify for gencgc, basically copying sparc version.

Revision 1.5 - (view) (annotate) - [select for diffs]
Sun Feb 6 19:43:13 2005 UTC (9 years, 2 months ago) by rtoy
Branch: MAIN
CVS Tags: release-19b-base, release-19b-pre1, release-19b-pre2, release-19c, release-19c-base, release-19c-pre1, snapshot-2005-03, snapshot-2005-04, snapshot-2005-05, snapshot-2005-06, snapshot-2005-07, snapshot-2005-08, snapshot-2005-09, snapshot-2005-10, snapshot-2005-11, snapshot-2005-12, snapshot-2006-01
Branch point for: ppc_gencgc_branch, release-19b-branch, release-19c-branch
Changes since 1.4: +17 -1 lines
Diff to previous 1.4
Initial support for linkage-tables on PPC/Darwin.  This is a
relatively straightforward port of the sparc version of
linkage-tables.  Some refinements are probably still needed, as well
as some testing.

Use boot-2005-02-ppc-linkage.lisp to bootstrap this change from the
2005-02 snapshot.

* code/ppc-vm.lisp
  o Add appropriate FOREIGN-SYMBOL-ADDRESS-AUX and FIND-FOREIGN-SYMBOL
    functions for linkage-table.

* compiler/generic/new-genesis.lisp
  o Basically do the same as the sparc port for linkage-tables.
  o need to extern-alien-name on the cold linkages since they C names
    depend on the backend conventions.

* compiler/ppc/alloc.lisp
  o Load "undefined_tramp" appropriately for linkage-tables.

* compiler/ppc/c-call.lisp
  o Define new vops (FOREIGN-SYMBOL-CODE-ADDRESS,
    FOREIGN-SYMBOL-DATA-ADDRESS) for linkage-tables so we can access
    correctly.

* compiler/ppc/cell.lisp
  o Load "closure_tramp" appropriately for linkage-tables
  o Load "undefined_tramp" appropriately for linkage-tables

* compiler/ppc/parms.lisp
  o Put the foreign linkage space start at the end of the static space
    to make it easier to bootstrap.  (We need already mapped memory.)
    We can move this later.
  o Correct TARGET-FOREIGN-LINKAGE-ENTRY-SIZE.
  o Add new static-symbol *linkage-table-data*
  o While were at it, add SPARE-9 and SPARE-0 static symbols so we
    have 10 spares.

* lisp/Config.ppc_darwin
  o Add -DLINKAGE_TABLE to CFLAGS/ASFLAGS if we have linkage-table
    support.

* lisp/Darwin-os.c
  o Add os_dlsym to support linkage-tables.  (This nees a little
    refactoring because we just copied the #defines for dlopen modes.)

* lisp/os-common.c
  o The checking of the linkage tables that is done for sparc almost
    works for ppc, but not quite.  Implement one for ppc.

* lisp/ppc-arch.c
  o Add PPC version of arch_make_jump_entry, arch_make_linkage_entry,
    arch_linkage_entry.

* lisp/ppc-assem.S
  o Add lazy_resolve_linkage to support linkage-tables.  This needs
    some more work.
  o Add undefined_foreign_symbol_trap.  This probably needs work, and
    definitely needs testing.

* lisp/ppc-validate.h
  o Define the start of the linkage space and size.

Revision 1.4 - (view) (annotate) - [select for diffs]
Fri Jul 30 01:05:59 2004 UTC (9 years, 8 months ago) by rtoy
Branch: MAIN
CVS Tags: snapshot-2004-09, snapshot-2004-10, snapshot-2004-11, snapshot-2004-12, snapshot-2005-01, snapshot-2005-02
Changes since 1.3: +5 -4 lines
Diff to previous 1.3
o Fix too much copying and not enough thinking in sigcontext-lr.
o Export sigcontext-lr.

Revision 1.3 - (view) (annotate) - [select for diffs]
Thu Jul 29 11:52:24 2004 UTC (9 years, 8 months ago) by rtoy
Branch: MAIN
Changes since 1.2: +6 -1 lines
Diff to previous 1.2
(defun foo () (zot)) when compiled and run gave a silly message about
#C(0d0 0d0) failing a typecase.  Then doing a backtrace gave another
error about some negative number not being a positive fixnum.

The former error is caused by a bad definition of undefined_tramp.
The latter error is caused by the debugger not being able to compute
the offset correctly.

(Fixes ported from sbcl.)

Revision 1.2 - (view) (annotate) - [select for diffs]
Sun Jul 25 19:32:38 2004 UTC (9 years, 8 months ago) by pmai
Branch: MAIN
CVS Tags: snapshot-2004-08
Changes since 1.1: +66 -2 lines
Diff to previous 1.1
This commit adds the remainder of the outstanding PPC/Darwin port merge.

Besides support for Darwin foreign loading, and updates to the ppc-vm
and bsd-os files, this commit removes unix:unix-errno as a foreign variable
and replaces it with a function named unix-errno, and a (setf unix-errno).
This makes both glibc support cleaner, and enables ports like PPC/Darwin
(and the upcoming win32 port) which have no easy way of accessing errno as
a foreign variable able to support this functionality at all.

The current implementation of this is rather make-shift, it would likely
be much cleaner to go the SBCL way and mediate all access to errno via
defined functions in the C runtime.

As an interim feature, the frobbing of the float-trap-modes is currently
commented out for Darwin because of ongoing breakage.

Revision 1.1 - (view) (annotate) - [select for diffs]
Sun Feb 11 14:22:01 2001 UTC (13 years, 2 months ago) by dtc
Branch: MAIN
CVS Tags: LINKAGE_TABLE, PRE_LINKAGE_TABLE, UNICODE-BASE, amd64-merge-start, cold-pcl-base, dynamic-extent-base, lisp-executable-base, mod-arith-base, prm-before-macosx-merge-tag, release-18e, release-18e-base, release-18e-pre1, release-18e-pre2, release-19a, release-19a-base, release-19a-pre1, release-19a-pre2, release-19a-pre3, remove_negative_zero_not_zero, snapshot-2003-10, snapshot-2003-11, snapshot-2003-12, snapshot-2004-04, snapshot-2004-05, snapshot-2004-06, snapshot-2004-07, sparc_gencgc, sparc_gencgc_merge
Branch point for: UNICODE-BRANCH, cold-pcl, dynamic-extent, lisp-executable, mod-arith-branch, release-18e-branch, release-19a-branch, sparc_gencgc_branch
o Compiler backend for the PowerPC contributed by Gary Byers.

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

  ViewVC Help
Powered by ViewVC 1.1.5