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.14 2008.04.04 chromatic enabled div_i_ic_ic and div_n_nc_nc opcodes
32 3.13 2008.03.29 chromatic added does_i_p_pc opcode
33 3.12 2008.03.26 coke deleted classoffset
34 3.11 2008.03.26 coke deleted getattribute_p_p_i,setattribute_p_p_i
35 3.10 2007.12.18 coke deleted print_newline opcode
36 3.09 2007.12.13 chromatic added copy_p_p opcode
37 3.08 2007.12.12 allison added addhandler_p opcode
38 3.07 2007.12.12 tewk added die_s die_sc die_p die_pc opcodes
39 3.06 2007.11.28 coke remove classname opcode
40 3.05 2007.10.29 allison add get_eh, get_all_eh, and count_eh opcodes
41 3.04 2007.10.28 paultcochrane remove clear_eh opcode
42 3.03 2007.10.17 coke released 0.4.17
43 3.02 2007.09.20 bernhard remove opcode hash
44 3.02 2007.09.07 bernhard deprecate opcode substr_r
45 3.01 2007.08.17 chromatic store HLL names as strings in frozen Sub PMCs
46 3.0 2007.07.23 jonathan implementing new PBC header format
47 2.26 2007.07.17 particle released 0.4.14
48 2.25 2007.06.19 allison released 0.4.13
49 2.24 2007.05.16 bernhard remove opcodes adddoes, removedoes, singleton
50 2.23 2007.05.15 chromatic released 0.4.12
51 2.22 2007.04.17 mdiep released 0.4.11
52 2.21 2007.04.15 jonathan added get_class opcodes and clone_p_p_p opcode
53 2.20 2007.04.07 jonathan added addrole opcode
54 2.19 2007.03.20 coke released 0.4.10
55 2.18 2007.02.22 pmichaud released 0.4.9
56 2.17 2007.01.16 particle released 0.4.8
57 2.16 2006.12.16 paultcochrane deleted fetchmethod opcode
58 2.15 2006.11.14 chip released 0.4.7
59 2.14 2006.11.07 tewk added comp_flags to parrot_sub_t
60 2.13 2006.09.23 bernhard remove ops from dotgnu.ops
61 2.12 2006.08.18 leo removed None PMC from parrot core
62 2.11 2006.08.16 creiss added STM opcodes
63 2.10 2006.08.08 chip released 0.4.6
64 2.9 2006.06.19 leo released 0.4.5
65 2.8 2006.06.18 leo reorder opcodes
66 2.7 2006.05.14 leo released 0.4.4
67 2.6 2006.04.02 leo released 0.4.3
68 2.5 2006.03.21 leo remove deleted opcodes
69 2.4 2006.02.22 leo released 0.4.2
70 2.3 2006.01.08 leo released 0.4.1
71 2.2 2005.12.04 leo released 0.4.0, deleted opcodes
72 2.1 2005.12.01 leo inserted another pic ops
73 2.0 2005.11.22 leo changed PBC format (HLL_info)
74 1.4 2005.11.13 leo freeze outer_sub with Subs in PBC
75 1.3 2005.11.12 leo freeze lex_info with Subs in PBC
76 1.2 2005.11.06 leo deleted newsub, foldup, pack; 0.3.1 release
77 1.1 2005.10.17 leo deleted register stack opcodes
78 1.0 2005.10.15 jonathan changed debug segment format
79 0.27 2005.10.11 leo added reg usage to Subs in PBC
80 0.26 2005.10.07 leo deleted lot of opcodes
81 0.25 2005.10.05 leo deleted rx_ opcodes
82 0.24 2005.10.01 leo 0.3.0 release
83 0.23 2005.08.05 leo 0.2.3 release
84 0.22 2005.07.03 leo 0.2.2 release; add fixedintegerarray.freeze
85 0.21 2005.06.04 leo 0.2.1 release
86 0.20 2005.05.31 leo added HLL_id to frozen sub structure
87 0.19 2005.05.11 leo MMD function number change (rm MMD_I_LOGICAL...)
88 0.18 2005.05.08 leo 0.2.0 release
89 0.17 2005.04.22 leo removed add_p_* and friends, insert infix ops
90 0.16 2005.03.06 leo 0.1.2 release
91 0.15 2004.11.27 leo tossed 36 ops: gt,ge,isgt,isge w. I,N,S args
92 0.14 2004.11.27 leo tossed 13 ops: forgot some op_n_i
93 0.13 2004.11.27 leo tossed 177 ops: constants only, mixed args
94 0.12 2004.11.11 leo updates ops.num with some renumbering
95 0.11 2004.10.09 leo 0.1.1 release
96 0.10 2004.09.26 leo insert non-branching compare ops
97 0.9 2004.09.24 leo insert interpinfo_p opcodes
98 0.8 2004.02.29 leo 0.1.0 release
99 0.7 2003.11.21 leo remove unused size fields in front of PF constants
100 0.6 2003.10.31 leo 0.0.13 release
101 0.5 2003.10.24 dan add bogus opcode
102 0.4 2003.10.24 leo start using this file for fingerprinting
103 0.3 2003.10.22 dan add delegates.pmc
104 0.2 2003.10.21 dan delete instantiate op
105 0.1 2003.10.21 leo start this file