Skip to content

Instantly share code, notes, and snippets.

// make objectprint=on disassembler=on -j4 ia32
// d8 --trace-hydrogen --print-opt-code --trace-phase=Z --trace-deopt --code-comments --emit-opt-code-positions --redirect-code-traces --redirect-code-traces-to=code.asm vector3.js
// d8 --prof vector3.js
// v8/tools/mac-tick-processor v8.log
// https://gist.github.com/trevnorris/7712539
// eager: Occurs with unexpected element transitions.
// lazy: Occurs when an assumption is made on a global which no longer holds true.
// soft: As v8 collects type information on functions it will mark dead subgraphs of the
// AST (abstract syntax tree). If one of those marked graphs is called this will cause the
paulfryzel@ao:~/github/vendor/Higgs/source(master+)$ make test
python runtime/layout.py
dmd -m64 -O -L-ldl -J./ -unittest -debug -ofhiggs-test util/error.d util/id.d util/string.d util/misc.d util/bitset.d util/os.d parser/lexer.d parser/ast.d parser/vars.d parser/parser.d ir/ir.d ir/ops.d ir/iir.d ir/ast.d ir/peephole.d ir/slotalloc.d ir/livevars.d ir/inlining.d ir/typeprop.d runtime/vm.d runtime/layout.d runtime/string.d runtime/object.d runtime/gc.d jit/x86.d jit/codeblock.d jit/util.d jit/moves.d jit/ops.d jit/jit.d repl.d options.d stats.d main.d jit/tests.d parser/tests.d runtime/tests.d runtime/ffitests.d
time ./higgs-test test-runner.js
bit set
machine code generation
machine code execution
simple expression parsing
source file parsing
JIT core
c.cdef(`
typedef int size_t;
typedef struct _IO_FILE FILE;
FILE *fopen( const char *filename, const char *mode );
FILE *fdopen( int fildes, const char *mode );
int fflush( FILE *stream );
int fclose( FILE *stream );
Starting test-runner.js...
---
>>> 00-runtime
>>> L׊
>>> X׊
>>> ]׊
>>> s
>>> h
>>> r׊
>>>
...
bind | split-window -h
bind -r h select-pane -L
bind -r j select-pane -D
bind -r k select-pane -U
bind -r l select-pane -R
bind ` select-window -t 0
paulfryzel@ao:~/github/Higgs/source(osx-tests*)$ make test
python runtime/layout.py
dmd -m64 -O -L-ldl -J./ -unittest -debug -ofhiggs-test util/error.d util/id.d util/string.d util/misc.d util/bitset.d util/os.d parser/lexer.d parser/ast.d parser/vars.d parser/parser.d ir/ir.d ir/ops.d ir/iir.d ir/ast.d ir/peephole.d ir/slotalloc.d ir/livevars.d ir/inlining.d ir/typeprop.d runtime/vm.d runtime/layout.d runtime/string.d runtime/object.d runtime/gc.d jit/x86.d jit/codeblock.d jit/util.d jit/moves.d jit/ops.d jit/jit.d repl.d options.d stats.d main.d jit/tests.d parser/tests.d runtime/tests.d runtime/ffitests.d
time ./higgs-test test-runner.js
bit set
machine code generation
machine code execution
simple expression parsing
source file parsing
JIT core
paulfryzel@ao:~/github/Higgs/source(osx-tests+*)$ make ffidev
dmd -m64 -O -L-ldl -J./ -ofhiggs-test util/error.d util/id.d util/string.d util/misc.d util/bitset.d util/os.d parser/lexer.d parser/ast.d parser/vars.d parser/parser.d ir/ir.d ir/ops.d ir/iir.d ir/ast.d ir/peephole.d ir/slotalloc.d ir/livevars.d ir/inlining.d ir/typeprop.d runtime/vm.d runtime/layout.d runtime/string.d runtime/object.d runtime/gc.d jit/x86.d jit/codeblock.d jit/util.d jit/moves.d jit/ops.d jit/jit.d repl.d options.d stats.d main.d jit/tests.d parser/tests.d runtime/tests.d runtime/ffitests.d -gc -version=FFIdev
paulfryzel@ao:~/github/Higgs/source(osx-tests+*)$ ./higgs-test lib/test.js tests/08-lib/ffi.js
paulfryzel@ao:~/github/Higgs/source(osx-tests+*)$
Running: ./tests/00-runtime/es5-cmp.js...
Running: ./tests/00-runtime/has-own-property.js...
Running: ./tests/01-stdlib/array.js...
***** FAILED! *****
Running: ./tests/01-stdlib/boolean.js...
Running: ./tests/01-stdlib/function.js...
Running: ./tests/01-stdlib/global.js...
Running: ./tests/01-stdlib/json.js...
Running: ./tests/01-stdlib/map.js...
Running: ./tests/01-stdlib/math.js...
alias v8build="GYP_DEFINES=\"v8_enable_disassembler=1 v8_object_print=1\" disassembler=on objectprint=on make -j4 native"
alias d8asm="d8 --trace-hydrogen --trace-deopt --code-comments --print-opt-code"
alias d8asm2="d8 --trace_hydrogen --trace_phase=Z --print_op_code --trace_deopt --code_comments --hydrogen_track_positions --redirect_code_traces --redirect_code_traces_to=code.asm"
@paulfryzel
paulfryzel / gist:0d7697e16ba8350238a1
Last active August 29, 2015 14:07
turbofan experiments
make builddeps && CXX=/usr/bin/clang++ CC=/usr/bin/clang CPP="/usr/bin/clang -E" LINK=/usr/bin/clang++ CXX_host=/usr/bin/clang++ CC_host=/usr/bin/clang CPP_host="/usr/bin/clang -E" LINK_host=/usr/bin/clang++ GYP_DEFINES="clang=1" make -j4 console=readline disassembler=on x64.debug
d8 --trace_turbo --turbo_types --always_opt --turbo_filter=start vector3.js
../../v8/out/x64.debug/d8 \
--trace_turbo \
--turbo_source_positions \
--turbo_deoptimization \
--trace_deopt \
--print_opt_code \