Mercurial > hg-old > index.cgi
annotate ChangeLog @ 250:0986834ec7d3 2.x
Added no-op .bank pseudo-op to support compiling gcc6809
author | lost |
---|---|
date | Thu, 26 Nov 2009 21:12:45 +0000 |
parents | e8d70b95ec41 |
children | f6af5791472c |
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] |
243 | 19 [+] Added "EXTDEP" pseudo op to force a dependency on an external symbol |
20 without an actual external reference - a zero-width external reference | |
21 so to speak [LWASM,LWLINK] | |
22 [+] Decode known incomplete expression flags [LWOBJDUMP] | |
244
c8bcc396ec59
Allow symbols to appear after whitespace when terminated by :
lost
parents:
243
diff
changeset
|
23 [+] 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
|
24 to improve compatibility with gcc6809 output [LWASM] |
243 | 25 [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
|
26 [ ] 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
|
27 [+] 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
|
28 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
|
29 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
|
30 [LWASM] |
243 | 31 |
224 | 32 Version 2.5 |
33 | |
34 [!] 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
|
35 [b] Fixed bug with "include" directive operand parsing [LWASM] |
229 | 36 [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
|
37 [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
|
38 [+] 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
|
39 file at the current assembly address. [LWASM] |
226 | 40 [+] Added || and && as boolean or and boolean and respectively [LWASM] |
228 | 41 [+] Added COPY, COPY-, IMP, EXP, TFRP, TFRM, TFRS, TFRR as alternatives to |
42 the TFM instruction variations for compatibility with other assemblers | |
43 [LWASM] | |
230
0df2a39a268c
Added --6809/--6309 switches and some cleanups in error reporting
lost
parents:
229
diff
changeset
|
44 [+] 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
|
45 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
|
46 [LWASM] |
235 | 47 [+] ALIGN now takes an optional padding value (ALIGN align,pad) to specify |
48 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
|
49 [+] 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
|
50 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
|
51 [+] 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
|
52 "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
|
53 [ ] Fixed a few cosmetic issues with error reporting |
224 | 54 |
220
2b254f02b252
Fixed off by one relocation offset for direct page external references
lost
parents:
216
diff
changeset
|
55 Version 2.4 |
2b254f02b252
Fixed off by one relocation offset for direct page external references
lost
parents:
216
diff
changeset
|
56 |
2b254f02b252
Fixed off by one relocation offset for direct page external references
lost
parents:
216
diff
changeset
|
57 [!] Fixed off by one relocation offest for base page external references |
221 | 58 generated by lwasm [LWASM] |
59 [b] Fixed segfault in "extern" pseudo op and allowed a symbol list as the | |
60 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
|
61 [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
|
62 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
|
63 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
|
64 [+] 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
|
65 |
180 | 66 Version 2.3 |
67 | |
216 | 68 [*] added support for compiling using MinGW and added portions of gnulib |
69 to support argp, among other things. Yah! A Windows build! | |
187 | 70 [+] added library search path (-L) and library specification (-l) to LWLINK |
71 [+] added ability to specify section base addresses on the command line to | |
180 | 72 LWLINK (they get prepended to the built in link script) |
187 | 73 [+] added ability to output a "linkmap" to lwlink (--map, -m) |
74 [+] added LWEX0 (LWOS simple binary) target to LWLINK | |
188 | 75 [+] added ability to extract files in LWAR |
76 [+] added ability to "replace" members in LWAR | |
190 | 77 [+] added support for "sym=expr" in the opcode field; this will define a |
78 global symbol (non-section) if it resolves to a constant | |
191 | 79 [+] 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
|
80 [+] allow exporting multiple symbols (export sym,sym,sym...) |
216 | 81 [+] allow extern references in base page addresing mode, possibly buggy |
82 still (LWASM) | |
83 [+] 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
|
84 [+] 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
|
85 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
|
86 [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
|
87 or linking fails |
209 | 88 [b] fixed incorrect handling of library search path which caused only the |
89 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
|
90 [ ] 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
|
91 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
|
92 preambles that previously occurred |
184
220a760ec654
Make lwlink display all undefined references instead of bailing after the first one
lost
parents:
183
diff
changeset
|
93 [ ] 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
|
94 bailing out after the first one |
180 | 95 |
166 | 96 Version 2.2 |
97 | |
171 | 98 [*] created LWAR to manage library/archive files |
166 | 99 [+] cescapes pragma to allow C-style string escapes in FCC, FCS, and FCN |
100 [+] .area alias for SECTION | |
101 [+] .globl alias for EXPORT; also accept name of symbol as operand | |
102 [+] various compatibility directive aliases for FCB, FDB, FQB, RMB, FCC, | |
103 FCS, and FCN | |
104 [+] accept "*" has a prefix for base page addressing mode | |
168 | 105 [+] sections named "bss" or ".bss" in any case are now assumed to be |
106 BSS sections. The "!bss" flag can be used to remove that assumption. | |
169 | 107 [+] ignore lines starting with # to permit C pre-processor output to be used |
108 as input to lwasm | |
170
bf69160da467
Added ability to use 0x and 0X as prefixes for hexadecimal numbers
lost
parents:
169
diff
changeset
|
109 [+] allow "0x" and "0X" as prefixes to identify hexadecimal numbers |
171 | 110 [+] added support for a simple library/archive file format to LWLINK |
166 | 111 [b] actually show assembly errors when no list requested |
112 [b] pragma and --pragma now actually take multiple pragmas as documented | |
113 | |
148 | 114 Version 2.1 |
115 | |
116 [*] merged LWLINK (1.0) and LWASM to create LWTOOLS | |
117 [+] [LWASM] pragmas can be specified on the command line | |
118 [+] [LWASM] undefextern pragma added (undefined symbols treated as external) | |
119 [+] documentation | |
120 [b] [LWASM] made pragmas case insensitive | |
121 [b] [LWASM] made EXTERN symbols never be part of a section in symbol table | |
122 | |
123 | |
124 LWASM Version 2.0 | |
125 | |
126 [*] major rewrite of the entire assembler | |
127 [+] object file support | |
128 | |
129 | |
130 LWLINK Version 1.0 | |
131 | |
132 [*] initial released version |