My favorites | Sign in
Project Home Wiki Issues Source
Repository:
Checkout   Browse   Changes   Clones  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
* Fixes

CC backend: goto, sort with non-default comparison. last for non-loop blocks.
Version checking
improve XSUB handling (both static and dynamic)
sv_magic can do SvREFCNT_inc(obj) which messes up precalculated refcounts
allocation of XPV[INAHC]V structures needs fixing: Perl tries to free
them whereas the compiler expects them to be linked to a xpv[inahc]v_root
list the same as X[IPR]V structures.
ref counts
perl_parse replacement
fix cstring for long strings
compile-time initialisation of AvARRAYs
signed/unsigned problems with NV (and IV?) initialisation and elsewhere?
CvOUTSIDE for ordinary subs
DATA filehandle for standalone Bytecode program (easy)
DATA filehandle for multiple bytecode-compiled modules (harder)
DATA filehandle for C-compiled program (yet harder)
parse -H Bytecode header

* Features

type checking
compile time v. runtime initialisation
save PMOPs in compiled form
selection of what to dump
options for cutting out line info etc.
comment output
shared constants
module dependencies

* Optimisations
collapse LISTOPs to UNOPs or BASEOPs
compile-time qw(), constant subs
global analysis of variables, type hints etc.
demand-loaded bytecode (leader of each basic block replaced by an op
which loads in bytecode for its block)
fast sub calls for CC backend

Change log

c21739460ca5 by Reini Urban <rur...@x-ray.at> on Jul 28, 2008   Diff
Initial import B-C-1.04_01


git-svn-id: http://perl-
compiler.googlecode.com/svn/trunk@2
ed534f1a-1453-0410-ab30-dfc593a8b23c
Go to: 
Project members, sign in to write a code review

Older revisions

All revisions of this file

File info

Size: 1289 bytes, 38 lines
Powered by Google Project Hosting