1 # This file shows the history of incompatible changes to
2 # Parrot that invalidated existing PBC (Parrot Byte Code) files.
4 # The latest version number of the bytecode format in this file
5 # is used by Parrot to version the bytecode files it writes and
6 # is able to read. In the future, Parrot should be able to read
7 # and/or write older bytecode versions too.
9 # Currently known actions that should be entered here
10 # (and invalidate PBC are):
12 # - deleting/changing/inserting existing ops in ops.num
13 # - changing operands of existing ops
14 # - adding/deleting/renaming a PMC to classes
15 # - changes in the packfile format itself
16 # - changes to any PMCs that are frozen into the .pbc like
17 # ParrotInterpreter (HLL_info), Subs and more
18 # - other core changes that invalidate byte code :)
20 # After changing PBC_COMPAT either disable t/native_pbc tests or
21 # better, if you have an i386 box at hand, regenerate the PBCs
22 # with tools/dev/mk_native_pbc and commit the changes
24 # or TODO much better: all .pbc files should make-depend on PBC_COMPAT
26 # Also, if you're removing an opcode, be sure to run
27 # make -f tools/dev/ops_renum.mak
29 # please insert tab separated entries at the top of the list
31 3.19 2008.08.04 coke remove getclass opcodes
32 3.18 2008.07.16 bernhard remove opcode getfd
33 3.18 2008.07.16 bernhard remove opcode getfd
34 3.17 2008.06.26 jonathan sub PMC freeze format changed
35 3.16 2008.04.23 pmichaud remove other user stack opcodes
36 3.15 2008.04.22 pmichaud remove saveall/restoreall opcodes
37 3.14 2008.04.04 chromatic enabled div_i_ic_ic and div_n_nc_nc opcodes
38 3.13 2008.03.29 chromatic added does_i_p_pc opcode
39 3.12 2008.03.26 coke deleted classoffset
40 3.11 2008.03.26 coke deleted getattribute_p_p_i,setattribute_p_p_i
41 3.10 2007.12.18 coke deleted print_newline opcode
42 3.09 2007.12.13 chromatic added copy_p_p opcode
43 3.08 2007.12.12 allison added addhandler_p opcode
44 3.07 2007.12.12 tewk added die_s die_sc die_p die_pc opcodes
45 3.06 2007.11.28 coke remove classname opcode
46 3.05 2007.10.29 allison add get_eh, get_all_eh, and count_eh opcodes
47 3.04 2007.10.28 paultcochrane remove clear_eh opcode
48 3.03 2007.10.17 coke released 0.4.17
49 3.02 2007.09.20 bernhard remove opcode hash
50 3.02 2007.09.07 bernhard deprecate opcode substr_r
51 3.01 2007.08.17 chromatic store HLL names as strings in frozen Sub PMCs
52 3.0 2007.07.23 jonathan implementing new PBC header format
53 2.26 2007.07.17 particle released 0.4.14
54 2.25 2007.06.19 allison released 0.4.13
55 2.24 2007.05.16 bernhard remove opcodes adddoes, removedoes, singleton
56 2.23 2007.05.15 chromatic released 0.4.12
57 2.22 2007.04.17 mdiep released 0.4.11
58 2.21 2007.04.15 jonathan added get_class opcodes and clone_p_p_p opcode
59 2.20 2007.04.07 jonathan added addrole opcode
60 2.19 2007.03.20 coke released 0.4.10
61 2.18 2007.02.22 pmichaud released 0.4.9
62 2.17 2007.01.16 particle released 0.4.8
63 2.16 2006.12.16 paultcochrane deleted fetchmethod opcode
64 2.15 2006.11.14 chip released 0.4.7
65 2.14 2006.11.07 tewk added comp_flags to parrot_sub_t
66 2.13 2006.09.23 bernhard remove ops from dotgnu.ops
67 2.12 2006.08.18 leo removed None PMC from parrot core
68 2.11 2006.08.16 creiss added STM opcodes
69 2.10 2006.08.08 chip released 0.4.6
70 2.9 2006.06.19 leo released 0.4.5
71 2.8 2006.06.18 leo reorder opcodes
72 2.7 2006.05.14 leo released 0.4.4
73 2.6 2006.04.02 leo released 0.4.3
74 2.5 2006.03.21 leo remove deleted opcodes
75 2.4 2006.02.22 leo released 0.4.2
76 2.3 2006.01.08 leo released 0.4.1
77 2.2 2005.12.04 leo released 0.4.0, deleted opcodes
78 2.1 2005.12.01 leo inserted another pic ops
79 2.0 2005.11.22 leo changed PBC format (HLL_info)
80 1.4 2005.11.13 leo freeze outer_sub with Subs in PBC
81 1.3 2005.11.12 leo freeze lex_info with Subs in PBC
82 1.2 2005.11.06 leo deleted newsub, foldup, pack; 0.3.1 release
83 1.1 2005.10.17 leo deleted register stack opcodes
84 1.0 2005.10.15 jonathan changed debug segment format
85 0.27 2005.10.11 leo added reg usage to Subs in PBC
86 0.26 2005.10.07 leo deleted lot of opcodes
87 0.25 2005.10.05 leo deleted rx_ opcodes
88 0.24 2005.10.01 leo 0.3.0 release
89 0.23 2005.08.05 leo 0.2.3 release
90 0.22 2005.07.03 leo 0.2.2 release; add fixedintegerarray.freeze
91 0.21 2005.06.04 leo 0.2.1 release
92 0.20 2005.05.31 leo added HLL_id to frozen sub structure
93 0.19 2005.05.11 leo MMD function number change (rm MMD_I_LOGICAL...)
94 0.18 2005.05.08 leo 0.2.0 release
95 0.17 2005.04.22 leo removed add_p_* and friends, insert infix ops
96 0.16 2005.03.06 leo 0.1.2 release
97 0.15 2004.11.27 leo tossed 36 ops: gt,ge,isgt,isge w. I,N,S args
98 0.14 2004.11.27 leo tossed 13 ops: forgot some op_n_i
99 0.13 2004.11.27 leo tossed 177 ops: constants only, mixed args
100 0.12 2004.11.11 leo updates ops.num with some renumbering
101 0.11 2004.10.09 leo 0.1.1 release
102 0.10 2004.09.26 leo insert non-branching compare ops
103 0.9 2004.09.24 leo insert interpinfo_p opcodes
104 0.8 2004.02.29 leo 0.1.0 release
105 0.7 2003.11.21 leo remove unused size fields in front of PF constants
106 0.6 2003.10.31 leo 0.0.13 release
107 0.5 2003.10.24 dan add bogus opcode
108 0.4 2003.10.24 leo start using this file for fingerprinting
109 0.3 2003.10.22 dan add delegates.pmc
110 0.2 2003.10.21 dan delete instantiate op
111 0.1 2003.10.21 leo start this file