-
-
Notifications
You must be signed in to change notification settings - Fork 925
Permalink
Choose a base ref
{{ refName }}
default
Choose a head ref
{{ refName }}
default
Comparing changes
Choose two branches to see what’s changed or to start a new pull request.
If you need to, you can also or
learn more about diff comparisons.
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also .
Learn more about diff comparisons here.
base repository: jruby/jruby
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 75a39d3cf66c
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
...
head repository: jruby/jruby
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 5a212761c26d
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
- 3 commits
- 6 files changed
- 1 contributor
Commits on Feb 21, 2017
-
Separate varargs and specific-arity names in JIT. Fixes #4482
Originally, varargs and specific-arity paths were emitted in toto as their own JVM method bodies. With recent changes, the varargs path now calls the specific-arity path, causing an extra synthetic entry in the JVM stack trace. This confounded the backtrace miner, since it had no marker with which to omit the synthetic version, and so Kernel#caller and friends contained an additional invalid entry. This in turn caused require_relative to fail to find the caller's path, resulting in a nil path value passed to File.realpath, which triggered this bug. It likely only affected invokedynamic because our indy logic must be calling no-arg methods via the varargs path (a separate issue to be fixed). My modification here explicitly separates the synthetic varargs name from the specific-arity name by adding a known varargs marker that can be filtered out when mining the backtrace. This is a big hacky; the state being managed by the jit is very ad-hoc and prone to bugs. It will need some additional cleanup after 9.1.8.0.
Configuration menu - View commit details
-
Copy full SHA for 18cde0d - Browse repository at this point
Copy the full SHA 18cde0dView commit details -
Allow indirect indy calls to still call specific arity up to 3.
Previously, indirect indy calls would always box arguments, which affects failed sites, Java sites, and others. This fixes #4499 by setting up fail paths for arities up to 3 arguments, same as the non-indy call paths.
Configuration menu - View commit details
-
Copy full SHA for 2723012 - Browse repository at this point
Copy the full SHA 2723012View commit details
Commits on Feb 22, 2017
-
Merge pull request #4498 from headius/isolate-arity-names
Separate varargs and specific-arity names in JIT. Fixes #4482
Configuration menu - View commit details
-
Copy full SHA for 5a21276 - Browse repository at this point
Copy the full SHA 5a21276View commit details
There are no files selected for viewing