Commit Graph

1497 Commits (79668aec2a2b0474357fa4541be1b495f98940ac)

Author SHA1 Message Date
John Benediktsson f2741b34a4 Eliminate duplicate syntax for stack effects "(" no longer drops and is identical to the old "((", which is now removed. 2011-10-18 13:19:39 -07:00
Joe Groff a3d9990255 compiler.tree.dead-code: fix test
It was using "read" in an optimization test, but since "read" is now inline, it wasn't getting the expected optimized quotation back.
2011-10-17 21:23:10 -07:00
John Benediktsson 7494418bf8 More lint cleanups. 2011-10-16 19:33:16 -07:00
John Benediktsson f419934d6a Cleanup lint warnings. 2011-10-14 11:47:24 -07:00
John Benediktsson 54b9b3bf14 namespaces: adding a "with-global" word to replace "global [ ] bind". 2011-10-13 17:21:59 -07:00
John Benediktsson 463c7292d1 Fix M: stack effects. 2011-10-13 16:41:17 -07:00
John Benediktsson b3f5154cc7 sequences: adding ?last for symmetry. 2011-10-13 13:04:24 -07:00
Slava Pestov 6175117b55 callback-error: don't use -e until we fix issue #245 2011-10-10 21:25:50 -07:00
Slava Pestov 1898d0e26e compiler.tree.identities: the identity on mod was useless too, because we already have a rewrite rule which handles this case in compiler.tree.propagation 2011-10-10 12:34:21 -07:00
Slava Pestov 2e4127cc20 compiler.cfg.representations: fix unit test, it depended on hashing order which changed recently 2011-10-10 12:15:41 -07:00
Slava Pestov 91bfed5d1e compiler.tree.propagation.transforms: fix rem and mod custom inlining 2011-10-10 12:12:53 -07:00
Slava Pestov dd0d3d4ef7 compiler.codegen.gc-maps: fix tests 2011-10-10 12:07:09 -07:00
Slava Pestov 2a6ff945b3 Fix custom-inlining for mod and rem, which was converting these calls to bitand in some cases, even if the input was not known to be an integer. Fixes #243 2011-10-09 13:51:35 -07:00
Slava Pestov 0d6a0cd3ea Remove identities on / and rem, which were no-ops because integer-derived-ops would return an empty array 2011-10-09 13:51:03 -07:00
Doug Coleman a220cf1d7f Mixin classes in redefine25 test are forgotten, but words still reference them -- forget those words, too. Fixes #143. 2011-10-07 10:49:17 -07:00
Doug Coleman e75e2b1f14 Make M\ throw an error upon lookup failure. Change method -> ?lookup-method, lookup-method is the throwing version of ?lookup-method. Fixes #229. 2011-10-03 15:49:49 -07:00
Slava Pestov b1b7b24ad5 Add RT_INLINE_CACHE_MISS relocation type to avoid frequent dlsym lookups when compiling PICs. Fixes #123 2011-10-03 00:26:21 -07:00
Slava Pestov 395da4bc86 Fix linkage-errors test to not clobber its own linkage error 2011-10-03 00:26:21 -07:00
Slava Pestov 8336d898a3 Rework non-optimizing compiler backend to use compiler.codegen.relocation 2011-10-03 00:26:21 -07:00
Slava Pestov 83f602c1da Split up compiler.codegen.fixup into compiler.codegen.{gc-maps,labels,relocation} 2011-10-03 00:25:47 -07:00
Doug Coleman 7d8817583a compiler.tree.modular-arithmetic needs shallow-spread>quot 2011-10-02 22:21:11 -07:00
Slava Pestov 171cd93573 Fix infinite loop and empty-dlist error when an error is thrown from a callback running in a thread other than the initial thread. This addresses part of issue #92 2011-10-02 21:59:09 -07:00
Slava Pestov a1f1bea271 compiler.cfg.builder.alien: fix compilation of callbacks which unconditionally throw errors 2011-10-02 19:52:12 -07:00
Doug Coleman 94f3ca3b8c Remove all non-core uses of (scan-token)
Add scan-datum
Add scan-number
Document more words
Fixes #225.
2011-10-02 12:00:08 -07:00
Doug Coleman 300138eb4d Refactor the lexer/parser to expose friendlier words for scanning tokens. The preferred top-level words now throw an exception on EOF.
CREATE -> scan-new
CREATE-CLASS -> scan-new-class
CREATE-WORD -> scan-new-word
CREATE-GENERIC -> scan-new-generic
scan -> (scan-token)
scan-token now throws on eof
(scan-word) returns word/number/f
scan-word now throws on eof
scan-word-name expects a non-number
Fixes #183.
Fixes #209.
2011-09-29 11:28:28 -07:00
Doug Coleman ced1795a04 Fixes the symptom but not the problem. See bug #201. 2011-09-26 17:32:34 -07:00
John Benediktsson 0e3d598e69 specialized-arrays: performed some cleanup.
Specifically,
    •   Created >c-array to be replacement for >T-array.
    •   Created cast-array to be generic replacement for all T-array-cast words.
    •   Created c-array@ to be generic replacement for T-array@ words.
    •   Replaced usages of <T-array> with T <c-array>
    •   Replaced usages of <direct-T-array> with T <c-direct-array>
    •   Replaced usages of >T-array with T >c-array
    •   Replaced usages of T-array-cast with T cast-array
    •   Replaced usages of malloc-T-array with T malloc-array.
    •   Removed malloc-T-array.
    •   Removed T-array-cast.
    •   Removed T-array@.
    •   Removed >T-array.

I also added (but didn't change any code to use):
    •   T c-array-type, returns T-array
    •   T c-array?, returns T-array?
    •   c-array{ T ... }, returns T-array{ ... }

Bootstraps just find on Mac OS X.  Also `load-all test-all` works for me.
2011-09-26 11:37:51 -07:00
Joe Groff 571ef865e6 slots: pre-create the "at", "nth", and "global" slots to make deterministic the currently nondeterministic ambiguity between accessors:change-* and assocs:change-at, sequences:change-nth, and namespaces:change-global 2011-09-19 10:03:43 -07:00
Doug Coleman 17e0fbe501 Remove Windows CE from core/ basis/ and build-support/
Rename the winnt singleton to windows in core/ basis/ extra/
Rename boot images winnt -> windows
Fixes #84.
2011-09-18 23:19:06 -05:00
John Benediktsson b000c96fac compiler.tree.escape-analysis.allocations: simplify stack effect. 2011-09-17 08:14:13 -07:00
Slava Pestov 07eb27068f Fix linkage-errors tests for recent changes 2011-09-13 20:42:36 -07:00
Joe Groff 7a60e70227 compiler.cfg.builder.alien: fix caller-linkage to return the DLL and not the library tuple again; fixes issue #121 2011-09-13 15:10:48 -07:00
Joe Groff ab205897f2 alien.libraries, compiler.cfg.builder.alien: if `dlopen` fails during `<library>`, call `dlerror` and store the error message in the library object; put the dlerror message in the linkage-error when a word from the library is compiled 2011-09-12 23:25:59 -07:00
Joe Groff f97e05b79d alien.libraries, compiler.cfg.builder.alien: include the result of dlerror/GetLastError in the linkage-error for missing symbols 2011-09-12 23:25:59 -07:00
Slava Pestov 20c6aaddec Tease out symbol name and library in undefined_symbol() handler, for friendlier errors when calling an unresolved C function name. Fixes #93 2011-09-12 00:56:24 -07:00
Slava Pestov 75a97f2fa0 compiler.cfg.dependence: Add ##allot to control dependency chain, so that we don't re-order an allocation and initialization with an alien call. The alien call might GC, exposing uninitialized memory to the GC. Fixes #53, fixes #58, fixes #20. 2011-08-28 21:25:39 -07:00
Slava Pestov 1f6469878a compiler.cfg.debugger: add random-scheduling word.
Run 'random-scheduling "compiler" test' to find bugs in compiler.cfg.dependencies.
2011-08-28 21:25:37 -07:00
Slava Pestov 4aa5bbdc79 compiler.cfg.scheduling: remove old scheduling test code, adding a better way of testing scheduling 2011-08-28 21:25:35 -07:00
Erik Charlebois 1ed2bc6231 32 and 64 bit Linux PPC support 2011-05-23 23:36:14 -04:00
Slava Pestov ae11aa08db Change do-callback to register the current thread with the callback, instead of busy waiting for the current callback to become the right one before returning. Fixes 100% CPU usage issue with system-alert. Thanks to Blei and ex-rzr for doing preliminary analysis of the issue 2011-04-12 21:48:54 -04:00
Slava Pestov 1d6f318a1a compiler.cfg.branch-splitting was totally broken 2011-02-27 16:43:26 -08:00
Slava Pestov 35e9f6f072 compiler.cfg.ssa.construction: update unit tests for nths change 2011-02-25 21:05:38 -08:00
Slava Pestov 25fb472f73 Fix unit test failures caused by alien.data change 2010-12-25 22:34:12 -08:00
Slava Pestov 55fd15c45a Move <ref>, deref and little-endian? from alien.c-types to alien.data, remove <c-object> 2010-12-25 16:55:36 -08:00
Slava Pestov f0e8593179 compiler.tests: update for <ref> deref 2010-10-25 22:23:03 -07:00
Doug Coleman 28cbcf7dd9 Fix a few tests that got broken in the <uint> *uint patches 2010-10-25 19:14:21 -05:00
Doug Coleman 657b490f69 Remove <uint> *uint and friends. Hopefully remove the last usages of these words 2010-10-25 15:54:42 -05:00
Doug Coleman 6510bdb1eb Remove usages of <void*> and *void* 2010-10-25 13:22:50 -05:00
Doug Coleman 40bdadcac4 Remove many uses of <int> and *int etc 2010-10-25 12:49:12 -05:00
Slava Pestov 78d529c7c4 compiler.cfg.linear-scan: extend lifetime intervals of base pointers correctly (reported by Anton Gorenko) 2010-09-30 20:49:03 -07:00