try to cleanup the mess in the input code
[pcsx_rearmed.git] / deps / lightning / NEWS
1 NEWS FROM 1.99 TO 1.99a
2
3 o   Lightning now builds and pass all test cases on AIX 7.1 powerpc,
4     HP-UX 11iv2 hppa, HP-UX 11iv3 ia64, Solaris 10 Sparc, Solaris 11
5     x86_64, and Irix 6.5.30 mips (using n32 abi).
6
7 NEWS FROM VERSION 1.3 TO 1.99
8
9 o   The 1.99 version is a major lightning redesign and an
10     alpha version.
11
12 o   Unless for some special power users usage, the major
13     difference in the rework is that now function calls push
14     arguments from left to right, what is both, more natural for
15     programers, and also more natural to implement for architectures
16     that pass arguments in registers and have alignment constraints,
17     usually for 64 bit double arguments.
18
19 o   Add mips backend, implementing the o32 abi.
20
21 o   Added arm backend implementing all combinations of software float,
22     vfp, neon, arm and thumb instruction sets, softfp and hardp abis,
23     armv5, armv6, and armv7.
24
25 o   Added sse2+ code generation for the 32 bit x86 backend.
26
27 o   Added sse3 and sse4.x optional code generation for the 64 bit
28     x86 backend, code generation based on detected cpu.
29
30 o   Reworked and added full lightning instruction set to ppc 32;
31     tested on ppc64 hardware and Darwin 32 operating system.
32
33 o   Added ppc64 backend, built and tested on Fedora ppc.
34
35 o   Reworked the sparc backend, built and tested on Debian sparc.
36
37 o   Added an ia64 backend, built and tested on Debian ia64.
38
39 o   Added an hppa backend, built and tested on Debian hppa.
40
41 ---
42
43 NEWS FROM VERSION 1.2 TO 1.3
44
45 o   Initial support for x86-64 back-end (mostly untested).
46
47 o   lightning is more strict on casts from integer to pointer.
48     Be sure to use the _p variants when your immediates are
49     of pointer type.  This was done to ease 64-bit cleanliness
50     tests.
51
52 o   Many bug fixes.
53
54 o   JIT_FPRET is used as JIT_RET to move return values.
55     jit_retval_[fd] is used to retrieve return values.
56
57 o   jit_pushr/jit_popr are deprecated, you need to #define
58     JIT_NEED_PUSH_POP prior to including lightning.h if you
59     want to use them.
60
61 o   Support for stack-allocated variables.  Because of this,
62     backends defining JIT_FP should now rename it to JIT_AP.
63     JIT_FP is now a user-visible register used in ldxi/ldxr
64     to access stack-allocated variables.
65
66
67 ---
68
69 NEWS FROM VERSION 1.1.2 TO 1.2
70
71 o   Floating-point interface rewritten, uses a register file
72     architecture rather than a stack.
73
74 o   Many bug fixes.
75
76 o   jit_prepare and jit_retval are now jit_prepare_i and
77     jit_retval_i.
78
79 o   Support for Fedora Core 1's exec-shield feature.
80
81 o   PPC supports both SysV and Darwin ABIs.
82
83 o   More (and more complete) examples provided.
84
85 ---
86
87 NEWS FROM VERSION 1.1.1 TO 1.1.2
88
89 o   This release fixes the bugs in PowerPC cache flushing and in
90     SPARC testing.
91
92 ---
93
94 NEWS FROM VERSION 1.1 TO 1.1.1
95
96 o   Merge changes from Debian
97
98 This version was released to have a distributable version of lightning
99 after the recent crack of the GNU FTP machines.  It does not fix
100 outstanding bugs; I apologize for the inconvenience.
101
102 ---
103
104 NEWS FROM VERSION 1.0 TO 1.1
105
106 o   Several bug fixes
107
108 o   improved infrastructure for embedding GNU lightning (lightningize
109     script)
110     
111 ---
112
113 NEWS FROM VERSION 0.99 TO 1.0
114
115 o   SPARC backend tested on GNU Smalltalk
116
117
118 ---
119
120 NEWS FROM VERSION 0.98 TO 0.99
121
122 o   Added floating point function support (thanks to Laurent Michel);
123     unfortunately this broke even more the PPC and SPARC floating point
124     stuff :-(
125
126 ---
127
128 NEWS FROM VERSION 0.97 to 0.98
129
130 o   PPC backend tested on GNU Smalltalk
131
132 o   switched to autoconf 2.50
133
134 o   new (much faster) PPC cache flushing code by John McIntosh
135
136 ---
137
138 NEWS FROM VERSION 0.96 to 0.97
139
140 o   support for cross-assembling and for disassembling the code that the tests
141     generate
142
143 o   PPC microtests pass (tested directly by me), SPARC was said to work
144
145 ---
146
147 NEWS FROM VERSION 0.95 to 0.96
148
149 o   fixed implementation of delay slots to be coherent with the manual
150
151 ---
152
153 NEWS FROM VERSION 0.94 to 0.95
154
155 o   adc/sbc replaced with addc/addx/subc/subx to allow for more optimization
156     (inspired by the PPC instruction set).
157
158 o   A few fixes and much less warnings from the compiler
159
160 o   Automake-ized everything
161
162 o   i386 backend generates smaller code for bms/bmc/or/xor by using byte
163     or word versions if possible
164
165 o   Moved backends to separate directories
166
167 ---
168
169 NEWS FROM VERSION 0.93 to 0.94
170
171 o   Manual builds as DVI file.
172
173 ---
174
175 NEWS FROM VERSION 0.92 to 0.93
176
177 o   Floating-point front-end (began supporting PPC & SPARC).
178
179 ---
180
181 NEWS FROM VERSION 0.91 to 0.92
182
183 o   Floating-point front-end (only x86 supported).
184
185 ---
186
187 NEWS FROM VERSION 0.9 to 0.91
188
189 o   Carrying supported in addition/subtraction.
190
191 o   insn type changed to jit_insn.
192
193 o   Misc bug fixes.
194
195 o   Reentrancy supported.
196
197 o   SPARC run-time assembler rewritten.
198
199 o   The run-time assembler can be disabled for debugging purposes.