Mercurial > hg-old > index.cgi
annotate ChangeLog @ 264:61d1db1dfe2a 2.6
Build manual for release
author | lost |
---|---|
date | Tue, 22 Dec 2009 05:27:32 +0000 |
parents | e27279180a73 |
children | 1bdb4e256fc9 6e940229360b |
rev | line source |
---|---|
148 | 1 The following includes the various changes in each release of LWTOOLS. |
2 | |
3 Each item is prefixed by a flag in []. The flags mean: | |
4 | |
5 [*] Project structure or other "meta" change | |
6 [!] critical bug fix - code generation error, etc. | |
7 [+] new feature | |
8 [-] feature removed | |
9 [b] minor bugfix | |
183
302b8db5fd89
modified lwlink to merge contiguous sections in the DECB output file to avoid the explosion of preambles
lost
parents:
182
diff
changeset
|
10 [ ] general improvement |
148 | 11 |
12 Also, the software affected may follow in []. | |
13 | |
243 | 14 Version 2.6 |
15 | |
245
eb499c146c0d
Fixed selection of objects for inclusion from within libraries to actually resolve references correctly
lost
parents:
244
diff
changeset
|
16 [!] Fixed symbol resolution so all externally referenced objects, including |
eb499c146c0d
Fixed selection of objects for inclusion from within libraries to actually resolve references correctly
lost
parents:
244
diff
changeset
|
17 within library archives, are properly included [LWLINK] |
248
e8d70b95ec41
Fixed various problems with determining which files to include in the output and also fixed problem identifying which files actually resolved symbols
lost
parents:
246
diff
changeset
|
18 [!] Fixed bug that prevented setting non-default stack size for LWEX [LWLINK] |
254 | 19 [+] Added structure support (struct, endstruct) [LWASM] |
243 | 20 [+] Added "EXTDEP" pseudo op to force a dependency on an external symbol |
21 without an actual external reference - a zero-width external reference | |
22 so to speak [LWASM,LWLINK] | |
23 [+] Decode known incomplete expression flags [LWOBJDUMP] | |
244
c8bcc396ec59
Allow symbols to appear after whitespace when terminated by :
lost
parents:
243
diff
changeset
|
24 [+] Allow symbol to appear after whitespace if specified with a trailing : |
c8bcc396ec59
Allow symbols to appear after whitespace when terminated by :
lost
parents:
243
diff
changeset
|
25 to improve compatibility with gcc6809 output [LWASM] |
243 | 26 [b] Treat incomplete reference flags as specified in docs [LWLINK] |
248
e8d70b95ec41
Fixed various problems with determining which files to include in the output and also fixed problem identifying which files actually resolved symbols
lost
parents:
246
diff
changeset
|
27 [ ] Changed default LWEX stack size to 1K [LWLINK] |
250
0986834ec7d3
Added no-op .bank pseudo-op to support compiling gcc6809
lost
parents:
248
diff
changeset
|
28 [+] Accept ".bank" pseudo op and ignore it; bank support may be provided |
0986834ec7d3
Added no-op .bank pseudo-op to support compiling gcc6809
lost
parents:
248
diff
changeset
|
29 in the future if a reasonable model for such is determined; currently |
0986834ec7d3
Added no-op .bank pseudo-op to support compiling gcc6809
lost
parents:
248
diff
changeset
|
30 this is just provided for compatibility with the gcc6809 build process |
0986834ec7d3
Added no-op .bank pseudo-op to support compiling gcc6809
lost
parents:
248
diff
changeset
|
31 [LWASM] |
251
f6af5791472c
Fixed default LWEX0 linkscript to include .ctors and .dtors sections
lost
parents:
250
diff
changeset
|
32 [b] Fixed default linkscript for LWEX0 format to include the .ctors, .dtors, |
f6af5791472c
Fixed default LWEX0 linkscript to include .ctors and .dtors sections
lost
parents:
250
diff
changeset
|
33 and related section [LWLINK] |
252 | 34 [!] Fixed problem outputting LWEX0 binaries with non-zero BSS size [LWLINK] |
253 | 35 [ ] Added rejection for comment not starting at start of line but which |
36 looks like a symbol (single word ending in :, no space after ; or *) | |
37 [LWASM] | |
257 | 38 [+] Support input files with line numbers for compatibility with EDTASM |
255 | 39 and others that use line numbers [LWASM] |
257 | 40 [+] Add support for an include path, always include from current dir |
41 unless file not found [LWASM] | |
243 | 42 |
224 | 43 Version 2.5 |
44 | |
45 [!] Fixed error in the fix for invalid operands included in 2.4 [LWASM] | |
225
058f18119025
Fixed filename parsing bug in include directive and added includebin directive
lost
parents:
224
diff
changeset
|
46 [b] Fixed bug with "include" directive operand parsing [LWASM] |
229 | 47 [b] Fixed additional parsing errors with pseudo ops [LWASM] |
236
a58f49a77441
Added os9 target, pragma to control whether $ localizes a symbol, and fixed some condition nesting bugs
lost
parents:
235
diff
changeset
|
48 [b] Fixed parsing error with various conditional nesting situations [LWASM] |
225
058f18119025
Fixed filename parsing bug in include directive and added includebin directive
lost
parents:
224
diff
changeset
|
49 [+] Added includebin directive to include the literal contents of a binary |
058f18119025
Fixed filename parsing bug in include directive and added includebin directive
lost
parents:
224
diff
changeset
|
50 file at the current assembly address. [LWASM] |
226 | 51 [+] Added || and && as boolean or and boolean and respectively [LWASM] |
228 | 52 [+] Added COPY, COPY-, IMP, EXP, TFRP, TFRM, TFRS, TFRR as alternatives to |
53 the TFM instruction variations for compatibility with other assemblers | |
54 [LWASM] | |
230
0df2a39a268c
Added --6809/--6309 switches and some cleanups in error reporting
lost
parents:
229
diff
changeset
|
55 [+] Added --6809/-9 switch to cause 6309 instructions to be rejected; also |
0df2a39a268c
Added --6809/--6309 switches and some cleanups in error reporting
lost
parents:
229
diff
changeset
|
56 included --6309/-3 switch to force default allow of 6309 instructions |
0df2a39a268c
Added --6809/--6309 switches and some cleanups in error reporting
lost
parents:
229
diff
changeset
|
57 [LWASM] |
235 | 58 [+] ALIGN now takes an optional padding value (ALIGN align,pad) to specify |
59 the byte value that will be used for padding if needed [LWASM] | |
236
a58f49a77441
Added os9 target, pragma to control whether $ localizes a symbol, and fixed some condition nesting bugs
lost
parents:
235
diff
changeset
|
60 [+] Added OS9 module target along with the OS9, MOD, and EMOD pseudo ops |
a58f49a77441
Added os9 target, pragma to control whether $ localizes a symbol, and fixed some condition nesting bugs
lost
parents:
235
diff
changeset
|
61 to allow building OS9 modules [LWASM] |
a58f49a77441
Added os9 target, pragma to control whether $ localizes a symbol, and fixed some condition nesting bugs
lost
parents:
235
diff
changeset
|
62 [+] Added pragma "dollarlocal"/"nodollarlocal" and "dollarnotlocal"/ |
a58f49a77441
Added os9 target, pragma to control whether $ localizes a symbol, and fixed some condition nesting bugs
lost
parents:
235
diff
changeset
|
63 "nodollarnotlocal" to control whether $ localizes a symbol [LWASM] |
230
0df2a39a268c
Added --6809/--6309 switches and some cleanups in error reporting
lost
parents:
229
diff
changeset
|
64 [ ] Fixed a few cosmetic issues with error reporting |
224 | 65 |
220
2b254f02b252
Fixed off by one relocation offset for direct page external references
lost
parents:
216
diff
changeset
|
66 Version 2.4 |
2b254f02b252
Fixed off by one relocation offset for direct page external references
lost
parents:
216
diff
changeset
|
67 |
2b254f02b252
Fixed off by one relocation offset for direct page external references
lost
parents:
216
diff
changeset
|
68 [!] Fixed off by one relocation offest for base page external references |
221 | 69 generated by lwasm [LWASM] |
70 [b] Fixed segfault in "extern" pseudo op and allowed a symbol list as the | |
71 operand just like "export" [LWASM] | |
223
436b36214e35
Fixed lack of error when there are extraneous characters at the end of the operand.
lost
parents:
222
diff
changeset
|
72 [b] Fixed lack of error when there are extraneous characters at the end |
436b36214e35
Fixed lack of error when there are extraneous characters at the end of the operand.
lost
parents:
222
diff
changeset
|
73 of the operand. This did not cause incorrect code generation for correct |
436b36214e35
Fixed lack of error when there are extraneous characters at the end of the operand.
lost
parents:
222
diff
changeset
|
74 code but would silently generate incorrect code for some easy errors |
222
7803d2d09993
Allow 8 bit immediate operands to be external references
lost
parents:
221
diff
changeset
|
75 [+] 8 bit immediate operands can now be external references [LWASM] |
220
2b254f02b252
Fixed off by one relocation offset for direct page external references
lost
parents:
216
diff
changeset
|
76 |
180 | 77 Version 2.3 |
78 | |
216 | 79 [*] added support for compiling using MinGW and added portions of gnulib |
80 to support argp, among other things. Yah! A Windows build! | |
187 | 81 [+] added library search path (-L) and library specification (-l) to LWLINK |
82 [+] added ability to specify section base addresses on the command line to | |
180 | 83 LWLINK (they get prepended to the built in link script) |
187 | 84 [+] added ability to output a "linkmap" to lwlink (--map, -m) |
85 [+] added LWEX0 (LWOS simple binary) target to LWLINK | |
188 | 86 [+] added ability to extract files in LWAR |
87 [+] added ability to "replace" members in LWAR | |
190 | 88 [+] added support for "sym=expr" in the opcode field; this will define a |
89 global symbol (non-section) if it resolves to a constant | |
191 | 90 [+] added operator ~ as a prefix operator for a 1s complement in LWASM |
192
bfd0fb0a85c2
Allow exporting multiple symbols on a single directive
lost
parents:
191
diff
changeset
|
91 [+] allow exporting multiple symbols (export sym,sym,sym...) |
216 | 92 [+] allow extern references in base page addresing mode, possibly buggy |
93 still (LWASM) | |
94 [+] handle 8 bit external references, possibly buggy still (LWLINK) | |
206
299c5d793aca
Made lwlink smarter about not included unneeded (unreferenced) members of a library file
lost
parents:
204
diff
changeset
|
95 [+] arranged for unused members of library files (archives) to be ignored |
299c5d793aca
Made lwlink smarter about not included unneeded (unreferenced) members of a library file
lost
parents:
204
diff
changeset
|
96 during linking to keep the final size of the binary down (LWLINK) |
182
833d392fec82
Arranged for lwasm and lwlink to remove the output file in case they fail
lost
parents:
180
diff
changeset
|
97 [b] arranged for output files for lwasm/lwlink to be removed if the assembly |
833d392fec82
Arranged for lwasm and lwlink to remove the output file in case they fail
lost
parents:
180
diff
changeset
|
98 or linking fails |
209 | 99 [b] fixed incorrect handling of library search path which caused only the |
100 last directory to ever matter | |
183
302b8db5fd89
modified lwlink to merge contiguous sections in the DECB output file to avoid the explosion of preambles
lost
parents:
182
diff
changeset
|
101 [ ] DECB output of LWLINK now collapses contiguous output blocks into single |
302b8db5fd89
modified lwlink to merge contiguous sections in the DECB output file to avoid the explosion of preambles
lost
parents:
182
diff
changeset
|
102 single blocks in the output file; this eliminates the explosion of |
302b8db5fd89
modified lwlink to merge contiguous sections in the DECB output file to avoid the explosion of preambles
lost
parents:
182
diff
changeset
|
103 preambles that previously occurred |
184
220a760ec654
Make lwlink display all undefined references instead of bailing after the first one
lost
parents:
183
diff
changeset
|
104 [ ] LWLINK now displays *all* undefined symbols and references instead of |
220a760ec654
Make lwlink display all undefined references instead of bailing after the first one
lost
parents:
183
diff
changeset
|
105 bailing out after the first one |
180 | 106 |
166 | 107 Version 2.2 |
108 | |
171 | 109 [*] created LWAR to manage library/archive files |
166 | 110 [+] cescapes pragma to allow C-style string escapes in FCC, FCS, and FCN |
111 [+] .area alias for SECTION | |
112 [+] .globl alias for EXPORT; also accept name of symbol as operand | |
113 [+] various compatibility directive aliases for FCB, FDB, FQB, RMB, FCC, | |
114 FCS, and FCN | |
115 [+] accept "*" has a prefix for base page addressing mode | |
168 | 116 [+] sections named "bss" or ".bss" in any case are now assumed to be |
117 BSS sections. The "!bss" flag can be used to remove that assumption. | |
169 | 118 [+] ignore lines starting with # to permit C pre-processor output to be used |
119 as input to lwasm | |
170
bf69160da467
Added ability to use 0x and 0X as prefixes for hexadecimal numbers
lost
parents:
169
diff
changeset
|
120 [+] allow "0x" and "0X" as prefixes to identify hexadecimal numbers |
171 | 121 [+] added support for a simple library/archive file format to LWLINK |
166 | 122 [b] actually show assembly errors when no list requested |
123 [b] pragma and --pragma now actually take multiple pragmas as documented | |
124 | |
148 | 125 Version 2.1 |
126 | |
127 [*] merged LWLINK (1.0) and LWASM to create LWTOOLS | |
128 [+] [LWASM] pragmas can be specified on the command line | |
129 [+] [LWASM] undefextern pragma added (undefined symbols treated as external) | |
130 [+] documentation | |
131 [b] [LWASM] made pragmas case insensitive | |
132 [b] [LWASM] made EXTERN symbols never be part of a section in symbol table | |
133 | |
134 | |
135 LWASM Version 2.0 | |
136 | |
137 [*] major rewrite of the entire assembler | |
138 [+] object file support | |
139 | |
140 | |
141 LWLINK Version 1.0 | |
142 | |
143 [*] initial released version |