diff options
author | Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> | 2021-04-24 00:16:48 -0400 |
---|---|---|
committer | Alan Wu <XrXr@users.noreply.github.com> | 2021-10-20 18:19:34 -0400 |
commit | 96f4f918b04fad1401d4f41cd11d97d9d4d28c7d (patch) | |
tree | 27959163baee644317499d709913c12fc683890b /yjit.h | |
parent | 4c7afa64b49d792da586709b2bbc1aa2f04b5712 (diff) |
Implement greedy versioning. Refactor versioning logic. (#10)
* Implement eager versioning. Refactor versioning logic.
* Add --version-limit and --greedy-versioning command-line args
Diffstat (limited to 'yjit.h')
-rw-r--r-- | yjit.h | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -30,12 +30,20 @@ typedef struct rb_iseq_struct rb_iseq_t; #endif struct rb_yjit_options { + // Enable compilation with YJIT bool yjit_enabled; // Number of method calls after which to start generating code // Threshold==1 means compile on first execution unsigned call_threshold; + // Generate versions greedily until the limit is hit + bool greedy_versioning; + + // Maximum number of versions per block + // 1 means always create generic versions + unsigned version_limit; + // Capture and print out stats bool gen_stats; }; |