Make all heap objects store a reference to their class and inline class lookup.

This is redundant, but significantly optimizes method dispatch:

binary_trees - wren           ..........  3347  0.30s  110.30% relative to baseline
delta_blue - wren             ..........  7161  0.14s  110.39% relative to baseline
fib - wren                    ..........  2445  0.41s  112.78% relative to baseline
for - wren                    ..........  8600  0.12s  143.00% relative to baseline
method_call - wren            ..........  5112  0.20s  114.15% relative to baseline
This commit is contained in:
Bob Nystrom
2014-12-07 14:29:50 -08:00
parent ac67386208
commit 8417fadc2f
7 changed files with 108 additions and 92 deletions
+2 -2
View File
@@ -17,10 +17,10 @@ RELEASE_OBJECTS = $(addprefix build/release/, $(notdir $(OBJECTS)))
all: release
clean:
rm -rf build wren wrend
@rm -rf build wren wrend
prep:
mkdir -p build/debug build/release
@mkdir -p build/debug build/release
# Debug build.
debug: prep wrend