[go: nahoru, domu]

Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VM: Track dependencies on check-instructions in the compiler explicitly #26347

Open
fsc8000 opened this issue Apr 27, 2016 · 0 comments
Open
Labels
area-vm Use area-vm for VM related issues, including code coverage, FFI, and the AOT and JIT backends. type-enhancement A request for a change that isn't a bug

Comments

@fsc8000
Copy link
Contributor
fsc8000 commented Apr 27, 2016

Currently we only partially make dependencies in the SSA flow graph explicit by using redefinitions (RedefinitionInstr, ConstraintInstr).

Ideally we should make all dependencies explicit to allow more aggressive code motion and redundancy elimination of type checks and e.g. undo https://codereview.chromium.org/1928633002/

@mraleph

@fsc8000 fsc8000 self-assigned this Apr 27, 2016
@fsc8000 fsc8000 added the area-vm Use area-vm for VM related issues, including code coverage, FFI, and the AOT and JIT backends. label Apr 27, 2016
@zanderso zanderso added the type-enhancement A request for a change that isn't a bug label Nov 6, 2016
fsc8000 added a commit that referenced this issue Feb 23, 2017
Also use redefined receiver consistently when inlining recognized methods.

This CL re-enables type propagation from CheckClassId instructions which
was disabled as a temporary stop-gap to prevent illegal code motion.
(reverts https://codereview.chromium.org/1928633002)

Now uses of redefined values that are dominated by the redefinition are renamed before doing LICM.

Related to #26347.

R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2709093003 .
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-vm Use area-vm for VM related issues, including code coverage, FFI, and the AOT and JIT backends. type-enhancement A request for a change that isn't a bug
Projects
None yet
Development

No branches or pull requests

2 participants