Vincent St-Amour
|
82b064a520
|
The optimizer now ignores expressions ignored by the typechecker.
|
2010-07-23 18:52:44 -04:00 |
|
Vincent St-Amour
|
83987fffac
|
let bindings of inexact-complex numbers can be replaced by bindings
for each of their components.
This allows unboxing of intermediate results that are bound and only
ever used in positions where they would be unboxed.
|
2010-07-23 18:52:42 -04:00 |
|
Vincent St-Amour
|
063b87697a
|
Optimized extracting parts of inexact complexes.
|
2010-07-23 18:52:42 -04:00 |
|
Vincent St-Amour
|
0493e6f762
|
Refactoring of the optimizer.
|
2010-07-23 18:52:41 -04:00 |
|
Sam Tobin-Hochstadt
|
5bb730f72c
|
Optimize (apply + (map f l)) to avoid the intermediate list.
|
2010-07-23 14:11:40 -04:00 |
|
Vincent St-Amour
|
0ee0886cab
|
Optimizations on one-argument cases of arithmetic operations.
|
2010-07-21 21:09:43 -04:00 |
|
Vincent St-Amour
|
4e944f73ab
|
Added optimization for string-length and bytes-length.
|
2010-07-21 21:09:42 -04:00 |
|
Vincent St-Amour
|
d6ce6e664f
|
Added box optimizations.
|
2010-07-21 21:09:42 -04:00 |
|
Vincent St-Amour
|
47195410cb
|
Added optimization for zero?.
|
2010-07-21 21:09:40 -04:00 |
|
Vincent St-Amour
|
fc29e7e856
|
Added mutable pair optimizations.
|
2010-07-16 12:22:16 -04:00 |
|
Vincent St-Amour
|
f21454e711
|
Fixed an infinite loop.
|
2010-07-16 12:22:16 -04:00 |
|
Vincent St-Amour
|
c587038b33
|
The imaginary parts of reals are ignored when doing complex division.
|
2010-07-16 12:22:15 -04:00 |
|
Vincent St-Amour
|
443d8b9f91
|
Fixnums and integers can now be coerced for complex operations.
|
2010-07-16 12:22:15 -04:00 |
|
Vincent St-Amour
|
c645aa7ebc
|
The imaginary parts of inexact reals are ignored when doing complex multiplication.
|
2010-07-16 12:22:15 -04:00 |
|
Vincent St-Amour
|
748e9e47ad
|
The imaginary parts of inexact reals are ignored when doing complex
addition or subtraction.
|
2010-07-16 12:22:13 -04:00 |
|
Vincent St-Amour
|
025af5b815
|
Added coercions for floats with unboxed complex operations.
However, this generates superfluous operations involving their
imaginary part of 0.
|
2010-07-16 12:22:13 -04:00 |
|
Vincent St-Amour
|
fff71e6a1d
|
Enabled optimization of complex conjugate at the top level of complex operations.
|
2010-07-16 12:22:12 -04:00 |
|
Vincent St-Amour
|
063211d922
|
Added unboxed complex conjugate.
|
2010-07-16 12:22:12 -04:00 |
|
Vincent St-Amour
|
0b0da84eba
|
Added optimizations for iterating over vectors and strings.
|
2010-07-16 12:22:12 -04:00 |
|
Vincent St-Amour
|
1e550139aa
|
Added dead code elimination.
|
2010-07-16 12:22:11 -04:00 |
|
Vincent St-Amour
|
dbda43ac6b
|
Pushed optimizations to auxiliary syntax classes.
|
2010-07-08 18:29:15 -04:00 |
|
Vincent St-Amour
|
c3f46cc8a6
|
Refactoring of the optimizer.
|
2010-07-08 18:29:15 -04:00 |
|
Vincent St-Amour
|
24aad77da3
|
Moved Typed Scheme's optimizer to its own subdirectory.
|
2010-07-08 18:29:15 -04:00 |
|