Commit Graph

61 Commits (e36376b4329b795fc824ef9d3ae48edcc7b13b3a)

Author SHA1 Message Date
Doug Coleman 3c408342ef renaming: contain? -> any?, deep-contains? -> deep-any?, pad-left -> pad-head, pad-right -> pad-tail, trim-left -> trim-head, trim-right -> trim-tail 2009-01-29 22:19:07 -06:00
Slava Pestov 44bfff7c7b Rename ##load-indirect to ##load-reference since this is more descriptive; value numbering doesn't assign expressions to ##load-reference nodes since this would end up folding literals which were eq? but not = 2009-01-29 01:44:58 -06:00
Slava Pestov 3e685b2eb4 Add test case for bug discovered by erg 2009-01-28 23:35:41 -06:00
Slava Pestov f34c14a0f5 Remove some usages of tuck 2009-01-23 18:20:47 -06:00
Slava Pestov 34792a9f23 Remove >r/r> 2008-12-17 19:17:37 -06:00
Slava Pestov c679ae025b Rename tools.disassembler.udis:& to alien.syntax:&: and fix it to survive image save/load 2008-12-11 00:03:58 -06:00
Slava Pestov e4f8448eb1 Fix some problems with arithmetic type inference, exposed by recent changes to log2 word
- declared input type for bignum-shift was stricter than the runtime behavior, leading to bad propagation of type info if shift count was a bignum
- types inferred for type functions which used number-valued/integer-valued/real-valued were not always precise, eg bignum bignum bitxor => integer
- add interval-log2, type function for (log2)
- remove math-class-min, it was useless
2008-12-07 19:44:49 -06:00
Slava Pestov f51708386d Fix conflicts 2008-12-01 20:39:43 -06:00
sheeple 6400085bea Fix bootstrap, add a unit test 2008-11-30 07:36:29 -06:00
Slava Pestov e8a69a3aea Fix conflict 2008-11-29 05:14:49 -06:00
Slava Pestov 52f1ff3a95 Fix conflict 2008-11-29 04:23:23 -06:00
Slava Pestov 1c0789e616 Didn't generate ##branch after ##alien-invoke and ##alien-indirect 2008-11-29 03:46:57 -06:00
sheeple 26c002d23f Fix fixnum* problem; result was shifted to the right by 3 bits if both input registers were equal 2008-11-29 00:44:46 -06:00
Slava Pestov c1d249afb2 Add unit test 2008-11-29 00:37:07 -06:00
Slava Pestov f2040c0529 Add some more tests 2008-11-24 11:12:36 -06:00
Slava Pestov eeb2133ba2 Fix compiler test 2008-11-23 21:40:10 -06:00
Slava Pestov 7788b3e0db Merge branch 'master' into microseconds 2008-11-23 03:06:32 -06:00
Slava Pestov 3a2e15327f Disable these for now 2008-11-22 22:47:40 -06:00
Slava Pestov f0716b3a0d 1% image size reduction by not storing empty compiled-generic-uses and compiled-uses props 2008-11-22 22:46:57 -06:00
Slava Pestov 8819f23312 Replace millis primitive with micros primitive
Add millis as a library word
sleep now takes either a duration or a microsecond count; code using durations doens't need to be updated, code using millisecond counts updated to use durations for the most part
2008-11-19 01:50:05 -06:00
Slava Pestov 281657dd82 Fix conflict 2008-11-18 22:18:14 -06:00
Slava Pestov 14246fde37 Better FFI unit tests expose a new problem 2008-11-17 12:23:44 -06:00
Slava Pestov 2fe364a7bb Specialized arrays work in progress 2008-11-14 20:18:16 -06:00
Slava Pestov 5b4e8e9d09 Rename tests/templates.factor to tests/codegen.factor since that's really what its testing 2008-11-13 04:16:58 -06:00
sheeple 5b7d40d9b4 We need to end the basic block after the ##prologue in the dispatch branch so that the GC check can go after the prologue 2008-11-10 02:58:05 -06:00
sheeple d1f248dac6 Fixing PowerPC backend: prolog register clobberage, spilling, and general stack frame usage. Add some lame tests for spilling 2008-11-06 19:00:56 -06:00
sheeple d2ec46e38f PowerPC backend almost functional; some new compiler unit tests added,
better compilation of 'f eq?'; f becomes an immediate operand
move aux-offset to compiler.constants
2008-11-06 06:27:27 -06:00
Slava Pestov 4fd1767768 Old fix for classes-intersect? no-method bug was incorrect; we were
ignoring anonymous classes in compiled-generic-crossref. Also,
forget* now calls reset-word so that references to predicates of
forgotten classes don't break the compiler with a similar error.
2008-11-05 18:32:02 -06:00
Slava Pestov 46830bb38d Fix another name clash in tests; putting all compiler tests in compiler.tests vocab is probably not good 2008-11-04 00:46:06 -06:00
Slava Pestov 06b99c31ee Fix regression. If a parsing word called the compiler, it might compile a caller of a generic before the generic gets built, which would throw an error since the inferred effect of the generic might have less inputs than the combination's dispatch# 2008-11-03 20:59:48 -06:00
Slava Pestov b649c01de6 Fix name clash with templates.factor 2008-11-03 06:34:56 -06:00
Slava Pestov 1b06ab1b39 Fixing various bugs 2008-10-21 23:17:32 -05:00
Slava Pestov f092622fac CFG IR is now pure SSA 2008-10-20 01:56:28 -05:00
Slava Pestov 4ae66793f0 Fixing unit tests 2008-10-19 03:51:01 -05:00
Slava Pestov 14d8696f40 Oops, don't mix register classes in active set 2008-10-19 03:34:42 -05:00
Slava Pestov fedadc8032 Remove obsolete test file 2008-10-13 13:08:28 -05:00
Slava Pestov 40c1529ce8 Add stack effect 2008-10-12 18:40:57 -05:00
Slava Pestov 0e4e05d5cd Debugging new codegen 2008-10-08 03:51:44 -05:00
Slava Pestov c19f2257f4 Fix permission bits 2008-10-02 08:34:49 -05:00
Slava Pestov d4134a2ca1 Fix loop detection bug 2008-10-02 01:17:45 -05:00
Slava Pestov 722cacddb4 Fixing some problems with returning structs by value in x86.64 FFI 2008-09-13 20:28:13 -05:00
Slava Pestov ec660c857f Add unit test for Joe Groff's bg 2008-09-12 00:04:56 -05:00
Slava Pestov 0c8e2584b4 Fixing unit tests for make, fry changes 2008-09-11 00:20:06 -05:00
Slava Pestov a3d1379b8c Fix bug with large structs passed by value on x86.64 2008-09-09 03:10:43 -05:00
Doug Coleman 14d707898d new accessors 2008-09-02 01:53:01 -05:00
U-SLAVA-DFB8FF805\Slava 8fed0d29eb Fix dead code elimination with alien nodes 2008-09-01 02:04:42 -05:00
Slava Pestov 18d629a916 Add failing unit test 2008-08-31 09:22:36 -05:00
Slava Pestov f5fbd94a4c New compiled crossref implementation 2008-08-31 01:34:00 -05:00
Slava Pestov 85cdb1b767 Working on new compiled usage strategy; old one was wrong 2008-08-30 00:05:27 -05:00
Slava Pestov ef8bd93ae8 Add a test 2008-08-29 17:53:00 -05:00