Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re^2: Perl 5 Compiler, Again!

by rurban (Scribe)
on Sep 20, 2012 at 23:22 UTC ( #994780=note: print w/ replies, xml ) Need Help??


in reply to Re: Perl 5 Compiler, Again!
in thread Perl 5 Compiler, Again!

flexvault:

There is an integrated compiler in perl5. And there are external compilers.

You will not easily see what the integrated compiler in perl5 does, but you see some result with B::Concise. All the ex-OPs there are optimized out already.

$ perl -MO=Concise -e'1+1' 3 <@> leave[1 ref] vKP/REFC ->(end) 1 <0> enter ->2 2 <;> nextstate(main 1 -e:1) v:{ ->3 - <0> ex-const v ->3
E.g. 1=1 was constant folded here.
$ perl -MO=Concise -e'$a=1+$a' 8 <@> leave[1 ref] vKP/REFC ->(end) 1 <0> enter ->2 2 <;> nextstate(main 1 -e:1) v:{ ->3 7 <2> sassign vKS/2 ->8 5 <2> add[t1] sK/2 ->6 3 <$> const(IV 1) s ->4 - <1> ex-rv2sv sK/1 ->5 4 <$> gvsv(*a) s ->5 - <1> ex-rv2sv sKRM*/1 ->7 6 <$> gvsv(*a) s ->7
All the sv references rv2sv were optimized to direct gvsv accesses.

perlcc is the backend for 3 external compilers.


Comment on Re^2: Perl 5 Compiler, Again!
Select or Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://994780]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (13)
As of 2015-07-02 11:19 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (35 votes), past polls