Home | History | Annotate | Line # | Download | only in dist
API_CHANGES revision 1.1.1.2.16.1
      1     This file is the short summary of the API changes:
      2     
      3     27.03.2017 - Non-backward compatible
      4         JIT stack is changed from bottom-up to top-town.
      5     
      6     15.01.2017 - Non-backward compatible
      7         Move with update may modifiy flags, the base register
      8         can only be used once and [reg+reg<<shift] addressing
      9         mode where shift > 0 is not supported anymore.
     10     
     11     12.01.2017 - Non-backward compatible
     12         Introducing a new flag mechanism which provides better
     13         compatibility with CPUs without flags. Only two flags
     14         remain: zero and variable. The current type of the
     15         variable flag is specified by the arithmetic operator.
     16         The SLJIT_KEEP_FLAGS is removed.
     17     
     18     29.02.2016 - Non-backward compatible
     19         Several types and instructions are renamed to improve
     20         readability. In general byte, half, and int are renamed
     21         to 8, 16, and 32. Floating point types are also renamed
     22         from d and s to f64 and f32.
     23     
     24           [s|u]b -> [s|u]8    (8 bit values)
     25           [s|u]h -> [s|u]16   (16 bit values)
     26           [s|u]i -> [s|u]32   (32 bit values)
     27           d -> f64            (64 bit floating point value)
     28           s -> f32            (32 bit floating point value)
     29     
     30     18.05.2015 - Non-backward compatible
     31         SLJIT_[I|]L[U|S]DIV is renamed to SLJIT_[I|][U|S]DIVMOD
     32     
     33     29.09.2014 - Non-backward compatible
     34         The sljit_create_compiler, sljit_allocate_stack, and
     35         sljit_free_stack functions have an allocator_data
     36         argument now.
     37     
     38     19.09.2014 - Non-backward compatible
     39         Using I, D, S prefixes in conditional and floating
     40         point operations. And an L prefix to long multiplication
     41         and division (op0 opcodes).
     42     
     43     11.08.2014 - Non-backward compatible
     44         A currently unused options parameter is added to sljit_emit_enter
     45         and sljit_set_context.
     46     
     47     06.07.2014 - Non-backward compatible
     48         SCRATCH registers are renamed to Rx and SAVED registers
     49         are renamed to Sx. See the explanation of these registers
     50         in sljitLir.h.
     51     
     52     31.05.2014 - Non-backward compatible
     53         SLJIT_TEMPORARY_EREGx registers were not renamed to
     54         SLJIT_SCRATCH_EREGx when the change was done on 08.11.2012
     55     
     56     05.03.2014 - Backward compatible
     57         The sljit_set_target now supports those jumps, which
     58         does not created with SLJIT_REWRITABLE_JUMP flag.
     59         Reason: sljit_emit_ijump does not support conditional
     60         jumps.
     61     
     62     03.03.2014 - Non-backward compatible
     63         SLJIT_MOV_UI cannot be combined with SLJIT_INT_OP.
     64         Reason: SLJIT_INT_OP flag is not recommended to use
     65         directly, and SLJIT_IMOV has no sign bit.
     66     
     67     29.01.2014 - Backward compatible
     68         Bits assigned to SLJIT_MEM and SLJIT_IMM flags are changed.
     69         Reason: the most common cases are fits into one byte now,
     70         and more registers can be supported in the future.
     71     
     72     08.11.2012 - Non-backward compatible
     73         SLJIT_TEMPORARY_REGx registers are renamed to SLJIT_SCRATCH_REGx.
     74     
     75     07.11.2012 - Non-backward compatible
     76         sljit_emit_cond_value is renamed to sljit_emit_op_flags. An
     77         extra source argument is added which will be used in the future.
     78     
     79     05.11.2012 - Backward compatible
     80         sljit_emit_cond_value now supports SLJIT_AND and SLJIT_INT_OP
     81         flags, which makes this function complete.
     82     
     83     01.11.2012 - Non-backward compatible
     84         SLJIT_F* opcodes are renamed to SLJIT_*D to show that
     85         they are double precision operators. Furthermore
     86         SLJIT_*S single precision opcodes are added.
     87     
     88     01.11.2012 - Non-backward compatible
     89         Register arguments of operations with SLJIT_INT_OP flag
     90         must be computed by another operation with SLJIT_INT_OP flag.
     91         The same way as SLJIT_SINGLE_OP flag works with floating point
     92         numbers. See the description of SLJIT_INT_OP.
     93     
     94     01.11.2012 - Backward compatible
     95         All operations whose support the SLJIT_INT_OP flag, have an
     96         alternate name now, which includes the SLJIT_INT_OP. These
     97         names starting with I.
     98     
     99     31.10.2012 - Non-backward compatible
    100         Renaming sljit_w to sljit_sw, sljit_i to sljit_si, sljit_h
    101         to sljit_sh, and sljit_b to sljit_sb. Reason: their sign
    102         bit is part of the type now.
    103     
    104     20.10.2012 - Non-backward compatible
    105         Renaming SLJIT_C_FLOAT_NAN to SLJIT_C_FLOAT_UNORDERED.
    106         Reason: all architectures call these unordered comparions.
    107