Commit Graph

700 Commits

Author SHA1 Message Date
dyb
a1195b7f7e addressed foreign-callable / boot file invalid memory reference:
- fixed a bug in which instantiating a static foreign-callable code object
  fails with an invalid memory reference because the collector has
  discarded its relocation information.  foreign-callable code objects
  are now flagged as "templates", and the collector now refuses to
  discard relocation information for code objects marked as templates
  when copying them to the static generation.
    cmacros.ss, cpnanopass.ss,
    gc.c,
    7.ms
- committing updated boot/*/equates.h (without the boot files, which are
  still usable for bootstrapping)
    boot/*/*.h
- updated release notes
    release_notes.stex

original commit: 71d3abba684e04b134720ea1bd9a8c847c38ac5f
2019-02-06 22:22:21 -08:00
R. Kent Dybvig
575809907d Merge pull request #384 from DeathKing/fixtypo-syntax-vector
fixed a typo in syntax.stex; syntax->vector returns a vector not a list.
original commit: 1c14765c2c983f835f7b7c7e3c981a1acfefc9df
2019-02-05 15:05:37 -08:00
R. Kent Dybvig
60702ca3fc Merge pull request #387 from mflatt/fpstr
fix string allocation for foreign-callable argument or foreign-call return
original commit: f2cc62974a26f4dd54677d8b3ad8f25108862deb
2019-02-05 15:04:07 -08:00
R. Kent Dybvig
4bd603231a Merge branch 'master' into fpstr
original commit: 216139066e8ba8dc510fc7a1ee32f48bce2e5742
2019-02-05 15:03:40 -08:00
R. Kent Dybvig
94e24691ca Merge pull request #391 from owaddell/owaddell/apply-fix
heed app-convention to fix apply issue
original commit: 3be503017779b9b9f2a039bd07c683ed183f171d
2019-02-05 14:16:47 -08:00
Oscar Waddell
a58dfb690a make cp0 heed app-convention when folding primitive calls
fix #389 (apply doesn't throw exception when last argument isn't a list)

fold-primref and fold-primref2 ignored app-convention when
attempting to fold certain primitive calls in 'test and 'effect
context and when falling back on the default primitive handler.

We now residualize primitive references if the app-convention
is not 'call.  The original fold-primref2 already bypassed the
inline handler when the app-convention was not 'call.

original commit: f9d10c4cf2e6cd184ad7429f251360a738600959
2019-02-05 12:24:07 -05:00
Matthew Flatt
9974c3bf7e repair to single-valued tracking
original commit: 8eb7644eb5def8d2a0864ef71610457d8be8c111
2019-02-02 14:12:27 -07:00
Matthew Flatt
3db5d5ab2d repair for eqv? on an immediate flonum
original commit: fd544591c6d8ba59456d5cbe6e9fc7fc010410f2
2019-02-02 13:35:30 -07:00
Matthew Flatt
627c809de4 Merge branch 'fpstr' of github.com:mflatt/ChezScheme
original commit: 871ccfa8688baa865731e047c59677b652d808f3
2019-02-01 05:26:06 -07:00
Matthew Flatt
7027a71f01 fix string allocation for callable argument or foreign-call return
The `dofretu...*` intrinsics used %ac1 without declaring it as a used
registers, which effectively broke register allocation for handling
string/bytevector foreign-call results or callable arguments.

original commit: 993fb9036acad5445319f458fd971b1a1d8e9f84
2019-01-27 13:01:57 -07:00
DeathKing
f089a6eed9 fixed a typo in syntax.stex; syntax->vector returns a vector not a list.
original commit: 1b13007dde4135e7ee5a04926c474633e2324c36
2019-01-24 20:55:09 +08:00
Matthew Flatt
75d6219a99 improve cp0 single-value detection, epsecially for loops
Compute some simple fixpoints so that `+`, `*`, etc. can be inferred
to be single-valued.

original commit: f6b6f034016936f9dde49bea5c66ea0f4a7f7676
2019-01-22 18:43:17 -07:00
Matthew Flatt
9d40161eb3 sync bootfiles [threaded only]
original commit: 2c2a48040e7d04b4afda0e466881ab9a8fb27c1b
2019-01-22 10:02:48 -07:00
Matthew Flatt
b5a4199e60 Merge branch 'procsv' of github.com:mflatt/ChezScheme
original commit: a3182ae3f31a226e1b302a2f2bb3f4f4d667b804
2019-01-22 06:41:34 -07:00
Matthew Flatt
e95fb6008b add procedure-known-single-valued?
original commit: f2a45ea588003c662bc2109e38ff052832d0c262
2019-01-22 06:37:12 -07:00
Matthew Flatt
8070a7b910 Merge branch 'eqfl' of github.com:mflatt/ChezScheme
original commit: 8b36396eacb139e0fff70efcd2c9dc842815324f
2019-01-22 05:57:17 -07:00
Matthew Flatt
21fc705234 adjust GC to preserve eq? on flonums
original commit: d405416eb2ec6d5dd147afc7a2af5a6c2f0a8130
2019-01-22 05:24:05 -07:00
Matthew Flatt
6e999d02c3 add ordered guardians
Also, avoid quadratic time in GC for guardian chains.

original commit: 273f79a7be5c04370c399e6b1d8af799efc8b33f
2019-01-22 05:19:38 -07:00
Matthew Flatt
67a0b0948f Merge branch 'leftassoc' of github.com:mflatt/ChezScheme
original commit: 19d0cb77e6b6dd32fa4a7a26505ee952b4efa756
2019-01-21 10:54:19 -07:00
Matthew Flatt
ae71f7472d add enable-arithmetic-left-associative
Add a parameter to constrain the compiler (off by default) to
implement `+`, `*`, and variants as left-associative when given
multiple arguments.

original commit: d126ba3364893e66263c65af1cd6dbdd8b021439
2019-01-21 10:51:16 -07:00
Matthew Flatt
c647fd031d Merge branch 'titlecase' of github.com:mflatt/ChezScheme
original commit: 244185f858a01b4679d2add4f0f6dc90c9f92c3d
2019-01-20 16:35:27 -07:00
Matthew Flatt
4752199578 fix string-titlecase on special-casing characters
original commit: 0ae58f75bcf76fb41e571579a81ab2080379455c
2019-01-20 16:34:25 -07:00
Matthew Flatt
09c177af2b sync equates and Windows threaded boot files
original commit: a7d73e7ee83ffa35f580ca4edf1b571b954319e9
2019-01-20 09:03:40 -07:00
Matthew Flatt
b27f3c0a94 Merge branch 'phantom' of github.com:mflatt/ChezScheme
original commit: 743a56d8f1920620e8f6e14edca7984101425e14
2019-01-20 07:56:59 -07:00
Matthew Flatt
538def47de add phantom bytevectors
original commit: 001917fd98ac6a0f13ccab902e15b9d2169c4b9c
2019-01-20 07:41:09 -07:00
dyb
90349ecc54 updated date in release_notes.stex
original commit: 6d44fee2b3126b9dbcca8b87694738e14e753927
2019-01-18 10:26:10 -08:00
dyb
33e1149d44 clarified required use of scheme-start to start an application
packaged as a boot file and added a short "myecho" example.
  use.stex

original commit: 58c07fdd629a4f45e6d7e1a062a6d9dde7d11050
2019-01-18 10:15:20 -08:00
Matthew Flatt
b945bc9318 fixups for eqvnan and expt merges
original commit: 95165bd192db6136583a7141587173900e2da0c9
2019-01-18 07:52:51 -07:00
Matthew Flatt
b61298b139 Merge branch 'expt' of github.com:mflatt/ChezScheme
original commit: f634e2e45f60f60071c83769edce17541e5e6705
2019-01-18 05:59:56 -07:00
Matthew Flatt
0795cfb2a7 special cases exact numbers for number function
Especially 0s and especially `expt`.

original commit: bb9f7f75f7ada6b829de0fdc5b692de7b9613574
2019-01-18 05:59:03 -07:00
Matthew Flatt
82a556ea54 fixup for string->number
Make the recent changes insensitive to whether `/` produces
an exact value when its first argument is an exact 0.

original commit: 2d0f59dfdfa9deb37efded804ebd17b98e26f8b6
2019-01-18 05:27:51 -07:00
dyb
2a9822c78d commiting new boot files, which are needed due to elimination of the
(cs)find_pcode foreign entry point.

original commit: 4b4281155773f329e58d286eb50055854ab5b4b3
2019-01-17 11:53:34 -08:00
dyb
ee9a4b3f59 profile counts are now maintained even for code that has been
reclaimed by the collector and must be released explicitly by the
programmer via (profile-release-counters).
  pdhtml.ss, primdata.ss,
  globals.h, externs.h, fasl.c, prim5.c, prim.c, alloc.c, scheme.c,
  misc.ms,
  release_notes.stex, system.stex

original commit: 68e20f721618dbaf4c1634067c2bee24a493a750
2019-01-17 09:43:18 -08:00
Matthew Flatt
84d1e19487 Merge branch 'eqvnan' of github.com:mflatt/ChezScheme
original commit: 55b68c7585947c9c07d1be1b643d10dede983874
2019-01-17 09:05:51 -07:00
Matthew Flatt
6a54141df2 change eqv? to recognize +nan.0s as equivalent
original commit: 46ad2395a2c81326efe555876b8e0be012e24814
2019-01-17 09:05:13 -07:00
Matthew Flatt
6974fad58e Merge branch 'strnum' of github.com:mflatt/ChezScheme
original commit: 7e2ba9a879b4b59304616bc6867f25a09b2cda02
2019-01-16 14:49:25 -07:00
Matthew Flatt
d8d4b76917 fix precision on reading with large exponents
A large-magnitude mantissa can cancel some of the magnitude of an
exponent.

Also, make numbers like 1/0e1 be divide-by-zero parse errors
instead of +inf.0 (like 1/0, and in contract to 1/0# or 1/0#e1).

original commit: 820145370046aa3b4d4863ad896d40ffeae01453
2019-01-16 14:48:48 -07:00
Matthew Flatt
656fb24f95 sync bootfiles [threaded only]
original commit: eec81a2994c8aa9fbc8ab24440e4b1c1565454eb
2019-01-15 17:30:44 -07:00
Matthew Flatt
cdc552b4c5 fixup for wrapper-procedure
original commit: 91c411aa2834a0220a5cc557deb62bc8b316d0fa
2019-01-15 17:19:58 -07:00
Matthew Flatt
51fc773598 Merge branch 'arity-error' of github.com:mflatt/ChezScheme
original commit: dbf2bec7dc7d1db9aaef6c95786a41137da66003
2019-01-15 15:28:08 -07:00
Matthew Flatt
fee19dacb8 include provided-argument count in arity error
original commit: 56b25afdccfb4156f6dff55e2a17f2fc3b51c254
2019-01-15 15:27:31 -07:00
Matthew Flatt
3e297e025e adjust make-arity-wrapper to enforce the supplied arity mask
original commit: a9ec7da3ea3b8edc665b060bcba675248119d260
2019-01-15 11:56:03 -07:00
Bob Burger
523384742a fixed 7.ms to specify the relative path of testfile.boot
original commit: 3ee3ffaccd2c50f69b183b4b14318b6a7aa382e7
2019-01-15 13:21:17 -05:00
Matthew Flatt
dd5384be5e Merge branch 'eqv' of github.com:mflatt/ChezScheme
original commit: a4ceb7f75ce3dbb5ae83d45dd00a4d6c8eb69bca
2019-01-11 21:36:07 -07:00
Matthew Flatt
1f150fdbce improve eqv? code generation
original commit: bcc117f228c984a267031e25e068df3210137f4e
2019-01-11 21:35:31 -07:00
dyb
20ab41bb10 - redirecting output of first two checkboot runs to /dev/null so the
ignored exception, if any, does not show up in the make output.
    s/Mf-base

original commit: 4de3eab4d76feea17431099f798a343a6205e50e
2019-01-11 18:10:38 -08:00
Matthew Flatt
8ca71f1f34 sync bootfiles [threaded only]
original commit: 4794fe71c16c3d72ff83461d34a24c988e9558af
2019-01-11 15:41:44 -07:00
Matthew Flatt
54282dedc4 Merge branch '17-5-Types-Pass' of github.com:gus-massa/ChezScheme
original commit: caf857a33e13c116afa6e2d960eccbada3604190
2019-01-11 15:35:20 -07:00
Matthew Flatt
ea29ba02f7 Merge branch 'sv' of github.com:mflatt/ChezScheme
original commit: 9dd62e2d4a44879ddb210bb6ebe7ad600b832634
2019-01-10 19:26:37 -07:00
Gustavo Massaccesi
6afcc310dd use "single-valued" to simplify some call-with-values patterns
original commit: 0b9d2f0d778789ee9fda8a7249c8d7da329c9bcd
2019-01-10 19:23:36 -07:00