Commit Graph

26194 Commits (59c5373263819af73092f7bae0ba96c770b15e93)

Author SHA1 Message Date
Steven Stewart-Gallus e6dade3f94 Lower the stack usage of a few functions
In vm/compaction.cpp I rescoped some variables to lower the stack usage
from 592 to 560 bytes. I wasn't very successful with this. The stack
usage is larger than it looks because methods on the structures used
take an implicit this pointer and a reference to the data (so the data
has to live out it's full scope and can't be put in a register).

In vm/debug.cpp I made a large (1024 bytes) stack allocated buffer
simply dynamically allocated.

In vm/os-unix.cpp I rescoped signal handling structures to not coincide
with each other and reduced a very large (1024 bytes) amount of stack
usage to less than 500 bytes.
2014-06-19 14:55:57 -07:00
John Benediktsson 199d6c3082 fftw: adding a test. 2014-06-18 10:42:01 -07:00
John Benediktsson bfd615b1e8 brainfuck: more fries with that. 2014-06-17 21:09:42 -07:00
Doug Coleman 96f2561b42 alien.libraries.finder.linux: Remove tags like "OS ABI: Linux 2.6.24" from the ``ldconfig -p`` output. 2014-06-17 14:13:06 -07:00
John Benediktsson 125f64a72f brainfuck: collapse spaces to compress better, 2+2=5 test. 2014-06-17 09:32:09 -07:00
Doug Coleman 2f53a7c5de alien.libraries.finder.linux: On mint 32 bit, the gtk-x11-2.0 library arch is just (libc6). Hopefully this is correct. 2014-06-16 23:07:13 -07:00
Doug Coleman 2834bc90f8 bignum.cpp: Fix regression in bignum conversion. Fixes #1072. 2014-06-16 20:52:51 -07:00
Björn Lindqvist a6e0867b22 VM: change type of bignum_roots and remove unnecessary not-null checks
Declaring bignum_roots to contain bignum** instead of cell avoids some
superfluous casts. Casting it to cell is wrong because the items in it
are never tagged. And due to a earlier commit, bignum_roots will never
contain NULL:s so checking for them is not needed.
2014-06-12 13:50:10 -07:00
Björn Lindqvist 8ac3b80173 VM: rename all variables named "bignum" in bignum.cpp to "bn"
The name can cause compiler errors because it's the same as the type
name. It only matters in some functions, but I like consistency so I
renamed it everywhere.
2014-06-12 13:50:10 -07:00
Björn Lindqvist 75129d34ad VM: refactor bignum.cpp so that GC_BIGNUM is never called on a NULL
pointer

The purpose of this fix is to ensure that no NULL checks are needed when
traversing the bignum_roots vector.
2014-06-12 13:50:10 -07:00
Björn Lindqvist 0c9e61ca99 VM: refactoring that removes data_root_ranges
instead of storing data_root_ranges in data_roots, you can just store
cell pointers directly. the advantage with doing it that way is that
registration and traversal code becomes simpler (and slightly faster).
2014-06-12 13:50:10 -07:00
John Benediktsson 77d4d5179c math.extras: adding sum-squares and sum-cubes. 2014-06-10 18:28:21 -07:00
John Benediktsson acc06aeeee math.extras: adding dotted range syntax. 2014-06-10 18:17:27 -07:00
John Benediktsson 219c73b0c1 sorting.heap: adding Heapsort implementation. 2014-06-10 17:32:02 -07:00
John Benediktsson c20838117d heaps: fix stack effect for >max-heap. 2014-06-10 17:18:37 -07:00
John Benediktsson fba9c1dab4 sorting.quick: better interface, allow comparison to be passed in. 2014-06-10 16:45:41 -07:00
John Benediktsson 522bc270cc sudoku: some cleanup. 2014-06-10 15:46:54 -07:00
John Benediktsson 64aa894fee help.tutorial: make it more clear how the tests work, thanks @ambimorph! 2014-06-10 15:06:28 -07:00
John Benediktsson 8a2028d2c6 math.statistics: use if-zero in mean-ddof. 2014-06-10 13:06:42 -07:00
John Benediktsson 7b44637177 sequences.extras: adding count* which returns % of counted items. 2014-06-10 13:06:02 -07:00
Björn Lindqvist a4e98529fa io.launcher.windows.tests: many of the tests can result in utf8-encoded strings 2014-06-10 08:10:21 -07:00
John Benediktsson b40f2ff544 sorting.quick: faster by using stack variables not mutable locals. 2014-06-09 17:53:16 -07:00
John Benediktsson 8ed47488e9 stack-checker.alien: fix help-lint. 2014-06-09 14:15:18 -07:00
John Benediktsson 00fb0b052f sorting.quick: adding tags.txt. 2014-06-09 11:34:16 -07:00
John Benediktsson b204c8230f sorting.quick: adding a Quicksort implementation. 2014-06-09 11:17:07 -07:00
John Benediktsson d901af14c0 extra: use ?download-to in a few more places. 2014-06-09 09:18:58 -07:00
John Benediktsson 9ef4a4aab3 spelling: use ?download-to. 2014-06-09 08:58:05 -07:00
John Benediktsson 1701fe3f59 http.client: adding version of download-to that checks file exists. 2014-06-09 08:57:45 -07:00
Jon Harper 0cf6541847 tools.coverage: add tests, fixes #433 2014-06-09 08:31:04 -07:00
Jon Harper 485932eff1 test-coverage-recursively: remove private and tests vocabs
private vocabs are already covered when testing the main vocab.
test vocabs don't need coverage.
2014-06-09 08:31:04 -07:00
John Benediktsson bf473ec943 compiler.cfg: fix some docs. 2014-06-08 18:20:27 -07:00
John Benediktsson d02b399f70 opengl.capabilities: fix docs. 2014-06-08 18:14:20 -07:00
John Benediktsson 5986f9cbe3 help.lint.checks: allow $slot to be used with struct-class. 2014-06-08 18:12:26 -07:00
John Benediktsson de12140505 alien.libraries.finder: fix docs. 2014-06-08 18:08:26 -07:00
John Benediktsson 445c7f299a stack-checker.known-words: adding bignum>fixnum-strict. 2014-06-08 18:02:16 -07:00
John Benediktsson d28f7b4242 llvm.engine: fix using. 2014-06-08 18:02:04 -07:00
John Benediktsson f0e878e3fa Revert "vm: fix bignum_to_fixnum_strict for BIGNUM_ZERO."
This reverts commit 0a66016c7db3c8c02af609d7c46411dc05a7b0dd.
2014-06-08 16:32:35 -07:00
John Benediktsson 14f425c57c compiler.tree.modular-arithmetic: strict versions shouldn't be here. 2014-06-08 16:16:24 -07:00
John Benediktsson ad7ee60341 vm: fix bignum_to_fixnum_strict for BIGNUM_ZERO. 2014-06-08 16:05:36 -07:00
John Benediktsson 849d8325ea llvm.engine: use find-library, although I think looking for "LLVM-3" might be better. 2014-06-08 13:43:49 -07:00
John Benediktsson 17478e27cd alien.libraries.finder: fix tests for @erg's recent change. 2014-06-08 13:41:38 -07:00
John Benediktsson b573c40402 compiler.tree: teaching it bignum>fixnum-strict. 2014-06-08 13:40:38 -07:00
John Benediktsson 8303d6aacf alien.libraries.finder.macosx: adding some tests. 2014-06-08 13:38:35 -07:00
John Benediktsson b7bd78d92d alien.libraries.finder.linux: add some tests. 2014-06-08 13:37:10 -07:00
John Benediktsson 96e337f937 alien.libraries.finder.linux: make "m" find-library work. 2014-06-08 13:30:54 -07:00
John Benediktsson 04a04dacca alien.libraries.finder.linux: sigh. 2014-06-08 13:25:51 -07:00
John Benediktsson 7bfd267d02 alien.libraries.finder: whoops. 2014-06-08 13:23:43 -07:00
John Benediktsson b915520311 cpu.architecture: fix using from bad conflict merge. 2014-06-08 11:48:31 -07:00
Björn Lindqvist 280620c55f Docs: docs for compiler-related words 2014-06-08 11:48:31 -07:00
Björn Lindqvist 160df8b3f1 Docs: for compiler.cfg.* vocabs 2014-06-08 11:48:31 -07:00