Commit Graph

594 Commits

Author SHA1 Message Date
Matthew Flatt
211fe4cbd7 tests and docs for ephemerons
original commit: 2ea7dcdfca1dea2c89c51c7e9ccd692ba673ba22
2017-05-24 09:38:58 -06:00
Matthew Flatt
0d5340c061 fix interaction of ephemerons and generations; use for weak hashtables
original commit: 6f7147e505aae5c2b9139eea6df8a9c25a35289d
2017-05-24 09:38:24 -06:00
Matthew Flatt
18cdcd977e add ephemerons
original commit: 8a09c2c3f032e6e30b1ef393d2334963aa70507e
2017-05-24 09:38:24 -06:00
Gustavo Massaccesi
caa5949dc2 more optimizations for map and for-each with explicit list
extend the reductions for map and for-each when the arguments are
explicit lists like (list 1 2 3 ...) or '(1 2 3 ...).
  cp0.ss 4.ms

original commit: 4522ccdabd461370ad2d3fa91a92be0e6798d4d8
2017-05-13 14:54:37 -03:00
Bob Burger
b9817b8127 boot files
original commit: a6ea68fb448f4acbd64f9e2dca0dc697be467bad
2017-05-05 16:37:45 -04:00
Bob Burger
323eb3c285 fix overflow detection for fxsll, fxarithmetic-shift-left and fxarithmetic-shift
original commit: f286688b64f877248ab8d8f00528d19363c6ceba
2017-05-05 15:28:29 -04:00
Bob Burger
d1a5bcf399 enum-set-indexer procedure now checks for a symbol, changed "isn't" to "is not" for consistency
original commit: 5df52745d793eb5a16cb6e55065f78f313170ed5
2017-05-05 15:22:46 -04:00
Matthew Flatt
2d63f03442 support Windows build on Bash/WSL
original commit: 7e4782db08210cbacd1bbe46b3a5e166d8dbe20f
2017-05-02 08:25:09 -06:00
Mohamed Akram
d7fcd8e57b Add CC option to configure
original commit: 1a65f0bef4c2af6016c328f7f1151e6d10e342fa
2017-04-28 16:01:09 +04:00
Kent Dybvig
15343364a9 remade bootfiles
original commit: 8fbe1b1e3eb99ef87c6f0b7378087925caf6e05c
2017-04-16 19:02:34 -04:00
R. Kent Dybvig
67e86b0c1d Merge pull request #160 from gus-massa/17-4-Map-Ivory
Fix reduction for map with optimization level 3
original commit: c70ed396983f3081a7f105c19912ff7439937723
2017-04-16 10:27:16 -04:00
Gustavo Massaccesi
f58644991f fix reduction for map and for-each with optimization level 3
To drop the expression, check that procedure has the correct
arity and is discardable or unsafe.

Also add a simplification for for-each with empty lists
with optimization level 2.

  cp0.ss, 4.ms, primdata.ss

original commit: 7ad035a3bd63675a1b40106c841669e04e3299f2
2017-04-16 08:41:24 -03:00
Bob Burger
a618b8860b fixed inverted logic in description of maybe-compile-*
original commit: 3747716ba6a11073146619ce75ff625ad8cbd7c0
2017-04-13 12:59:39 -04:00
Bob Burger
ee0368b462 accross => across in csug/system.stex
original commit: 37b84d9c6085d818ff993b4acc97746762997330
2017-04-13 12:48:36 -04:00
Bob Burger
cbae4b9d77 mutexes and conditions are now freed when no longer used
added $close-resurrected-mutexes&conditions and $keep-live

original commit: 8d9aa4dffc371fc365020e5dac62270dae2aaa95
2017-04-13 09:41:58 -04:00
Bob Burger
c19e662ed0 destroy_thread now processes guardian entries
original commit: 9bcf0a10c1a1c12d93a8eabb061821377de0934f
2017-04-12 10:26:03 -04:00
dybvig
06c7b53344 expanded the CSUG description of the handling of command-line
arguments not recognized as standard options and added a description
of the same to the COMMAND-LINE OPTIONS section of the man page.
did a bit of minor cleanup elsewhere in the man page.
  use.stex, scheme.1.in

original commit: a963a4dbc872be084cbe0ede3f7c361bcabedea5
2017-04-11 13:42:58 -07:00
Bob Burger
831ea8ad18 changed copyright year to 2017
7.ss, scheme.1.in, comments of many files

original commit: 06f858f9a505b9d6fb6ca1ac97234927cb2dc641
2017-04-06 11:41:33 -04:00
Kent Dybvig
118e3f6fd9 added entry for record-type-equal-procedure and friends
release_notes.stex

original commit: 28cbb65f9796672bb9a85d3eb2d63cc149031a1e
2017-03-26 21:04:55 -04:00
dybvig
f290ab67c8 bootfiles and a couple of files I accidentally dropped from Matthhew's changes
original commit: 89085a059ae9ff15511dd8e033f5cdbee54bc97b
2017-03-24 12:13:35 -04:00
R. Kent Dybvig
1fab28ca11 Merge pull request #151 from mflatt/equal+hash
add record-equal+hash
original commit: 20ee3aea2e554ea0f6d07fbe4ed39501138656e9
2017-03-24 10:42:01 -04:00
Matthew Flatt
d9c9e2b1a4 add record-type-equal-procedure, record-type-hash-procedure,
record-equal-procedure, and record-hash-procedure

original commit: 1e0fc38fe4df25804532baef87eaf30340e30bed
2017-03-24 07:22:59 -06:00
Kent Dybvig
3daedbcaa6 - fixed typo: fxvector-immutable-flag used in place of
bytevector-immutable-flag in computation of type-immutable-bytevector
    cmacros.ss
- reallocated typed-object types, using previously unused tag #b010
  for strings and giving bytevectors both #b001 and #b101 (the
  latter for immutable bytevectors) so that the maximum bytevector
  length on 32-bit machines is once again the most-positive fixnum.
  treating bytevectors rather than strings or fxvectors (or even
  vectors) special in this regard is appropriate since the maximum
  number of bytes in a bytevector is maximum-length x 1 rather than
  maximum-length x 4 for strings, fxvectors, and vectors on 32-bit
  machines.  with this change on 32-bit machines, a vector can
  occupy up to 1/2 of virtual memory, strings and fxvectors 1/4,
  and bytevectors 1/8.
    cmacros.ss
- remade boot files

original commit: 0694b3a5223ab937379e54079bc88d57309dc51f
2017-03-16 11:45:33 -04:00
Kent Dybvig
f825e23db2 - generated bytevector=? procedure now gets out quickly on eq
arguments.  cp0 optimizes away a number of additional equality
  operations at optimize-level 3 (including bytevector=?) when
  applied to the same variable references, as it already did for
  eq?, eqv?, and equal?, at all optimize levels.
    cpnanopass.ss, cp0.ss, primdata.ss,
    cp0.ms
- updated bullyx patches
    patch*
- updated release notes and tweaked user's guide.
    release-notes.stex, objects.stex

original commit: e90c39a72563eafa4fccaf1d197060bf20aa552f
2017-03-15 21:24:52 -04:00
Kent Dybvig
b7cd626f71 updated boot files
original commit: 261753b83fda69edb80b69c9825dd4166efd709b
2017-03-15 15:00:21 -04:00
Kent Dybvig
c503362914 - various tweaks to the immutable object support; also taught cp0
to simplify ($fxu< (most-positive-fixnum) e) => (fx< e 0) so we
  don't have any incentive in special casing length checks where
  the maximum length happens to be (most-positive-fixnum).
    5_4.ss, 5_6.ss, bytevector.ss, cmacros.ss, cp0.ss, cpnanopass.ss,
    mkheader.ss, primdata.ss, prims.ss,
    fasl.c, gc.c, types.h
    root-experr*, patch*

original commit: 9eb63deda025fd4560b54746b21a881c01af46d6
2017-03-15 14:49:58 -04:00
Kent Dybvig
9cd0199a39 merge @mflatt immutable-vector, immutable-string, immutable-bytevector,
immutable-fxvector, and immutable-box support

original commit: 547fce9b99c6566d5cb3f7af9ca84654e798486e
2017-03-15 11:09:57 -04:00
Bob Burger
a010eb7f13 removed extra blank line in csug/threads.stex
original commit: cb48dbb6fd6c4c660487e7f0421a6b44aae7d481
2017-03-14 14:52:49 -04:00
Bob Burger
636d1568ab updated copyright date in csug and release_notes
original commit: 35fd693021ae0ad142ebefd910d11778d1527064
2017-03-14 14:27:47 -04:00
Bob Burger
0855179f98 boot files
original commit: ef2aea7c892d18114dbb9e14d97e2c5cc0df281a
2017-03-14 13:26:18 -04:00
Bob Burger
288243924f added optional timeout to condition-wait
original commit: 26d4dfc437fde2ba85d2d1a9ccadc2fa36979da0
2017-03-14 12:53:10 -04:00
Bob Burger
03072287e9 64-bit Windows double varargs
original commit: c343e7181b4c69589a7ce73fdfd11b23905a48d3
2017-03-13 15:46:49 -04:00
dybvig
aa6a006e39 fixed a few comments to refer to scheme.c rather than main.c
externs.h, globals.h, thread.c

original commit: 1a05b09f421fb19d38f3fdfa1f8485fc7943068b
2017-03-13 11:25:25 -04:00
Kent Dybvig
6cacbb61c5 Merge branch 'master' of github.com:cisco/chezscheme
original commit: f279c874b49175465c2e18e4543508a759367a8a
2017-03-13 00:00:48 -04:00
Kent Dybvig
9a16156574 eliminated some direct assumptions that a vector's type/length field
is a fixnum and added meta-asserts to verify that it is in a couple of
others, to facilitate future changes to vector typing.  vectors are
now treated essentially like fxvectors, strings, and bytevectors.
  cmacros.ss, cpnanopass.ss, prims.ss, mkheader.ss,
  alloc.c, gc.c, scheme.c

original commit: 564542d32bbae6b33cef808613238d5a4a2a8ee2
2017-03-12 23:54:38 -04:00
Andy Keep
33987d3401 reduced tests to conform to the travis-ci limits.
paired the 'partialx' down to just four test configurations, with one
interpreter run, to try to get the threaded builds into line with
travis-ci's timeout.
   mats/Mf-base

original commit: 6d8c871cd60228755660395e96087878ca9d040f
2017-03-12 16:28:40 -04:00
Andy Keep
f60d06c4e9 adding travis-ci automation to the master branch.
added travis-ci automation script and a 'partialx' testing target to
allow us to perform more than a single run of testing without running
afoul of travis-ci's 50-minute build timeout.  'partialx' tests six
of the twelve configurations tested by 'allx'.
   .travis.yml (new),
   mats/Mf-base

original commit: fdc8dc40e95b0977ab7bc07636585b71e56802a3
2017-03-12 14:56:04 -04:00
Andy Keep
2c195c5ce7 Re-enabling the other build types.
original commit: a8fb8c049d84e5664b4e1d9f405c55f643116b9d
2017-03-12 14:51:09 -04:00
Andy Keep
d32433bcd7 Adding lib32ncurses and libx32ncurses.
original commit: 06f07a57b86ed83239ceb5274c43e359eb7b8e79
2017-03-12 14:13:42 -04:00
Andy Keep
1bedb14887 Trying again with gcc-multilib instead of explicit library installs.
original commit: 9cbf6fe2c7c4ce26fd203e0fa6e0c00c6a4fbbf0
2017-03-12 14:08:49 -04:00
Andy Keep
f7a74f0cbb Attempting to use the addons feature, travis lint says no, but the online docs say yes.
original commit: 7505f22c46888caf0edd1110ef4a6cc4ec00931f
2017-03-12 14:04:48 -04:00
Andy Keep
d4461c7122 Trying again with a mats/Mf-base that has a reduced list of tests.
original commit: 3beb71c45fc331198c6cd4c58f980425418910b1
2017-03-12 13:56:58 -04:00
Andy Keep
2fa0a276ac Fix to install ia32-libs as well, since we seem to be running on 12.04 sometimes.
original commit: 06b12864c4c5d8a504fd8d1972c718ceac55a8f6
2017-03-12 13:29:21 -04:00
Andy Keep
26e49c19e6 Apparently, apt list does not give a list of names that apt-get understands, trying again with the "canonical" 32-bit install libs.
original commit: d89d8ff47594ecc765f2c2db3fd8aa7da1d6a951
2017-03-12 00:00:27 -05:00
Andy Keep
8e31239ab7 Fixing the apt-get sudo requirement for the Linux x86 builds.
original commit: ff0bd879b353ad688dca7d3d284a62227ac285f0
2017-03-11 23:54:36 -05:00
Andy Keep
4dc75cdd65 Altering the settings for i3le and ti3le to install 32-bit library support.
original commit: 6c3fb7a1445c64e8f57362a1768b42462cffc324
2017-03-11 23:50:03 -05:00
Andy Keep
3a9a7dc7b0 Change to (hopefully) eliminate extraneous configurations.
original commit: eb22ad1f69742ec61b0653cdce0b3a7f8cb0dbb5
2017-03-11 23:21:18 -05:00
Andy Keep
1b4ddd640c Second try on .travis.yml, this time on correct branch hopefully.
original commit: 523f6a0a92b2c6ef0f82a596689ae515392dfeca
2017-03-11 23:12:33 -05:00
Andy Keep
9478143689 Initial .travis.yml push, experimental.
original commit: ec7a7f9968bdc1852948a1be69f098b37a296532
2017-03-11 21:49:54 -05:00
Bob Burger
e84263d85e fixed bug in mats/foreign.ms update for Windows
original commit: 8b27ac0fd743ef972dd1416c21034c7c5a0f39c2
2017-03-08 14:12:29 -05:00