git subrepo pull --force deps/lightrec
[pcsx_rearmed.git] / deps / lightning / NEWS
CommitLineData
4a71579b
PC
1NEWS FROM 1.99 TO 1.99a
2
3o 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
7NEWS FROM VERSION 1.3 TO 1.99
8
9o The 1.99 version is a major lightning redesign and an
10 alpha version.
11
12o 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
19o Add mips backend, implementing the o32 abi.
20
21o 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
25o Added sse2+ code generation for the 32 bit x86 backend.
26
27o Added sse3 and sse4.x optional code generation for the 64 bit
28 x86 backend, code generation based on detected cpu.
29
30o Reworked and added full lightning instruction set to ppc 32;
31 tested on ppc64 hardware and Darwin 32 operating system.
32
33o Added ppc64 backend, built and tested on Fedora ppc.
34
35o Reworked the sparc backend, built and tested on Debian sparc.
36
37o Added an ia64 backend, built and tested on Debian ia64.
38
39o Added an hppa backend, built and tested on Debian hppa.
40
41---
42
43NEWS FROM VERSION 1.2 TO 1.3
44
45o Initial support for x86-64 back-end (mostly untested).
46
47o 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
52o Many bug fixes.
53
54o JIT_FPRET is used as JIT_RET to move return values.
55 jit_retval_[fd] is used to retrieve return values.
56
57o 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
61o 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
69NEWS FROM VERSION 1.1.2 TO 1.2
70
71o Floating-point interface rewritten, uses a register file
72 architecture rather than a stack.
73
74o Many bug fixes.
75
76o jit_prepare and jit_retval are now jit_prepare_i and
77 jit_retval_i.
78
79o Support for Fedora Core 1's exec-shield feature.
80
81o PPC supports both SysV and Darwin ABIs.
82
83o More (and more complete) examples provided.
84
85---
86
87NEWS FROM VERSION 1.1.1 TO 1.1.2
88
89o This release fixes the bugs in PowerPC cache flushing and in
90 SPARC testing.
91
92---
93
94NEWS FROM VERSION 1.1 TO 1.1.1
95
96o Merge changes from Debian
97
98This version was released to have a distributable version of lightning
99after the recent crack of the GNU FTP machines. It does not fix
100outstanding bugs; I apologize for the inconvenience.
101
102---
103
104NEWS FROM VERSION 1.0 TO 1.1
105
106o Several bug fixes
107
108o improved infrastructure for embedding GNU lightning (lightningize
109 script)
110
111---
112
113NEWS FROM VERSION 0.99 TO 1.0
114
115o SPARC backend tested on GNU Smalltalk
116
117
118---
119
120NEWS FROM VERSION 0.98 TO 0.99
121
122o 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
128NEWS FROM VERSION 0.97 to 0.98
129
130o PPC backend tested on GNU Smalltalk
131
132o switched to autoconf 2.50
133
134o new (much faster) PPC cache flushing code by John McIntosh
135
136---
137
138NEWS FROM VERSION 0.96 to 0.97
139
140o support for cross-assembling and for disassembling the code that the tests
141 generate
142
143o PPC microtests pass (tested directly by me), SPARC was said to work
144
145---
146
147NEWS FROM VERSION 0.95 to 0.96
148
149o fixed implementation of delay slots to be coherent with the manual
150
151---
152
153NEWS FROM VERSION 0.94 to 0.95
154
155o adc/sbc replaced with addc/addx/subc/subx to allow for more optimization
156 (inspired by the PPC instruction set).
157
158o A few fixes and much less warnings from the compiler
159
160o Automake-ized everything
161
162o i386 backend generates smaller code for bms/bmc/or/xor by using byte
163 or word versions if possible
164
165o Moved backends to separate directories
166
167---
168
169NEWS FROM VERSION 0.93 to 0.94
170
171o Manual builds as DVI file.
172
173---
174
175NEWS FROM VERSION 0.92 to 0.93
176
177o Floating-point front-end (began supporting PPC & SPARC).
178
179---
180
181NEWS FROM VERSION 0.91 to 0.92
182
183o Floating-point front-end (only x86 supported).
184
185---
186
187NEWS FROM VERSION 0.9 to 0.91
188
189o Carrying supported in addition/subtraction.
190
191o insn type changed to jit_insn.
192
193o Misc bug fixes.
194
195o Reentrancy supported.
196
197o SPARC run-time assembler rewritten.
198
199o The run-time assembler can be disabled for debugging purposes.