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

Add --target=pbc and use for build #102

Closed
wants to merge 4 commits into from
Closed

Conversation

gerdr
Copy link
Contributor

@gerdr gerdr commented Feb 17, 2013

Adds a new option --target=pbc to the frontend. This is the first tiny step on the way to direct bytecode generation as envisioned by whiteknight.

The corresponding NQP changes can be found in the branch target-pbc of the main NQP repository, and the old Parrot-side infrastructure has been removed in whiteknight's branch eval_pmc.

Should not be merged into nom: please create a new branch instead.

Once someone pulls the trigger on parrot/parrot#934 , the code can be tested via perl Configure.pl --gen-parrot=eval_pmc --gen-nqp=target-pbc.

@gerdr
Copy link
Contributor Author

gerdr commented Feb 19, 2013

@pmichaud I believe I've taken care of all of your complaints, so please take another look if you have a free minute.

The PackfileView PMC now comes with 2 additional methods first_sub_in_const_table() and single_sub_by_tag(). The former is the drop-in replacement for the old logic, is used right now but imo should go away long-term. The latter can only be used after tag generation has been added to the code generator. Right now, it's implemented in terms of subs_by_tag(), which should be fixed once it becomes more heavily used.

I don't think it's an immediate concern: I'd wait with switching to the new tag-based system until someone takes a shot at direct bytecode generation.

@gerdr
Copy link
Contributor Author

gerdr commented Feb 22, 2013

Now obsolete - see #106

@gerdr gerdr closed this Feb 22, 2013
zoffixznet added a commit that referenced this pull request Jul 16, 2016
Unless someone else who wants to learn how to do a release wishes
to have a go.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants