summaryrefslogtreecommitdiff
path: root/yjit_core.c
AgeCommit message (Expand)Author
2021-12-01Mark JIT code as writeable / executable depending on the situationAaron Patterson
2021-12-01YJIT: Fail gracefully while OOM for new entry pointsAlan Wu
2021-11-26YJIT: Add ability to exit to interpreter from stubsAlan Wu
2021-11-22YJIT: Make block invalidation more robustAlan Wu
2021-11-18Add --yjit-no-type-prop so we can test YJIT without type propagation (#5135)Maxime Chevalier-Boisvert
2021-11-04YJIT code pages refactoring for code GC (#5073)Maxime Chevalier-Boisvert
2021-10-20Put YJIT into a single compilation unitAlan Wu
2021-10-20style: line break before "else"Alan Wu
2021-10-20style: switch statements indentAlan Wu
2021-10-20style: align pointer "*" to the rightAlan Wu
2021-10-20Remove a few more uses of the global cb/ocbMaxime Chevalier-Boisvert
2021-10-20Step 2 to remove the global cb/ocb objects.Maxime Chevalier-Boisvert
2021-10-20Add counters for tracking invalidationsAlan Wu
2021-10-20Store block callee_cme in darrayJohn Hawthorn
2021-10-20Only clear the JIT function when we invalidate the entry blockAaron Patterson
2021-10-20TracePoint supportAlan Wu
2021-10-20Allow to compile with --yjit-stats support but not the full RUBY_DEBUGJean Boussier
2021-10-20Use callee-saved regs for REG_SP, REG_EP, REG_CFPJohn Hawthorn
2021-10-20Detach mapping to local in ctx_set_local_typeJohn Hawthorn
2021-10-20Fix stack size check for ctx_get_opnd_typeJohn Hawthorn
2021-10-20Move yjit_type_of_value into yjit_core.cJohn Hawthorn
2021-10-20Implement verify_ctx for debuggingJohn Hawthorn
2021-10-20Don't generate entry point when PC != 0John Hawthorn
2021-10-20Allow upgrading first N types when stack is largeJohn Hawthorn
2021-10-20Improve comments for mapping functionsJohn Hawthorn
2021-10-20Fix ctx_clear_local_typesJohn Hawthorn
2021-10-20Make ctx_diff aware of mappingsJohn Hawthorn
2021-10-20Introduce ctx_{get,set}_opnd_mappingJohn Hawthorn
2021-10-20Rename to ctx_upgrade_opnd_typeJohn Hawthorn
2021-10-20Make sure we can still compile with the JIT disabledAaron Patterson
2021-10-20Fix BOP invalidationAaron Patterson
2021-10-20Add a guard that we start executing on the first PCAaron Patterson
2021-10-20fix alignmentAaron Patterson
2021-10-20Flatten mappings when clearing localsJohn Hawthorn
2021-10-20Convert yjit static stat variables to countersNoah Gibbs
2021-10-20Try running with more YJIT options in CI to surface more bugsMaxime Chevalier-Boisvert
2021-10-20Update commentMaxime Chevalier-Boisvert
2021-10-20Remove #define MAX_VERSIONS, now using command-line optionMaxime Chevalier-Boisvert
2021-10-20Fix issue in yjit_free_block causing segfaultMaxime Chevalier-Boisvert
2021-10-20Fix assertions in `invalidate_block_version()`, add small repro (#14)Maxime Chevalier-Boisvert
2021-10-20Implement greedy versioning. Refactor versioning logic. (#10)Maxime Chevalier-Boisvert
2021-10-20Pass self type through method callsMaxime Chevalier-Boisvert
2021-10-20Malloc branch entries (#112)Maxime Chevalier-Boisvert
2021-10-20Temporarily increase MAX_BRANCHES until we have a better solutionMaxime Chevalier-Boisvert
2021-10-20Diff the local types in ctx_diff()Maxime Chevalier-Boisvert
2021-10-20move assert. opnd.idx doesn't make sense for OPND_SELFAlan Wu
2021-10-20Fix bug in ctx_set_local_type()Maxime Chevalier-Boisvert
2021-10-20Re-enable local type tracking, until first callMaxime Chevalier-Boisvert
2021-10-20Assert for running out of branches in all buildsAlan Wu
2021-10-20Introduce concept of YJIT instruction operandsMaxime Chevalier-Boisvert