11.1SalnsnThis file is the short summary of the API changes:
21.1Salnsn
31.1.1.3Salnsn27.03.2017 - Non-backward compatible
41.1.1.3Salnsn    JIT stack is changed from bottom-up to top-town.
51.1.1.3Salnsn
61.1.1.3Salnsn15.01.2017 - Non-backward compatible
71.1.1.3Salnsn    Move with update may modifiy flags, the base register
81.1.1.3Salnsn    can only be used once and [reg+reg<<shift] addressing
91.1.1.3Salnsn    mode where shift > 0 is not supported anymore.
101.1.1.3Salnsn
111.1.1.3Salnsn12.01.2017 - Non-backward compatible
121.1.1.3Salnsn    Introducing a new flag mechanism which provides better
131.1.1.3Salnsn    compatibility with CPUs without flags. Only two flags
141.1.1.3Salnsn    remain: zero and variable. The current type of the
151.1.1.3Salnsn    variable flag is specified by the arithmetic operator.
161.1.1.3Salnsn    The SLJIT_KEEP_FLAGS is removed.
171.1.1.3Salnsn
181.1.1.2Salnsn29.02.2016 - Non-backward compatible
191.1.1.2Salnsn    Several types and instructions are renamed to improve
201.1.1.2Salnsn    readability. In general byte, half, and int are renamed
211.1.1.2Salnsn    to 8, 16, and 32. Floating point types are also renamed
221.1.1.2Salnsn    from d and s to f64 and f32.
231.1.1.2Salnsn
241.1.1.2Salnsn      [s|u]b -> [s|u]8    (8 bit values)
251.1.1.2Salnsn      [s|u]h -> [s|u]16   (16 bit values)
261.1.1.2Salnsn      [s|u]i -> [s|u]32   (32 bit values)
271.1.1.2Salnsn      d -> f64            (64 bit floating point value)
281.1.1.2Salnsn      s -> f32            (32 bit floating point value)
291.1.1.2Salnsn
301.1.1.2Salnsn18.05.2015 - Non-backward compatible
311.1.1.2Salnsn    SLJIT_[I|]L[U|S]DIV is renamed to SLJIT_[I|][U|S]DIVMOD
321.1.1.2Salnsn
331.1.1.2Salnsn29.09.2014 - Non-backward compatible
341.1.1.2Salnsn    The sljit_create_compiler, sljit_allocate_stack, and
351.1.1.2Salnsn    sljit_free_stack functions have an allocator_data
361.1.1.2Salnsn    argument now.
371.1.1.2Salnsn
381.1.1.2Salnsn19.09.2014 - Non-backward compatible
391.1.1.2Salnsn    Using I, D, S prefixes in conditional and floating
401.1.1.2Salnsn    point operations. And an L prefix to long multiplication
411.1.1.2Salnsn    and division (op0 opcodes).
421.1.1.2Salnsn
431.1.1.2Salnsn11.08.2014 - Non-backward compatible
441.1.1.2Salnsn    A currently unused options parameter is added to sljit_emit_enter
451.1.1.2Salnsn    and sljit_set_context.
461.1.1.2Salnsn
471.1.1.2Salnsn06.07.2014 - Non-backward compatible
481.1.1.2Salnsn    SCRATCH registers are renamed to Rx and SAVED registers
491.1.1.2Salnsn    are renamed to Sx. See the explanation of these registers
501.1.1.2Salnsn    in sljitLir.h.
511.1.1.2Salnsn
521.1.1.2Salnsn31.05.2014 - Non-backward compatible
531.1.1.2Salnsn    SLJIT_TEMPORARY_EREGx registers were not renamed to
541.1.1.2Salnsn    SLJIT_SCRATCH_EREGx when the change was done on 08.11.2012
551.1.1.2Salnsn
561.1Salnsn05.03.2014 - Backward compatible
571.1Salnsn    The sljit_set_target now supports those jumps, which
581.1Salnsn    does not created with SLJIT_REWRITABLE_JUMP flag.
591.1Salnsn    Reason: sljit_emit_ijump does not support conditional
601.1Salnsn    jumps.
611.1Salnsn
621.1Salnsn03.03.2014 - Non-backward compatible
631.1Salnsn    SLJIT_MOV_UI cannot be combined with SLJIT_INT_OP.
641.1Salnsn    Reason: SLJIT_INT_OP flag is not recommended to use
651.1Salnsn    directly, and SLJIT_IMOV has no sign bit.
661.1Salnsn
671.1Salnsn29.01.2014 - Backward compatible
681.1Salnsn    Bits assigned to SLJIT_MEM and SLJIT_IMM flags are changed.
691.1Salnsn    Reason: the most common cases are fits into one byte now,
701.1Salnsn    and more registers can be supported in the future.
711.1Salnsn
721.1Salnsn08.11.2012 - Non-backward compatible
731.1Salnsn    SLJIT_TEMPORARY_REGx registers are renamed to SLJIT_SCRATCH_REGx.
741.1Salnsn
751.1Salnsn07.11.2012 - Non-backward compatible
761.1Salnsn    sljit_emit_cond_value is renamed to sljit_emit_op_flags. An
771.1Salnsn    extra source argument is added which will be used in the future.
781.1Salnsn
791.1Salnsn05.11.2012 - Backward compatible
801.1Salnsn    sljit_emit_cond_value now supports SLJIT_AND and SLJIT_INT_OP
811.1Salnsn    flags, which makes this function complete.
821.1Salnsn
831.1Salnsn01.11.2012 - Non-backward compatible
841.1Salnsn    SLJIT_F* opcodes are renamed to SLJIT_*D to show that
851.1Salnsn    they are double precision operators. Furthermore
861.1Salnsn    SLJIT_*S single precision opcodes are added.
871.1Salnsn
881.1Salnsn01.11.2012 - Non-backward compatible
891.1Salnsn    Register arguments of operations with SLJIT_INT_OP flag
901.1Salnsn    must be computed by another operation with SLJIT_INT_OP flag.
911.1Salnsn    The same way as SLJIT_SINGLE_OP flag works with floating point
921.1Salnsn    numbers. See the description of SLJIT_INT_OP.
931.1Salnsn
941.1Salnsn01.11.2012 - Backward compatible
951.1Salnsn    All operations whose support the SLJIT_INT_OP flag, have an
961.1Salnsn    alternate name now, which includes the SLJIT_INT_OP. These
971.1Salnsn    names starting with I.
981.1Salnsn
991.1Salnsn31.10.2012 - Non-backward compatible
1001.1Salnsn    Renaming sljit_w to sljit_sw, sljit_i to sljit_si, sljit_h
1011.1Salnsn    to sljit_sh, and sljit_b to sljit_sb. Reason: their sign
1021.1Salnsn    bit is part of the type now.
1031.1Salnsn
1041.1Salnsn20.10.2012 - Non-backward compatible
1051.1Salnsn    Renaming SLJIT_C_FLOAT_NAN to SLJIT_C_FLOAT_UNORDERED.
1061.1Salnsn    Reason: all architectures call these unordered comparions.
107