Abdulaziz Ghuloum
|
06c64dab3a
|
more optimizations
|
2006-12-06 00:33:25 -05:00 |
Abdulaziz Ghuloum
|
15a36e7333
|
eqv? -> eq? optimization
|
2006-12-05 23:26:02 -05:00 |
Abdulaziz Ghuloum
|
ac38b15c6c
|
memq is open-coded if the second argument is a constant list
|
2006-12-05 22:29:00 -05:00 |
Abdulaziz Ghuloum
|
0d476b91e2
|
cleaup optimizr a bit
|
2006-12-05 21:30:42 -05:00 |
Abdulaziz Ghuloum
|
6e6291e158
|
Memv is optimized as memq if the second argument is a list
containing no bignums.
|
2006-12-05 21:05:04 -05:00 |
Abdulaziz Ghuloum
|
ca8707c5e6
|
starting primitive optimizer
|
2006-12-05 20:45:36 -05:00 |
Abdulaziz Ghuloum
|
b8e595b6e6
|
removed some install-underflow-handler procedure that was not used
|
2006-12-05 19:21:58 -05:00 |
Abdulaziz Ghuloum
|
ed26e7d080
|
removed vector-memq and vector-memv since they were not used anywhere
|
2006-12-05 19:12:28 -05:00 |
Abdulaziz Ghuloum
|
6136e60716
|
eval-cp removed for calls to thunks
|
2006-12-04 23:15:03 -05:00 |
Abdulaziz Ghuloum
|
876a2d7824
|
Procedure codes no longer save their cp if the cp has no free vars.
|
2006-12-04 22:43:42 -05:00 |
Abdulaziz Ghuloum
|
62b42e8bb8
|
optimize direct calls online
|
2006-12-04 22:05:44 -05:00 |
Abdulaziz Ghuloum
|
36b3ec82d2
|
every case-lambda case now has a label
|
2006-12-04 20:13:21 -05:00 |
Abdulaziz Ghuloum
|
c54ade7cef
|
case-info record type for cases
|
2006-12-04 19:58:24 -05:00 |
Abdulaziz Ghuloum
|
b8b4172797
|
removed clambda-code record type
|
2006-12-04 19:05:02 -05:00 |
Abdulaziz Ghuloum
|
307b166f38
|
added a label field to clambda record type
|
2006-12-04 19:00:43 -05:00 |
Abdulaziz Ghuloum
|
95ffbd6551
|
removed a useless define-record
|
2006-12-04 17:46:44 -05:00 |
Abdulaziz Ghuloum
|
2bcdee8e3b
|
cleanup
|
2006-12-04 17:35:59 -05:00 |
Abdulaziz Ghuloum
|
6072e8980f
|
clean up
|
2006-12-04 16:46:13 -05:00 |
Abdulaziz Ghuloum
|
ea44b68b7c
|
* Optimize-closure-size is done. Code reduced to 1.686MB from
1.82MB. Bootstrap time down to 2.185s.
|
2006-12-04 15:42:42 -05:00 |
Abdulaziz Ghuloum
|
3906f165ff
|
new optimization compiles
|
2006-12-04 15:06:51 -05:00 |
Abdulaziz Ghuloum
|
3b39b890b9
|
code cleanup
|
2006-12-04 13:10:28 -05:00 |
Abdulaziz Ghuloum
|
d6a0ffa3ea
|
* Thunks, which did not allocate, now do not cause a heap-overflow
check. Reduces code size by around 30k.
|
2006-12-04 11:56:54 -05:00 |
Abdulaziz Ghuloum
|
ff9439d3c1
|
* Simple thunks do not allocate now.
|
2006-12-04 11:46:52 -05:00 |
Abdulaziz Ghuloum
|
3ba89a0638
|
* the fasl-reader in the binary handles 'Q' tags (thunks) now.
|
2006-12-04 10:34:50 -05:00 |
Abdulaziz Ghuloum
|
15468bd741
|
list*->code* takes a thunk? predicate; it doesnt do anything with it yet
|
2006-12-04 10:01:56 -05:00 |
Abdulaziz Ghuloum
|
ab6c87b71f
|
added $closure-code system primitive that returns the code of a closure
|
2006-12-04 09:54:28 -05:00 |
Abdulaziz Ghuloum
|
30a3ce94ef
|
* I don't know if the bug is fixed.
|
2006-12-04 09:11:56 -05:00 |
Abdulaziz Ghuloum
|
6b2e48efb7
|
before adding make-once thunks
|
2006-12-03 14:36:45 -05:00 |
Abdulaziz Ghuloum
|
6c30b75e57
|
* Copy propagation for constants and primrefs works.
|
2006-12-03 13:45:51 -05:00 |
Abdulaziz Ghuloum
|
787264e8cf
|
* Vars now have a ``referenced'' field to be used by the optimizer.
* Uncover-assigned is renamed to uncover-assigned/referenced.
|
2006-12-03 11:23:03 -05:00 |
Abdulaziz Ghuloum
|
c33c80285e
|
deleted some junk from compiler
|
2006-12-02 18:20:20 -05:00 |
Abdulaziz Ghuloum
|
9758e3702f
|
removed some junk code
|
2006-12-02 16:11:43 -05:00 |
Abdulaziz Ghuloum
|
5bb14cad6e
|
renamed:
runtime => bin
src => lib
|
2006-12-01 10:40:21 -05:00 |