API_CHANGES revision 1.1.1.2
1This file is the short summary of the API changes:
2
329.02.2016 - Non-backward compatible
4    Several types and instructions are renamed to improve
5    readability. In general byte, half, and int are renamed
6    to 8, 16, and 32. Floating point types are also renamed
7    from d and s to f64 and f32.
8
9      [s|u]b -> [s|u]8    (8 bit values)
10      [s|u]h -> [s|u]16   (16 bit values)
11      [s|u]i -> [s|u]32   (32 bit values)
12      d -> f64            (64 bit floating point value)
13      s -> f32            (32 bit floating point value)
14
1518.05.2015 - Non-backward compatible
16    SLJIT_[I|]L[U|S]DIV is renamed to SLJIT_[I|][U|S]DIVMOD
17
1829.09.2014 - Non-backward compatible
19    The sljit_create_compiler, sljit_allocate_stack, and
20    sljit_free_stack functions have an allocator_data
21    argument now.
22
2319.09.2014 - Non-backward compatible
24    Using I, D, S prefixes in conditional and floating
25    point operations. And an L prefix to long multiplication
26    and division (op0 opcodes).
27
2811.08.2014 - Non-backward compatible
29    A currently unused options parameter is added to sljit_emit_enter
30    and sljit_set_context.
31
3206.07.2014 - Non-backward compatible
33    SCRATCH registers are renamed to Rx and SAVED registers
34    are renamed to Sx. See the explanation of these registers
35    in sljitLir.h.
36
3731.05.2014 - Non-backward compatible
38    SLJIT_TEMPORARY_EREGx registers were not renamed to
39    SLJIT_SCRATCH_EREGx when the change was done on 08.11.2012
40
4105.03.2014 - Backward compatible
42    The sljit_set_target now supports those jumps, which
43    does not created with SLJIT_REWRITABLE_JUMP flag.
44    Reason: sljit_emit_ijump does not support conditional
45    jumps.
46
4703.03.2014 - Non-backward compatible
48    SLJIT_MOV_UI cannot be combined with SLJIT_INT_OP.
49    Reason: SLJIT_INT_OP flag is not recommended to use
50    directly, and SLJIT_IMOV has no sign bit.
51
5229.01.2014 - Backward compatible
53    Bits assigned to SLJIT_MEM and SLJIT_IMM flags are changed.
54    Reason: the most common cases are fits into one byte now,
55    and more registers can be supported in the future.
56
5708.11.2012 - Non-backward compatible
58    SLJIT_TEMPORARY_REGx registers are renamed to SLJIT_SCRATCH_REGx.
59
6007.11.2012 - Non-backward compatible
61    sljit_emit_cond_value is renamed to sljit_emit_op_flags. An
62    extra source argument is added which will be used in the future.
63
6405.11.2012 - Backward compatible
65    sljit_emit_cond_value now supports SLJIT_AND and SLJIT_INT_OP
66    flags, which makes this function complete.
67
6801.11.2012 - Non-backward compatible
69    SLJIT_F* opcodes are renamed to SLJIT_*D to show that
70    they are double precision operators. Furthermore
71    SLJIT_*S single precision opcodes are added.
72
7301.11.2012 - Non-backward compatible
74    Register arguments of operations with SLJIT_INT_OP flag
75    must be computed by another operation with SLJIT_INT_OP flag.
76    The same way as SLJIT_SINGLE_OP flag works with floating point
77    numbers. See the description of SLJIT_INT_OP.
78
7901.11.2012 - Backward compatible
80    All operations whose support the SLJIT_INT_OP flag, have an
81    alternate name now, which includes the SLJIT_INT_OP. These
82    names starting with I.
83
8431.10.2012 - Non-backward compatible
85    Renaming sljit_w to sljit_sw, sljit_i to sljit_si, sljit_h
86    to sljit_sh, and sljit_b to sljit_sb. Reason: their sign
87    bit is part of the type now.
88
8920.10.2012 - Non-backward compatible
90    Renaming SLJIT_C_FLOAT_NAN to SLJIT_C_FLOAT_UNORDERED.
91    Reason: all architectures call these unordered comparions.
92