Commit Graph

944 Commits

Author SHA1 Message Date
Matthew Flatt
0ac2f40d18 vfasl: save relocations if flag is set
original commit: 23ba508373fbcbe1fcba367bce86f60a54bbf4f1
2019-01-02 15:33:04 -07:00
Matthew Flatt
2b090ef32c vfasl repair: terminate segments as needed
When starting a new segment to keep an object on a single segment,
terminate the old one with e forwarding marker.

original commit: 1f1db6d3d2cd930455a3592f2d76a465b30a5592
2019-01-01 15:40:09 -07:00
Matthew Flatt
e97b763478 update Windows makefiles for vfasl
original commit: c5af59e0b5e6e635d25ca5d6e0b2d7f61d2d2bb6
2018-12-31 10:07:15 -07:00
Matthew Flatt
8b5d7ba02e vfasl repair
original commit: ee6a5df5d180ea1c9487ceb1d565d61120e69168
2018-12-31 08:01:47 -07:00
Matthew Flatt
f6b40d39ba Merge branch 'noncm' of github.com:mflatt/ChezScheme
original commit: b99995a8d38565cbedfbe46ab8a6006ee936b331
2018-12-30 08:18:13 -07:00
Matthew Flatt
9a366730f4 cp0: move only known-single-valued out of single-value context
Aviod turning an error like

 (let ([x (values 1 2)]) x)

or

 (car (list (values 1 2)))

into a program that returns multiple values.

original commit: 4efb3d6f226d9131f87023e45ff2b7e4713da8ae
2018-12-30 08:15:55 -07:00
Matthew Flatt
c11780285d sync bootfiles
original commit: 0676f3b06df68f895d99c58ab7144b5fdcc30783
2018-12-29 06:16:55 -06:00
Matthew Flatt
69b92a0ca4 sync vfasl repair
original commit: b234ef2f5cb8352b9755b2cc908d562a25d18c62
2018-12-29 06:16:55 -06:00
Matthew Flatt
a0e9eed93f Merge dfasl branch of mflatt/ChezScheme
original commit: c6168b2d0b1b97e9822bc8eae2e08900cebb7152
2018-12-28 08:45:06 -06:00
Matthew Flatt
7c548bb3a1 update vfasl merge
original commit: 99dac3f53f4a7d2b2c373489135e5d270c256726
2018-12-28 08:39:21 -06:00
Matthew Flatt
5892906610 sync equates
original commit: 65d5cee0a19569fb98bb5dceafd3ecac9cbd4780
2018-12-28 08:34:06 -06:00
Matthew Flatt
6d3fc30233 avoid fasl overflow of C stack
When writing a fasl stream, add extra graph points as needed
to limit recursive reading to about 500 non-tail recursions.

original commit: a6759efdc6ac68e45ec8755a5fe9b75038e173a5
2018-12-28 08:26:50 -06:00
Matthew Flatt
d8dc4c71cc Merge branch 'separate' of ../ChezScheme-vfasl
original commit: 84734ded0f503f6604e7461a8be5e1e795a92efa
2018-12-24 05:32:24 -07:00
Matthew Flatt
545a465cf4 Merge ../ChezScheme-vfasl
original commit: dbe15d6cae6f23c4e218974ac83f36a935292ad2
2018-12-24 05:28:16 -07:00
Matthew Flatt
71c2efd2fc rename to compile-vfasl
original commit: 51c525dacc6f2a5627aa2cb1c13a25e072b04c5e
2018-12-23 10:52:51 -07:00
Matthew Flatt
c3ef889099 fix allocation: avoid malloc and free
original commit: 40da1e7c8820163b4532cc75b6ed3c4229e2c4db
2018-12-23 06:17:53 -07:00
Matthew Flatt
133e820723 simplify vfasl_header
original commit: dab5ea7f7ee761ab6799c242df07ef209657eb74
2018-12-23 05:55:02 -07:00
Matthew Flatt
14e910409c experiment with a different fasl format
Use `vfasl-convert-file` to convert to the vfasl format, something
like this:

 (vfasl-convert-file "orig/petite.boot" "new/petite.boot" '())
 (vfasl-convert-file "orig/scheme.boot" "new/scheme.boot" '("petite"))
 (vfasl-convert-file "orig/racket.boot" "new/racket.boot" '("petite" "scheme"))

original commit: a40886e2fba741ca8cfc5ebd16b902d6414da0ae
2018-12-21 21:06:08 -07:00
Matthew Flatt
f3bbf06ce3 direct to static
original commit: ca6b0890ebd1cdeeae31dc3f11daa7fa02af013e
2018-12-21 14:16:24 -07:00
Matthew Flatt
a993c9c11e combine multiple fasl to one vfasl when possible
original commit: d8d4400b42196088defac994b7f97a26446d8ed2
2018-12-21 08:58:28 -07:00
Matthew Flatt
f0376299a8 experiment with a different fasl format
original commit: e2c50bd7ae5b323fcc796eb78d892f4a2c487dfc
2018-12-20 20:27:41 -07:00
Matthew Flatt
5cace8bee3 repairs
original commit: a7c8036d40fc3c92b6b08ba8d1a62f76f2d5fab6
2018-12-20 20:24:35 -07:00
Matthew Flatt
ed1d5c982d Merge ../ChezScheme-vfasl
original commit: 78ba118cbde76dd42bc4275ccc76219e159e04d7
2018-12-20 17:51:38 -07:00
Matthew Flatt
c90bd7bb6d experiment with a different fasl format
original commit: 6e32ed2a43f6b3d8531e98dfa52a56594dd6a2f4
2018-12-20 17:47:01 -07:00
Matthew Flatt
efb93d2653 Merge branch 'gcbt' of github.com:mflatt/ChezScheme
original commit: 51c6b2a880000ce754e1595f4481957e9fc7f722
2018-12-16 07:00:22 -07:00
Matthew Flatt
7864a1f45e Merge branch 'arity-wrapper' of github.com:mflatt/ChezScheme
original commit: 1967e6fb2948ea59d9f3b403b7b6e20d228502b1
2018-12-16 06:51:39 -07:00
Matthew Flatt
5a27f6de14 Merge branch 'orderfnl' of github.com:mflatt/ChezScheme
original commit: 04618715b7b447877cd874715d78094befb0b988
2018-12-16 06:46:34 -07:00
Matthew Flatt
90b9b4f6b7 sync bootfiles
original commit: 9f95d79130b311816f5dc0bb3ce0e8e19068b95c
2018-12-07 15:39:55 -07:00
Matthew Flatt
7eb7089c79 inline record-type-descriptor and record-type-uid
original commit: cc7ebd105c0447870eeefe5214fcc0a6d0ead64d
2018-12-07 12:32:17 -07:00
R. Kent Dybvig
03a33fb4fc Merge pull request #367 from kalvdans/zero-allocations
Add initialization of seginfo sorted and trigger_ephemerons fields
original commit: d677c0d03b734b3cf5166f2cd6b97effd64667ec
2018-12-05 15:32:37 -08:00
R. Kent Dybvig
b7cca1a835 Minor tweak
original commit: d2b5ba5d5c45660e63b32fb501b6684d3d11036b
2018-12-05 15:30:40 -08:00
R. Kent Dybvig
abf4ae18bb Update LOG
original commit: 62b92d664e166133d96cb084791ad51e57207bb1
2018-12-05 15:25:21 -08:00
Matthew Flatt
31e65b1554 reliably preserve cp in thread context for S_call_help
Also, for completeness, correct the listing of callee-save registers
in callable return for x86 & x86_64.

original commit: 276f8da076a5692457226ea6ad74ba5f0e71cc06
2018-12-05 16:13:25 -07:00
Christian Häggström
d9d0e94d95 Initialize more fields of seginfo
original commit: 48e93161f6ac2796d17a0f147f0dca1e1e195684
2018-12-05 23:36:57 +01:00
R. Kent Dybvig
44f93b0ddb Merge pull request #365 from mflatt/retreg
correct CP(TC) management for callable return
original commit: ff73b2bcdecbf8f5b9360a7f774dba70b664249b
2018-12-05 11:49:25 -08:00
Matthew Flatt
54ffb5dfbe reliably preserve cp in thread context for S_call_help
Also, for completeness, correct the listing of callee-save registers
in callable return for x86 & x86_64.

original commit: 4cd942be6ab2eb5e02f6d6c5c509db3131bd015f
2018-12-05 07:53:49 -07:00
Matthew Flatt
b7f90e2495 sync bootfiles for Windows
original commit: a54ebf3236d0dd441799d36e8b0f28bc0ff40701
2018-11-21 17:36:46 -07:00
Matthew Flatt
f635d5da42 make procedure-arity-mask reliable for record constructors
When a record-type constructor is formed dynamically,
and when it had more than 6 arguments, use a wrapper
to explicitly set the constructor's arity.

Relevant to racket/racket#2390

original commit: 0a8d335b4f479681dc6dcb5e67126aa3a97357c3
2018-11-19 19:59:34 -07:00
dyb
530882e379 addressed small portions of github issues #278 and #353:
updated descriptions of standard-input-port and standard-output-port;
fixed a missing "and" in the description of utf-16-codec,

original commit: a5db479b68b74dda9f62665c44cfad2b1baf322e
2018-10-22 19:29:30 -07:00
R. Kent Dybvig
b0abacbb55 Merge pull request #354 from goober99/hacktoberfest
Fixed typos pointed out in #353
original commit: fad29dbdf9f305abd6d1a7e4609bf96b251b47bc
2018-10-22 19:20:20 -07:00
Matthew Flatt
31b7c8fd7a add --disable-curses option
To support a more minimal build enviornment, offer the possibility of
building without "curses.h" and "libcurses" (which disables the
expeditor, although the expeditor's code is still included).

original commit: 9a17f73e6fc5e117c19333e15c6afb797dd6b08f
2018-10-22 19:38:08 -06:00
Bob Burger
4699fc1db0 improved consistency of Windows filename handling
original commit: 9017943cdba8c54c8f0acf20b037174780c10039
2018-10-22 16:17:12 -04:00
Matthew Flatt
aedc74ce06 fix mvcall tracking of tail-wrt-mark calls
An `mvcall` or `mvset` form holds multiple calls, so the producer call
and the consumer calls need to be tracked separately.

original commit: 0dd559cdd1539753f4ec3fa0c1d575709074b455
2018-10-13 08:30:28 -04:00
Matthew D. Miller
03ae461f54 Fixes typos pointed out in #353
original commit: ebee5db8fac9639bd88f313ef0c4a0641dba8317
2018-10-05 15:01:36 -05:00
dyb
19f3c85fe2 attempted partial fix for github issue 352
- when thread_get_room exhausts the local allocation area, it now
  goes through a common path with S_get_more_room to allocate a new
  local allocation area when appropriate.  this can greatly reduce
  the use of global allocation (and the number of tc mutex acquires
  in threaded builds) when a lot of small objects are allocated by
  C code with no intervening Scheme-side allocation or dirty writes.
    alloc.c, types.h, externs.h

original commit: 93dfa7674a95837e5a22bc622fecc50b0224f60d
2018-10-05 09:03:30 -07:00
Bob Burger
75a70547f8 use uuid_generate on unix-like systems for S_unique_id
original commit: 2fd3db68230d094a0d396348a8140a4d3693b120
2018-09-19 10:19:03 -04:00
Bob Burger
59c055d91f add note about build directory under Bash/WSL
original commit: 41eca9aeea5d036877d09f996414c1f9311ecdb8
2018-09-17 09:25:11 -04:00
Matthew Flatt
e9d7d76fd9 update Windows bootfiles
The minimal build script for Windows does not update bootfiles.

original commit: d6dec7be0800bc8caf23f5f0b63791841523b1d2
2018-09-13 08:55:38 -06:00
Bob Burger
57b0163e93 add PDB files for Windows
original commit: 6d9bda11c1f8d31bf86c559892cf968d7f0c1595
2018-09-07 16:56:33 -04:00
Bob Burger
d468c35f29 added uninstall target for Unix-like systems
original commit: 4e5831fc0220ceede934f1d300b588129f770783
2018-08-31 13:22:47 -04:00