aboutsummaryrefslogtreecommitdiffstats
path: root/ruby.c
Commit message (Collapse)AuthorAgeFilesLines
* Rename --jit to --mjit (#5248)Takashi Kokubun2021-12-131-20/+42
| | | | | | | | | | | | | | | * Rename --jit to --mjit [Feature #18349] * Fix a few more --jit references * Fix MJIT Actions * More s/jit/mjit/ and re-introduce --disable-jit * Update NEWS.md * Fix test_bug_reporter_add
* ruby.c: Fix typoYusuke Endoh2021-12-131-1/+1
|
* Introduce an option "--dump=insns_without_opt" for debugging purposesYusuke Endoh2021-12-131-3/+6
|
* Revert "Force disable yjit on OpenBSD"Aaron Patterson2021-12-011-6/+0
| | | | This reverts commit 119626da947bf6492ef7a27abf3bf12de5d0d95a.
* Add --yjit-no-type-prop so we can test YJIT without type propagation (#5135)Maxime Chevalier-Boisvert2021-11-181-0/+3
| | | | | | | * Add --yjit-no-type-prop so we can test YJIT without type propagation * Fix typo in command line option * Leave just two test workflows enable for YJIT
* [Feature #18239] Implement VWA for stringsPeter Zhu2021-10-251-1/+6
| | | | | This commit adds support for embedded strings with variable capacity and uses Variable Width Allocation to allocate strings.
* Fix TestRubyOptions#test_enable for -DMJIT_FORCE_ENABLETakashi Kokubun2021-10-211-0/+5
| | | | --enable=all didn't work when cppflags=-DMJIT_FORCE_ENABLE was given.
* Force disable yjit on OpenBSDJeremy Evans2021-10-211-0/+6
| | | | | | | | | | | | | | TestRubyOptions#test_enable was broken on OpenBSD after the yjit merge. --yjit (and --enable-all, which enables --yjit) fails on OpenBSD because yjit uses an insecure mmap call (both writable and executable), in alloc_exec_mem, which OpenBSD does not allow. This can probably be reverted if yjit switches to a more secure mmap design (writable xor executable). This would involve initially calling mmap with PROT_READ | PROT_WRITE, and after writing of executable code has finished, using mprotect to switch to PROT_READ | PROT_EXEC. I believe Firefox uses this approach for their Javascript engine since Firefox 46.
* Fix indentation in ruby.cAlan Wu2021-10-201-2/+2
|
* Warn when trying to use YJIT in --disable-jit-support buildsAlan Wu2021-10-201-0/+4
|
* Show --yjit in help messageAlan Wu2021-10-201-0/+1
|
* Improve YJIT command line option parsingAlan Wu2021-10-201-10/+22
| | | | | | Previously, options such as "--yjit123" would enable YJIT. Additionally, the error message for argument parsing mentioned "--jit-..." instead of "--yjit-...".
* YJIT_STATS instead of RUBY_DEBUG for --yjit-stats in help printoutAlan Wu2021-10-201-1/+1
|
* Say YJIT is disabled by default in ruby --helpAlan Wu2021-10-201-1/+1
|
* Style fix in ruby.cAlan Wu2021-10-201-1/+1
|
* Don't enable YJIT by default. More tests on both Ubuntu and MacOS.Noah Gibbs2021-10-201-1/+6
| | | | | Add RUBY_YJIT_ENABLE env var and YJIT_FORCE_ENABLE compile-time constant. Rename YJIT_STATS to RUBY_YJIT_STATS.
* Reduce line length for YJIT option descriptionsNoah Gibbs2021-10-201-2/+2
|
* Document YJIT options in --helpNoah Gibbs2021-10-201-2/+14
|
* is this right?Aaron Patterson2021-10-201-0/+1
|
* Don't check MJIT if it's not enabledAaron Patterson2021-10-201-0/+2
|
* Disable YJIT by default if MJIT_FORCE_ENABLE is onAaron Patterson2021-10-201-1/+2
| | | | | Compile time flag seems pretty forceful, so let MJIT turn on by default if it is used.
* disable MJIT when --enable-all is setAaron Patterson2021-10-201-0/+1
|
* Update ruby.cMaxime Chevalier-Boisvert2021-10-201-1/+1
|
* Exit if YJIT and MJIT are both enabledAaron Patterson2021-10-201-2/+7
| | | | | | YJIT and MJIT can't be running in the same process otherwise they'll clobber each other. We should show an error and exit if they're both enabled.
* Try running with more YJIT options in CI to surface more bugsMaxime Chevalier-Boisvert2021-10-201-2/+2
|
* Increase default YJIT call threshold to 10. Add exec mem size arg. (#52)Maxime Chevalier-Boisvert2021-10-201-1/+4
|
* Implement greedy versioning. Refactor versioning logic. (#10)Maxime Chevalier-Boisvert2021-10-201-0/+6
| | | | | | * Implement eager versioning. Refactor versioning logic. * Add --version-limit and --greedy-versioning command-line args
* Yet Another Ruby JIT!Jose Narvaez2021-10-201-14/+14
| | | | Renaming uJIT to YJIT. AKA s/ujit/yjit/g.
* Implement --ujit-call-thresholdMaxime Chevalier-Boisvert2021-10-201-3/+4
|
* Report unknown --ujit-* optionsMaxime Chevalier-Boisvert2021-10-201-0/+4
|
* Implement --ujit-stats and instructoin countingAlan Wu2021-10-201-5/+22
| | | | | | VM and ujit instruction counting in debug builds. shopify/ruby#19
* Refactor uJIT code into more files for readabilityMaxime Chevalier-Boisvert2021-10-201-1/+1
|
* Show whether MicroJIT is enabled in the version stringAlan Wu2021-10-201-2/+2
|
* Fix mistake in ujit command line parsingAlan Wu2021-10-201-1/+1
|
* Implement the --disable-ujit command line optionAlan Wu2021-10-201-0/+10
|
* Skip broken strings as the locale encodingNobuyoshi Nakada2021-10-011-4/+7
|
* Replace expanded load path only when modifiedNobuyoshi Nakada2021-10-011-1/+5
|
* Copy path strings as interned stringsNobuyoshi Nakada2021-10-011-2/+10
|
* Fix the encoding of loaded feature names [Bug #18191]Nobuyoshi Nakada2021-10-011-1/+11
| | | | | The feature names loaded from the default load paths should also be in the file system encoding.
* include/ruby/internal/interpreter.h: add doxygen卜部昌平2021-09-101-13/+0
| | | | | | | | Must not be a bad idea to improve documents. [ci skip] In fact many functions declared in the header file are already documented more or less. They were just copy & pasted, with applying some style updates.
* Replace RBOOL macroS-H-GAMELINKS2021-09-051-1/+1
|
* Suppress unused-but-set-variable warningNobuyoshi Nakada2021-07-061-0/+2
|
* Rename error_squiggle to error_highlightYusuke Endoh2021-06-291-4/+4
|
* [WIP] add error_squiggle gemYusuke Endoh2021-06-291-0/+6
| | | | | | | | | | | | | ``` $ ./local/bin/ruby -e '1.time {}' -e:1:in `<main>': undefined method `time' for 1:Integer (NoMethodError) 1.time {} ^^^^^ Did you mean? times ``` https://bugs.ruby-lang.org/issues/17930
* Deprecate and rework old (fd) centric functions.Samuel Williams2021-06-221-1/+1
|
* Freeze command line scriptNobuyoshi Nakada2021-06-101-0/+1
|
* Fix trivial -Wundef warningsBenoit Daloze2021-05-041-1/+1
| | | | | | * See [Feature #17752] Co-authored-by: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com>
* Removed dln_a_outNobuyoshi Nakada2021-03-241-9/+0
| | | a.out format is considered extinct nowadays.
* [Feature #17684] Declare --disable-gems is for debuggingNARUSE, Yui2021-03-171-2/+2
|
* Constified variables for getenvNobuyoshi Nakada2021-03-121-1/+1
|