BEAM-native JS engine and compiler#5
Open
dannote wants to merge 2122 commits into
Open
Conversation
0eb3475 to
7c1c574
Compare
75fdba5 to
527d5b9
Compare
Result: {"status":"keep","quickjs_parity_all_failures":3,"quickjs_parity_all_cases":70,"quickjs_parity_all_native_accepted":69,"quickjs_parity_all_pass":66,"quickjs_parity_all_native_rejected":1,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":2,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":1,"interpreter_crashes":0,"compatibility_failures":3,"compatibility_pass":66,"compatibility_cases":69,"elapsed_ms":14337}
Result: {"status":"keep","quickjs_parity_all_failures":2,"quickjs_parity_all_cases":70,"quickjs_parity_all_native_accepted":69,"quickjs_parity_all_pass":67,"quickjs_parity_all_native_rejected":1,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":1,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":1,"interpreter_crashes":0,"compatibility_failures":2,"compatibility_pass":67,"compatibility_cases":69,"elapsed_ms":14344}
Result: {"status":"keep","quickjs_parity_all_failures":42,"quickjs_parity_all_cases":44,"quickjs_parity_all_native_accepted":43,"quickjs_parity_all_pass":1,"quickjs_parity_all_native_rejected":1,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":42,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":42,"compatibility_pass":1,"compatibility_cases":43,"elapsed_ms":3981}
Result: {"status":"keep","quickjs_parity_all_failures":17,"quickjs_parity_all_cases":44,"quickjs_parity_all_native_accepted":43,"quickjs_parity_all_pass":26,"quickjs_parity_all_native_rejected":1,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":17,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":17,"compatibility_pass":26,"compatibility_cases":43,"elapsed_ms":2752}
Result: {"status":"keep","quickjs_parity_all_failures":15,"quickjs_parity_all_cases":44,"quickjs_parity_all_native_accepted":43,"quickjs_parity_all_pass":28,"quickjs_parity_all_native_rejected":1,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":15,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":15,"compatibility_pass":28,"compatibility_cases":43,"elapsed_ms":1743}
Result: {"status":"keep","quickjs_parity_all_failures":13,"quickjs_parity_all_cases":44,"quickjs_parity_all_native_accepted":43,"quickjs_parity_all_pass":30,"quickjs_parity_all_native_rejected":1,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":13,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":13,"compatibility_pass":30,"compatibility_cases":43,"elapsed_ms":1812}
Result: {"status":"keep","quickjs_parity_all_failures":12,"quickjs_parity_all_cases":44,"quickjs_parity_all_native_accepted":43,"quickjs_parity_all_pass":31,"quickjs_parity_all_native_rejected":1,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":12,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":12,"compatibility_pass":31,"compatibility_cases":43,"elapsed_ms":3195}
Result: {"status":"keep","quickjs_parity_all_failures":5,"quickjs_parity_all_cases":44,"quickjs_parity_all_native_accepted":43,"quickjs_parity_all_pass":38,"quickjs_parity_all_native_rejected":1,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":5,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":5,"compatibility_pass":38,"compatibility_cases":43,"elapsed_ms":1970}
Result: {"status":"keep","quickjs_parity_all_failures":4,"quickjs_parity_all_cases":44,"quickjs_parity_all_native_accepted":43,"quickjs_parity_all_pass":39,"quickjs_parity_all_native_rejected":1,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":4,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":4,"compatibility_pass":39,"compatibility_cases":43,"elapsed_ms":1744}
Result: {"status":"keep","quickjs_parity_all_failures":8,"quickjs_parity_all_cases":26,"quickjs_parity_all_native_accepted":26,"quickjs_parity_all_pass":18,"quickjs_parity_all_native_rejected":0,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":8,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":8,"compatibility_pass":18,"compatibility_cases":26,"elapsed_ms":3403}
Result: {"status":"keep","quickjs_parity_all_failures":7,"quickjs_parity_all_cases":26,"quickjs_parity_all_native_accepted":26,"quickjs_parity_all_pass":19,"quickjs_parity_all_native_rejected":0,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":7,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":7,"compatibility_pass":19,"compatibility_cases":26,"elapsed_ms":2043}
Result: {"status":"keep","quickjs_parity_all_failures":6,"quickjs_parity_all_cases":26,"quickjs_parity_all_native_accepted":26,"quickjs_parity_all_pass":20,"quickjs_parity_all_native_rejected":0,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":6,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":6,"compatibility_pass":20,"compatibility_cases":26,"elapsed_ms":1318}
Result: {"status":"keep","quickjs_parity_all_failures":4,"quickjs_parity_all_cases":26,"quickjs_parity_all_native_accepted":26,"quickjs_parity_all_pass":22,"quickjs_parity_all_native_rejected":0,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":4,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":4,"compatibility_pass":22,"compatibility_cases":26,"elapsed_ms":1342}
Result: {"status":"keep","quickjs_parity_all_failures":2,"quickjs_parity_all_cases":26,"quickjs_parity_all_native_accepted":26,"quickjs_parity_all_pass":24,"quickjs_parity_all_native_rejected":0,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":2,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":2,"compatibility_pass":24,"compatibility_cases":26,"elapsed_ms":1338}
Result: {"status":"keep","quickjs_parity_all_failures":1,"quickjs_parity_all_cases":26,"quickjs_parity_all_native_accepted":26,"quickjs_parity_all_pass":25,"quickjs_parity_all_native_rejected":0,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":1,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":1,"compatibility_pass":25,"compatibility_cases":26,"elapsed_ms":1340}
Result: {"status":"keep","quickjs_parity_all_failures":0,"quickjs_parity_all_cases":26,"quickjs_parity_all_native_accepted":26,"quickjs_parity_all_pass":26,"quickjs_parity_all_native_rejected":0,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":0,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":0,"compatibility_pass":26,"compatibility_cases":26,"elapsed_ms":1338}
Result: {"status":"keep","quickjs_parity_all_failures":4,"quickjs_parity_all_cases":44,"quickjs_parity_all_native_accepted":43,"quickjs_parity_all_pass":39,"quickjs_parity_all_native_rejected":1,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":4,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":4,"compatibility_pass":39,"compatibility_cases":43,"elapsed_ms":1762}
Result: {"status":"keep","quickjs_parity_all_failures":3,"quickjs_parity_all_cases":44,"quickjs_parity_all_native_accepted":43,"quickjs_parity_all_pass":40,"quickjs_parity_all_native_rejected":1,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":3,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":3,"compatibility_pass":40,"compatibility_cases":43,"elapsed_ms":1735}
Result: {"status":"keep","quickjs_parity_all_failures":15,"quickjs_parity_all_cases":16,"quickjs_parity_all_native_accepted":16,"quickjs_parity_all_pass":1,"quickjs_parity_all_native_rejected":0,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":15,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":15,"compatibility_pass":1,"compatibility_cases":16,"elapsed_ms":2843}
Result: {"status":"keep","quickjs_parity_all_failures":0,"quickjs_parity_all_cases":16,"quickjs_parity_all_native_accepted":16,"quickjs_parity_all_pass":16,"quickjs_parity_all_native_rejected":0,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":0,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":0,"compatibility_pass":16,"compatibility_cases":16,"elapsed_ms":1082}
Result: {"status":"keep","quickjs_parity_all_failures":3,"quickjs_parity_all_cases":8,"quickjs_parity_all_native_accepted":7,"quickjs_parity_all_pass":4,"quickjs_parity_all_native_rejected":1,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":3,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":3,"compatibility_pass":4,"compatibility_cases":7,"elapsed_ms":1109}
Result: {"status":"keep","quickjs_parity_all_failures":0,"quickjs_parity_all_cases":8,"quickjs_parity_all_native_accepted":7,"quickjs_parity_all_pass":7,"quickjs_parity_all_native_rejected":1,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":0,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":0,"compatibility_pass":7,"compatibility_cases":7,"elapsed_ms":815}
Result: {"status":"keep","quickjs_parity_all_failures":2,"quickjs_parity_all_cases":10,"quickjs_parity_all_native_accepted":9,"quickjs_parity_all_pass":7,"quickjs_parity_all_native_rejected":1,"quickjs_parity_all_skipped":0,"compiler_errors":0,"compiler_timeouts":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":2,"interpreter_fail_compiler_pass":0,"interpreter_timeouts":0,"interpreter_crashes":0,"compatibility_failures":2,"compatibility_pass":7,"compatibility_cases":9,"elapsed_ms":1195}
Result: {"status":"keep","compatibility_failures":22,"compiler_test262_cases":25,"compiler_test262_pass":3,"compiler_test262_failures":22,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":22,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":3,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":22,"interpreter_fail_compiler_pass":0,"elapsed_ms":4188}
Result: {"status":"keep","compatibility_failures":12,"compiler_test262_cases":25,"compiler_test262_pass":13,"compiler_test262_failures":12,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":12,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":13,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":12,"interpreter_fail_compiler_pass":0,"elapsed_ms":4228}
Result: {"status":"keep","compatibility_failures":0,"compiler_test262_cases":25,"compiler_test262_pass":25,"compiler_test262_failures":0,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":0,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":25,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":0,"interpreter_fail_compiler_pass":0,"elapsed_ms":4058}
Result: {"status":"keep","compatibility_failures":12,"compiler_test262_cases":25,"compiler_test262_pass":13,"compiler_test262_failures":12,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":12,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":13,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":12,"interpreter_fail_compiler_pass":0,"elapsed_ms":2004}
Result: {"status":"keep","compatibility_failures":6,"compiler_test262_cases":25,"compiler_test262_pass":19,"compiler_test262_failures":6,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":6,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":19,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":6,"interpreter_fail_compiler_pass":0,"elapsed_ms":2338}
Result: {"status":"keep","compatibility_failures":12,"compiler_test262_cases":25,"compiler_test262_pass":13,"compiler_test262_failures":12,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":12,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":13,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":12,"interpreter_fail_compiler_pass":0,"elapsed_ms":2759}
Result: {"status":"keep","compatibility_failures":7,"compiler_test262_cases":25,"compiler_test262_pass":18,"compiler_test262_failures":7,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":7,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":18,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":7,"interpreter_fail_compiler_pass":0,"elapsed_ms":3951}
Result: {"status":"keep","compatibility_failures":1,"compiler_test262_cases":20,"compiler_test262_pass":19,"compiler_test262_failures":1,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":1,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":19,"compatibility_cases":20,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":1,"interpreter_fail_compiler_pass":0,"elapsed_ms":2474}
Result: {"status":"keep","compatibility_failures":0,"compiler_test262_cases":25,"compiler_test262_pass":25,"compiler_test262_failures":0,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":0,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":25,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":0,"interpreter_fail_compiler_pass":0,"elapsed_ms":10607}
Result: {"status":"keep","compatibility_failures":0,"compiler_test262_cases":25,"compiler_test262_pass":25,"compiler_test262_failures":0,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":0,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":25,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":0,"interpreter_fail_compiler_pass":0,"elapsed_ms":2817}
Result: {"status":"keep","compatibility_failures":1,"compiler_test262_cases":25,"compiler_test262_pass":24,"compiler_test262_failures":1,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":1,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":24,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":1,"interpreter_fail_compiler_pass":0,"elapsed_ms":3030}
Result: {"status":"keep","compatibility_failures":0,"compiler_test262_cases":25,"compiler_test262_pass":25,"compiler_test262_failures":0,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":0,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":25,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":0,"interpreter_fail_compiler_pass":0,"elapsed_ms":4278}
Result: {"status":"keep","compatibility_failures":1,"compiler_test262_cases":120,"compiler_test262_pass":119,"compiler_test262_failures":1,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":1,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":119,"compatibility_cases":120,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":1,"interpreter_fail_compiler_pass":0,"elapsed_ms":9561}
Result: {"status":"keep","compatibility_failures":5,"compiler_test262_cases":25,"compiler_test262_pass":20,"compiler_test262_failures":5,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":4,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":20,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":4,"interpreter_fail_compiler_pass":0,"elapsed_ms":3108}
Result: {"status":"keep","compatibility_failures":4,"compiler_test262_cases":25,"compiler_test262_pass":21,"compiler_test262_failures":4,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":3,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":21,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":3,"interpreter_fail_compiler_pass":0,"elapsed_ms":4511}
Result: {"status":"keep","compatibility_failures":6,"compiler_test262_cases":50,"compiler_test262_pass":44,"compiler_test262_failures":6,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":5,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":44,"compatibility_cases":50,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":5,"interpreter_fail_compiler_pass":0,"elapsed_ms":4350}
Result: {"status":"keep","compatibility_failures":0,"compiler_test262_cases":25,"compiler_test262_pass":25,"compiler_test262_failures":0,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":0,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":25,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":0,"interpreter_fail_compiler_pass":0,"elapsed_ms":8739}
Result: {"status":"keep","compatibility_failures":1,"compiler_test262_cases":25,"compiler_test262_pass":24,"compiler_test262_failures":1,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":1,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":24,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":1,"interpreter_fail_compiler_pass":0,"elapsed_ms":2503}
Result: {"status":"keep","compatibility_failures":0,"compiler_test262_cases":25,"compiler_test262_pass":25,"compiler_test262_failures":0,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":0,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":25,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":0,"interpreter_fail_compiler_pass":0,"elapsed_ms":2381}
Result: {"status":"keep","compatibility_failures":9,"compiler_test262_cases":25,"compiler_test262_pass":16,"compiler_test262_failures":9,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":9,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":16,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":9,"interpreter_fail_compiler_pass":0,"elapsed_ms":2447}
Result: {"status":"keep","compatibility_failures":8,"compiler_test262_cases":25,"compiler_test262_pass":17,"compiler_test262_failures":8,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":8,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":17,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":8,"interpreter_fail_compiler_pass":0,"elapsed_ms":3761}
Result: {"status":"keep","compatibility_failures":1,"compiler_test262_cases":25,"compiler_test262_pass":24,"compiler_test262_failures":1,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":1,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":24,"compatibility_cases":25,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":1,"interpreter_fail_compiler_pass":0,"elapsed_ms":3770}
Result: {"status":"keep","compatibility_failures":6,"compiler_test262_cases":50,"compiler_test262_pass":44,"compiler_test262_failures":6,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":5,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":44,"compatibility_cases":50,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":5,"interpreter_fail_compiler_pass":0,"elapsed_ms":4410}
Result: {"status":"keep","compatibility_failures":4,"compiler_test262_cases":50,"compiler_test262_pass":46,"compiler_test262_failures":4,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":4,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":46,"compatibility_cases":50,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":4,"interpreter_fail_compiler_pass":0,"elapsed_ms":5540}
Result: {"status":"keep","compatibility_failures":2,"compiler_test262_cases":600,"compiler_test262_pass":598,"compiler_test262_failures":2,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":2,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":598,"compatibility_cases":600,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":2,"interpreter_fail_compiler_pass":0,"elapsed_ms":30654}
Result: {"status":"keep","compatibility_failures":1,"compiler_test262_cases":600,"compiler_test262_pass":599,"compiler_test262_failures":1,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":1,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":599,"compatibility_cases":600,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":1,"interpreter_fail_compiler_pass":0,"elapsed_ms":32226}
Result: {"status":"keep","compatibility_failures":71,"compiler_test262_cases":100,"compiler_test262_pass":29,"compiler_test262_failures":71,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":71,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":29,"compatibility_cases":100,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":71,"interpreter_fail_compiler_pass":0,"elapsed_ms":2855}
Result: {"status":"keep","compatibility_failures":40,"compiler_test262_cases":100,"compiler_test262_pass":60,"compiler_test262_failures":40,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":40,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":60,"compatibility_cases":100,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":40,"interpreter_fail_compiler_pass":0,"elapsed_ms":13997}
Result: {"status":"keep","compatibility_failures":38,"compiler_test262_cases":100,"compiler_test262_pass":62,"compiler_test262_failures":38,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":37,"compiler_test262_interpreter_fail_compiler_pass":1,"compatibility_pass":62,"compatibility_cases":100,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":37,"interpreter_fail_compiler_pass":1,"elapsed_ms":7595}
Result: {"status":"keep","compatibility_failures":33,"compiler_test262_cases":100,"compiler_test262_pass":67,"compiler_test262_failures":33,"compiler_test262_compiler_errors":0,"compiler_test262_compiler_crashes":0,"compiler_test262_compiler_fails":0,"compiler_test262_both_fail":33,"compiler_test262_interpreter_fail_compiler_pass":0,"compatibility_pass":67,"compatibility_cases":100,"compiler_errors":0,"compiler_crashes":0,"compiler_fails":0,"both_fail":33,"interpreter_fail_compiler_pass":0,"elapsed_ms":7602}
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a second QuickJS execution backend that runs decoded QuickJS bytecode on the BEAM, plus an experimental compiler path that lowers QuickJS bytecode to BEAM modules.
Public API and runtime modes
mode: :beamsupport for running JavaScript through the BEAM VM backendmode: :autocompiler-backed execution with fallbackmode: :beam_compilerQUICKBEAM_MODE=beam_compilersupport for audit runs:beambackend viaQuickBEAM.disasm/2Error.captureStackTraceBytecode VM
Compiler backend
JavaScript semantics covered
Object,Array,Function,String,Number,BooleanMath,JSON,Date,RegExpMap,Set,WeakMap,WeakSet, collection iterators, and self-iterabilitySymbol, well-known symbols, property keys, andSymbol.toStringTagPromise,async/await, generators, delegatedyield*, and async generatorsProxyandReflect, including descriptor/prototype/extensibility invariantsTypedArray,ArrayBuffer,BigIntsuper, private fields, private methods, private accessors, static private members, brand checks, and constructor return semanticsObject.create,Object.assign,Object.fromEntries, freeze/seal/preventExtensions/isExtensible/isFrozen/isSealedeval,with, refs, globals, callback/global write freshness, delete semantics,in,instanceof,new, update operators, arithmetic/coercion edge cases, and BigInt operationsgosub/retfinally control flow, nested catches inside finally, break/continue through finally, and catch-region slot preservationwith/destructuringStatic analysis and cleanup
ex_dna,ex_slop, andcredomix lintnow runs ExDNA with a zero-clone budget--no-starttest runs:modeAudit and benchmark tooling
bench/vm_compiler_compat.exsbench/vm_compiler_corpus.exsbench/vm_compiler_opcode_coverage.exsbench/vm_compiler_perf.exsbench/vm_compiler_semantic_gaps.exsbench/vm_compiler_test262.exstest/support/vm_compiler_audit.exCurrent compiler audit status
invalid, intentionally unsupported45.239µsto42.845µs1.113xRecent validation
mix compile --warnings-as-errorsmix lintmix dialyzermix test test/js/parser test/vm/auto_mode_test.exs test/vm/compiler_differential_test.exs test/web_apis/beam_fetch_test.exs test/web_apis/beam_text_encoding_test.exs test/web_apis/beam_buffer_test.exs test/web_apis/beam_streams_test.exs test/web_apis/event_source_test.exsmix test --no-start --exclude napi_addon --exclude napi_sqlite test/web_apis/event_source_test.exs test/web_apis/beam_event_source_test.exsPARSER_BENCH=vm_compiler_semantics ./autoresearch.shTEST262_LIMIT=1500 TEST262_CASE_TIMEOUT=5000 PARSER_BENCH=vm_compiler_test262 ./autoresearch.shPrevious broad validation:
QUICKBEAM_BUILD=1 MIX_ENV=test mix testMIX_ENV=test QUICKBEAM_BUILD=1 mix test test/vm/js_engine_test.exs --include js_engine --seed 0mix format --check-formattedmix credo --strictmix dialyzermix ex_dnazlint lib/quickbeam/*.zig lib/quickbeam/napi/*.zigbunx oxlint -c oxlint.json --type-aware --type-check priv/ts/bunx jscpd lib/quickbeam/*.zig priv/ts/*.ts --min-tokens 50 --threshold 0