Andy Wingo
691697de09
Rename "RTL" to "bytecode"
...
"RTL" didn't make any sense, and now that there's no other bytecode to
disambiguate against, just call it bytecode.
* module/Makefile.am:
* module/ice-9/eval-string.scm:
* module/language/bytecode.scm:
* module/language/bytecode/spec.scm:
* module/language/cps/arities.scm:
* module/language/cps/compile-bytecode.scm:
* module/language/cps/compile-rtl.scm:
* module/language/cps/contification.scm:
* module/language/cps/elide-values.scm:
* module/language/cps/primitives.scm:
* module/language/cps/reify-primitives.scm:
* module/language/cps/spec.scm:
* module/language/cps/specialize-primcalls.scm:
* module/language/rtl.scm:
* module/language/rtl/spec.scm:
* module/scripts/compile.scm:
* module/system/base/compile.scm:
* module/system/repl/common.scm:
* module/system/vm/assembler.scm:
* module/system/vm/debug.scm:
* module/system/vm/disassembler.scm:
* module/system/vm/dwarf.scm:
* test-suite/tests/cross-compilation.test:
* test-suite/tests/dwarf.test:
* test-suite/tests/rtl-compilation.test:
* test-suite/tests/rtl.test:
* test-suite/vm/run-vm-tests.scm: Fixups.
2013-12-02 21:31:47 +01:00
Andy Wingo
e54c7dd67c
Fix brainfuck comment
...
* module/language/brainfuck/parse.scm: Fix outdated comment.
2013-12-02 19:03:50 +01:00
Andy Wingo
60ce72b9b9
Fix brainfuck->scheme compiler.
...
* module/language/brainfuck/compile-scheme.scm (compile-scheme): Fix
brainfuck compiler.
2013-12-02 19:03:48 +01:00
Andy Wingo
7f71030837
Fix brainfuck comment
...
* module/language/brainfuck/parse.scm: Fix outdated comment.
2013-12-02 19:02:38 +01:00
Andy Wingo
cdc75fd001
Fix brainfuck->scheme compiler.
...
* module/language/brainfuck/compile-scheme.scm (compile-scheme): Fix
brainfuck compiler.
2013-12-02 19:02:38 +01:00
Mark H Weaver
7cfcb60bc1
GOOPS doc fix: #:dsupers is the init keyword for the dsupers slot.
...
* doc/ref/goops.texi (Metaclasses): #:dsupers is the initialization
keyword for the dsupers slot, not #:supers.
2013-12-01 18:41:31 -05:00
Mark H Weaver
79657fd3ec
Thread safe port properties.
...
* libguile/ports.c (scm_i_port_property, scm_i_set_port_property_x):
Lock the port mutex while accessing the port alist.
* libguile/read.c (set_port_read_option): Lock the port mutex
while modifying port read options.
2013-12-01 18:34:30 -05:00
Andy Wingo
1f6f591d66
Add section to vm.texi about Guile's use of ELF
...
* doc/ref/vm.texi (Object File Format): New section.
2013-12-01 12:35:12 +01:00
Andy Wingo
9e9745b355
vm.texi tweak
...
* doc/ref/vm.texi (Why a VM?): Small tense tweak.
2013-11-30 20:59:14 +01:00
Andy Wingo
69aecc6abb
Update vm.texi's "Instruction Set" section.
...
* doc/ref/vm.texi (Instruction Set): Update.
2013-11-30 18:46:14 +01:00
Andy Wingo
ddf0d7bb2e
Fix more vm-engine comments
...
* libguile/vm-engine.c: Fix more comments.
2013-11-30 18:46:14 +01:00
Andy Wingo
2b6659e438
Remove slot-ref and slot-set! ops
...
* libguile/vm-engine.c: Remove slot-ref and slot-set! ops.
2013-11-30 18:46:14 +01:00
Andy Wingo
4d6a7ac6ad
Remove GOOPS-internal @slot-ref and @slot-set!
...
* module/oop/goops.scm: Remove definitions of @slot-ref and @slot-set!.
They are equivalent to struct-ref and struct-set!.
(define-standard-accessor-method): Reimplement using syntax-case.
(bound-check-get, standard-get, standard-set): Replace @slot-ref and
@slot-set! uses with struct-ref and struct-set!.
* module/language/cps/reify-primitives.scm (primitive-module): Remove
@slot-set! and @slot-ref references.
2013-11-30 18:46:14 +01:00
Andy Wingo
23e2e78067
Beginning vm.texi updates
...
* doc/ref/vm.texi: Updates.
2013-11-30 18:46:14 +01:00
Andy Wingo
02f9d49614
Fix vm-engine.c comments
...
* libguile/vm-engine.c: Fix some comments.
2013-11-30 18:46:14 +01:00
Andy Wingo
1b1c912544
Unknown files print as (unknown file) in disassembler
...
* module/system/vm/disassembler.scm (disassemble-buffer): Print unknown
files as "(unknown file)".
2013-11-30 18:46:14 +01:00
Andy Wingo
321c32dc9d
,x disassembles nested programs too
...
* module/system/vm/disassembler.scm (code-annotation):
(disassemble-buffer, disassemble-addr, disassemble-program): Arrange
to disassemble nested procedures.
(disassemble-image): Adapt.
2013-11-30 18:46:14 +01:00
Andy Wingo
f5729276a9
Update history.texi
...
* doc/ref/history.texi (A Timeline of Selected Guile Releases, Status):
Update.
2013-11-30 18:46:10 +01:00
Andy Wingo
0d1788039a
Remove outdated section of api-memory.texi
...
* doc/ref/api-memory.texi (Memory Blocks): Remove section documenting
scm_must_malloc and friends.
2013-11-29 12:28:53 +01:00
Andy Wingo
d511a2e160
Merge remote-tracking branch 'origin/stable-2.0'
2013-11-28 16:24:38 +01:00
Andy Wingo
8f0ecae98c
Critical sections in guardians do not need to block asyncs
...
* libguile/guardians.c: Critical sections here cannot cause an
async_tick, so they do not need to block asyncs.
2013-11-28 16:20:42 +01:00
Andy Wingo
fcd953f699
Merge commit ' d364a89718
'
...
Conflicts:
libguile/deprecated.h
libguile/gc.c
2013-11-28 16:16:48 +01:00
Andy Wingo
5dfafc3c76
Merge commit ' e7bd20f7d9
'
2013-11-28 16:15:55 +01:00
Andy Wingo
ae9c16e895
Merge commit ' 17330398d5
'
2013-11-28 16:15:51 +01:00
Andy Wingo
9b95f3ced4
Merge commit ' a38024baaa
'
...
Conflicts:
libguile/ports.h
2013-11-28 16:15:38 +01:00
Andy Wingo
6683f204ba
Merge commit ' 2437c7b2e8
'
...
Conflicts:
libguile/guardians.c
2013-11-28 16:03:58 +01:00
Andy Wingo
f76cf73a49
Merge commit ' 8571dbde63
'
...
Conflicts:
libguile/procprop.c
2013-11-28 15:00:17 +01:00
Andy Wingo
6dd9810902
Merge commit ' 750ac8c592
'
...
Conflicts:
.gitignore
libguile/deprecated.c
2013-11-28 14:53:03 +01:00
Andy Wingo
acf7530a3e
Merge commit ' c61be45084
'
...
Conflicts:
libguile/ports.c
2013-11-28 14:47:38 +01:00
Andy Wingo
091dd0cc58
Merge commit ' d360671c1c
'
2013-11-28 14:46:24 +01:00
Andy Wingo
d364a89718
Deprecate gc-live-object-stats
...
* libguile/gc.h:
* libguile/gc.c:
* libguile/deprecated.h:
* libguile/deprecated.c (scm_gc_live_object_stats): Deprecate; it hasn't
worked in the whole 2.0 series.
2013-11-28 14:40:58 +01:00
Andy Wingo
553294d958
Avoid needless GC on startup due to scm_gc_register_allocation
...
* libguile/gc.c (bytes_until_gc): Initialize to
DEFAULT_INITIAL_HEAP_SIZE, to avoid forced GC on the first
mallocation.
2013-11-28 12:10:50 +01:00
Andy Wingo
87fc4596e5
Remove private-gc.h
...
* libguile/simpos.c (scm_getenv_int): Move here, from gc.c.
* libguile/private-gc.h: Remove, unused.
* libguile/simpos.h: Move scm_getenv_int declaration here.
* libguile/vm.c:
* libguile/gc.c: Adapt scm_getenv_int users.
* libguile/gc-malloc.c:
* libguile/load.c:
* libguile/script.c: Remove private-gc includes from non-users of
scm_getenv_int.
* libguile/Makefile.am: Adapt.
2013-11-28 11:53:57 +01:00
Andy Wingo
35164d84e0
scm_i_tag_name internal to gc.c
...
* libguile/gc.c (scm_i_tag_name): Make internal to gc.c.
* libguile/private-gc.h: Remove from here.
2013-11-28 11:46:13 +01:00
Andy Wingo
5a706f0342
More private-gc excisions
...
* libguile/private-gc.h (SCM_DOUBLECELL_ALIGNED_P): Remove; unused.
* libguile/filesys.c (MAX, MIN): Move definitions here, from
private-gc.h.
(scm_sendfile, scm_readdir): Adapt uses of SCM_MAX and SCM_MIN to use
MAX or MIN.
2013-11-28 11:43:51 +01:00
Andy Wingo
8d78304e4d
Remove unused enum policy_on_error
...
* libguile/private-gc.h (enum policy_on_error): Remove unused enum.
2013-11-28 11:37:29 +01:00
Andy Wingo
064d24093b
Tune initial heap size
...
* libguile/fluids.c (new_fluid): Don't run an explicit GC for the first
fluid.
* libguile/gc.c (DEFAULT_INITIAL_HEAP_SIZE, scm_storage_prehistory):
Enlarge from 32 kB to 512 or 1024 kB, depending on word size. Reduces
startup time by 10 or 15% by avoiding excessive
GC.
* libguile/private-gc.h: Remove SCM_DEFAULT_INIT_HEAP_SIZE_2 definition
here.
2013-11-28 11:32:08 +01:00
Andy Wingo
a0a4d859c4
Remove another GC 6.8 hack
...
* libguile/gc.c (scm_storage_prehistory): Remove hack for BDW-GC 6.8.
2013-11-28 11:05:38 +01:00
Andy Wingo
3cff108dde
Fix "include" doc typo
...
* doc/ref/api-evaluation.texi (Local Inclusion): Fix typo.
2013-11-28 10:59:42 +01:00
Andy Wingo
f88e9510f0
Use version 2.2 in manual examples
...
* doc/ref/api-evaluation.texi (Load Paths):
* doc/ref/api-options.texi (Build Config):
* doc/ref/guile-invoke.texi (Environment Variables):
* doc/ref/libguile-parallel.texi (Parallel Installations): Use 2.2 in
examples, rather than 2.0.
2013-11-28 10:57:42 +01:00
Andy Wingo
c0d928dc2b
Fix some references to objcode in the manual
...
* doc/ref/api-evaluation.texi (Compilation): Update references from
"objcode" to "rtl".
2013-11-28 10:56:55 +01:00
Andy Wingo
a5d0c135c0
Remove nonfunctional gdb interface
...
* libguile/gdb_interface.h:
* libguile/gdbint.c:
* libguile/gdbint.h: Remove. These were last modified significantly in
1997 and I think they are unused.
* libguile/guile.c: Remove use.
* libguile.h: Remove inclusion.
* libguile/Makefile.am: Remove reference.
* libguile/init.c: Remove use.
2013-11-27 22:31:00 +01:00
Andy Wingo
f689dd6982
Remove the restore-continuation-hook.
...
* libguile/vm.h:
* libguile/vm.c:
* libguile/vm-engine.c:
* module/system/vm/traps.scm:
* module/system/vm/vm.scm: Remove the unused and redundant
restore-continuation-hook.
2013-11-27 22:03:58 +01:00
Andy Wingo
36cc0b901c
Declare r6rs-ports functions
...
* libguile/r6rs-ports.h:
* libguile/r6rs-ports.c: Declare scm_unget_bytevector and
scm_i_make_transcoded_port.
2013-11-27 21:13:20 +01:00
Andy Wingo
fe8935d432
Fix uninitialized variable error in some peek-char error cases
...
* libguile/ports.c (scm_peek_char): Don't require error cases to
set *len. Fixes a bug caught by GCC whereby an EOF while reading a
multibyte character with iconv would leave len uninitialized.
2013-11-27 19:50:13 +01:00
Andy Wingo
6a9d9e3a62
Declare scm_i_open_file to silence a warning
...
* libguile/fports.c (scm_i_open_file): Declare.
2013-11-27 19:36:46 +01:00
Andy Wingo
05326efbb1
Remove generalized vector interface; deprecated in 2.0 already.
...
* libguile/deprecated.c: Remove the generalized-vector interface,
deprecated since 2.0.8.
2013-11-27 19:31:09 +01:00
Andy Wingo
84800dffc2
Declare scm_nil_p
...
* libguile/boolean.h: Declare scm_nil_p.
2013-11-27 19:30:18 +01:00
Andy Wingo
c30edbbd5b
Build psyntax-pp serially after eval.go.
...
* module/Makefile.am: Arrange to build psyntax-pp.go in serial mode,
after eval.go. Before the expander is compiled, expanding all the
Scheme files dominates compile-time, even for larger files like
psyntax-pp.scm. If we compile psyntax in parallel with other files,
it could be one of the other files finishes first, leading to two
consecutive compiles that have to use an uncompiled psyntax expander.
Ordering the compilation minimizes total real and user time, at least
locally on a 4-core machine.
Also take the opportunity to shuffle compile order for the rest of the
Scheme files, to build parts of the RTL compiler early.
2013-11-26 10:47:29 +01:00
Andy Wingo
310da5e1ef
Contification converges more quickly
...
* module/language/cps/contification.scm (compute-contification):
Converge more quickly by using the information we compute within a
compute-contification pass.
2013-11-26 08:52:56 +01:00