1
0
mirror of https://github.com/cc65/cc65.git synced 2024-11-12 07:07:19 +00:00
Commit Graph

900 Commits

Author SHA1 Message Date
cuz
2a921c4498 Export start and size of the ZP memory area
git-svn-id: svn://svn.cc65.org/cc65/trunk@1258 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-23 20:11:36 +00:00
cuz
3f9e7b56ae Support additional o65 attributes.
Add a special ID for the cc65 operating system that is written to the OS
field of the options header.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1254 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-21 20:00:04 +00:00
cuz
1c3e74a148 Add new o65 operating system
git-svn-id: svn://svn.cc65.org/cc65/trunk@1253 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-21 14:30:40 +00:00
cuz
0a68498252 Use cc65 character classification routines
git-svn-id: svn://svn.cc65.org/cc65/trunk@1245 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-20 11:49:53 +00:00
cuz
99de22ffe2 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1242 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-17 18:52:03 +00:00
cuz
3dcb7dba3b Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@1240 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-14 19:14:52 +00:00
cuz
c285fe7788 Fixed a message output
git-svn-id: svn://svn.cc65.org/cc65/trunk@1236 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-09 19:04:11 +00:00
cuz
040475613e Fixed an error
git-svn-id: svn://svn.cc65.org/cc65/trunk@1235 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-09 19:00:57 +00:00
cuz
8701a2c8d5 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@1234 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-08 20:05:05 +00:00
cuz
3f503a78e5 New pattern matching module matchpat.[ch]
git-svn-id: svn://svn.cc65.org/cc65/trunk@1233 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-08 19:55:12 +00:00
cuz
19aa50b7b9 Bumped the version number
git-svn-id: svn://svn.cc65.org/cc65/trunk@1231 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-08 19:08:27 +00:00
cuz
09f288e43d Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@1230 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-08 18:52:47 +00:00
cuz
a8698b30e8 Remove duplicate line feed
git-svn-id: svn://svn.cc65.org/cc65/trunk@1229 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-08 18:42:44 +00:00
cuz
bcec4ba223 Add --config option to usage
git-svn-id: svn://svn.cc65.org/cc65/trunk@1227 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-08 18:39:51 +00:00
cuz
3bf4a3a735 Cosmetic change
git-svn-id: svn://svn.cc65.org/cc65/trunk@1226 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-08 18:35:58 +00:00
cuz
e0d9f2817e Cosmetic change
git-svn-id: svn://svn.cc65.org/cc65/trunk@1225 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-08 18:31:25 +00:00
cuz
569c0f451f New plugin stdio
git-svn-id: svn://svn.cc65.org/cc65/trunk@1224 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-07 20:52:04 +00:00
cuz
77308fe20f Working on the plugins
git-svn-id: svn://svn.cc65.org/cc65/trunk@1223 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-07 20:39:35 +00:00
cuz
58b5779f35 Working on the plugins
git-svn-id: svn://svn.cc65.org/cc65/trunk@1222 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-07 20:00:39 +00:00
cuz
6c3720686b First test plugin
git-svn-id: svn://svn.cc65.org/cc65/trunk@1221 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-07 13:42:45 +00:00
cuz
9abe1e62e7 Working on the plugin interface
git-svn-id: svn://svn.cc65.org/cc65/trunk@1220 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-06 22:11:09 +00:00
cuz
4a4e24623b Add info about the boolxx functions
git-svn-id: svn://svn.cc65.org/cc65/trunk@1216 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-06 15:06:03 +00:00
cuz
c6fe12ef6b Fixed a code generation bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1215 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-06 14:51:27 +00:00
cuz
2a7a410532 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@1213 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-01 17:55:22 +00:00
cuz
d17936488c Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@1212 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-01 17:42:24 +00:00
cuz
7b89ebcecb Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@1211 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-31 20:46:53 +00:00
cuz
56caf8f80d Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@1210 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-30 22:04:40 +00:00
cuz
febf56a10b First import
git-svn-id: svn://svn.cc65.org/cc65/trunk@1209 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-30 16:43:27 +00:00
cuz
a07e05beb8 Include name of errorneous symbol in error message
git-svn-id: svn://svn.cc65.org/cc65/trunk@1203 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-24 13:04:24 +00:00
cuz
83e73742c8 Prepare for separate ASM name in symbol table entry
git-svn-id: svn://svn.cc65.org/cc65/trunk@1202 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-18 20:04:03 +00:00
cuz
5bdb19f63c Attribute work
git-svn-id: svn://svn.cc65.org/cc65/trunk@1201 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-18 06:05:04 +00:00
cuz
cf23f0937c Don't print a zero offset in labels
git-svn-id: svn://svn.cc65.org/cc65/trunk@1197 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-17 14:32:19 +00:00
cuz
05753557ce Cosmetic change
git-svn-id: svn://svn.cc65.org/cc65/trunk@1196 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-17 10:58:07 +00:00
cuz
1b60396980 Use CHECK instead of assert
git-svn-id: svn://svn.cc65.org/cc65/trunk@1195 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-16 20:45:41 +00:00
cuz
6628389d85 Use a new specialized multiply routines
git-svn-id: svn://svn.cc65.org/cc65/trunk@1194 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-16 20:28:06 +00:00
cuz
486640200b Several minor changes and fixes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1192 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-16 14:11:15 +00:00
cuz
0655cac6a6 Use MakeHexArg, replace STX and STY by STZ if possible
git-svn-id: svn://svn.cc65.org/cc65/trunk@1191 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-16 10:24:55 +00:00
cuz
1118dd1237 Tracking zero page locations
git-svn-id: svn://svn.cc65.org/cc65/trunk@1190 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-15 06:09:59 +00:00
cuz
7639643144 Use CTNone as default
git-svn-id: svn://svn.cc65.org/cc65/trunk@1189 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-12 19:30:45 +00:00
cuz
0a9324d9c6 Working on the register tracking
git-svn-id: svn://svn.cc65.org/cc65/trunk@1188 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-11 21:27:01 +00:00
cuz
f38852df82 First support for STZ
git-svn-id: svn://svn.cc65.org/cc65/trunk@1187 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-11 06:29:54 +00:00
cuz
d814a9a6fb Removed old cruft
git-svn-id: svn://svn.cc65.org/cc65/trunk@1186 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-10 21:28:55 +00:00
cuz
64ad5e8031 Add 65C02 specific optimization: Use TSB/TRB
git-svn-id: svn://svn.cc65.org/cc65/trunk@1185 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-10 21:23:23 +00:00
cuz
0355c34199 Fixed problems with incomplete types (structs and arrays) that could cause
internal compiler errors in several places.
An old cc65 extension (variables of type void) was broken and did no longer
work. Fixed that.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1184 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-10 20:44:58 +00:00
cuz
9941f3d84a The last patch did not work correctly in call cases - fix that
git-svn-id: svn://svn.cc65.org/cc65/trunk@1183 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-10 14:34:20 +00:00
cuz
0b06db99d5 Local variables of incomplete types could be declared
git-svn-id: svn://svn.cc65.org/cc65/trunk@1171 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-07 20:59:43 +00:00
cuz
17e86356c2 Ignore lunix.inc
git-svn-id: svn://svn.cc65.org/cc65/trunk@1170 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-06 07:57:22 +00:00
cuz
3d838849da Fixed an error in struct assignment
git-svn-id: svn://svn.cc65.org/cc65/trunk@1169 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-06 07:56:33 +00:00
cuz
92644b226c Last fix was not correct according to the standard
git-svn-id: svn://svn.cc65.org/cc65/trunk@1168 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-06 07:41:22 +00:00
cuz
e9b0009f97 Bug fixed: The preprocessor # operator did not work correctly with string arguments
git-svn-id: svn://svn.cc65.org/cc65/trunk@1167 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-06 07:35:20 +00:00
cuz
0a4799c975 Fixed several const related bugs
git-svn-id: svn://svn.cc65.org/cc65/trunk@1165 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-06 06:38:48 +00:00
cuz
0f911ef8d4 Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@1164 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-03-05 21:17:37 +00:00
cuz
208090ea36 Added .charmap
git-svn-id: svn://svn.cc65.org/cc65/trunk@1163 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-02-18 09:11:57 +00:00
cuz
3b5808788b Add #pragma charmap()
Cosmetical changes.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1162 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-02-18 08:40:11 +00:00
cuz
a54cd59e1f Allow to set character translations at compile time
git-svn-id: svn://svn.cc65.org/cc65/trunk@1160 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-02-18 08:20:18 +00:00
cuz
621424788e Updated PETSCII mappings
git-svn-id: svn://svn.cc65.org/cc65/trunk@1159 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-02-14 21:43:50 +00:00
cuz
2d96df46f1 Add new feature "leading_dot_in_identifiers".
git-svn-id: svn://svn.cc65.org/cc65/trunk@1156 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-02-14 10:05:51 +00:00
cuz
6126672784 Bumped the version number
git-svn-id: svn://svn.cc65.org/cc65/trunk@1155 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-02-14 08:44:57 +00:00
cuz
164310971c Replace staxspidx if possible
git-svn-id: svn://svn.cc65.org/cc65/trunk@1153 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-02-13 11:42:56 +00:00
cuz
18b591e268 Better code for compares
git-svn-id: svn://svn.cc65.org/cc65/trunk@1152 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-02-13 10:42:56 +00:00
cuz
b8c4dc9b06 Add code size factor for optimizer routines
git-svn-id: svn://svn.cc65.org/cc65/trunk@1151 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-02-12 23:02:58 +00:00
cuz
08443d5e7a Better code for compares
git-svn-id: svn://svn.cc65.org/cc65/trunk@1150 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-02-12 20:40:05 +00:00
cuz
90fc74e835 Correct the END value for a segment so that it shows the last address in
use by this segment, not the start of the following one.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1148 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-02-06 13:36:25 +00:00
cuz
82fb1d9b78 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1145 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-01-15 20:23:35 +00:00
cuz
6b654255ba Allow comments inside of macro calls that are spread over more than one line
git-svn-id: svn://svn.cc65.org/cc65/trunk@1141 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-12-12 21:45:05 +00:00
cuz
5f8c0269d6 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1137 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-12-10 18:01:53 +00:00
cpg
ffab34bdc8 set atari start address to (very conservative) $2E00; the previous
value didn't work with rs232 drivers loaded


git-svn-id: svn://svn.cc65.org/cc65/trunk@1134 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-12-09 23:49:24 +00:00
izydorst
e0c27701d0 LUnix support tuning - plain ASCII and changed imports list
git-svn-id: svn://svn.cc65.org/cc65/trunk@1128 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-12-02 12:50:07 +00:00
cuz
90ca5c1af9 Added o65 symbol export capability
git-svn-id: svn://svn.cc65.org/cc65/trunk@1127 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-12-01 17:14:12 +00:00
cuz
ebbd68673b Added/completed/debugged o65 support for Lunix
git-svn-id: svn://svn.cc65.org/cc65/trunk@1126 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-12-01 13:34:51 +00:00
cuz
2de4a26251 Added SBC optimizations suggested by Piotr Fusik
git-svn-id: svn://svn.cc65.org/cc65/trunk@1123 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-11-17 11:31:57 +00:00
cuz
b8facd7f1e Added info for more runtime routines
git-svn-id: svn://svn.cc65.org/cc65/trunk@1122 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-11-17 11:27:48 +00:00
cuz
258133cb0e Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1112 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-11-12 14:20:56 +00:00
cuz
465d208b2b Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1110 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-11-08 09:15:58 +00:00
cuz
88b7d6d3bb Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@1107 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-11-07 10:34:57 +00:00
cuz
161c916a83 Added info for tsteax and utsteax
git-svn-id: svn://svn.cc65.org/cc65/trunk@1106 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-11-07 10:33:14 +00:00
cuz
940fba4d54 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1105 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-11-07 10:32:51 +00:00
cuz
99ddd22dc8 Changed cfg to account for the NMI handler in connection with the C128 banking.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1084 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-25 18:52:38 +00:00
cuz
62314aeac9 Fix a problem where the linker tries to print a NULL pointer if there is a
problem with the builtin configuration that is used.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1083 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-25 18:51:49 +00:00
cuz
426bea8c19 Use xsprintf
git-svn-id: svn://svn.cc65.org/cc65/trunk@1078 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-25 11:07:06 +00:00
cuz
d796de8109 Use a long for the offset of static variables, so negative offsets do work
(even if this is not standard compliant).


git-svn-id: svn://svn.cc65.org/cc65/trunk@1077 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-25 10:49:51 +00:00
cuz
3c90e33414 Working on the optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@1069 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-21 13:53:20 +00:00
cuz
b3f2a6b35c Cosmetic change
git-svn-id: svn://svn.cc65.org/cc65/trunk@1065 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-18 21:45:37 +00:00
cuz
92a4c51753 Fixed some bugs
git-svn-id: svn://svn.cc65.org/cc65/trunk@1064 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-18 21:01:24 +00:00
cuz
c4627941e8 Cleanup, more 65c02 code
git-svn-id: svn://svn.cc65.org/cc65/trunk@1063 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-18 20:45:24 +00:00
cuz
b4393c9ac6 Use 125 bytes as range for short branches
git-svn-id: svn://svn.cc65.org/cc65/trunk@1062 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-18 19:24:18 +00:00
cuz
21c6e1badb Extend an optimization
git-svn-id: svn://svn.cc65.org/cc65/trunk@1061 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-18 19:23:10 +00:00
cuz
564fbbe448 New function RegAXUsed
git-svn-id: svn://svn.cc65.org/cc65/trunk@1060 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-18 19:21:40 +00:00
cuz
1366b6cbea Added first provisions for a code size factor check in the optimizer
git-svn-id: svn://svn.cc65.org/cc65/trunk@1059 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-18 19:21:09 +00:00
cuz
8d02f9a9b3 Added a new CS_RangeHasLabel function
git-svn-id: svn://svn.cc65.org/cc65/trunk@1058 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-18 19:20:14 +00:00
cuz
86a90e463d Remove some 65C02 code generation that is now in the backend.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1057 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-18 19:10:24 +00:00
cuz
43530d1604 Check for shift count zero
git-svn-id: svn://svn.cc65.org/cc65/trunk@1055 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-17 21:46:27 +00:00
cuz
2435aa63b5 Added 65C02 specific optimizations.
Make two runs over the code when generating register info to get info for
backward jumps right.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1049 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-13 12:21:46 +00:00
cuz
1483fa741a Small change to make line info more exact
git-svn-id: svn://svn.cc65.org/cc65/trunk@1048 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-13 09:20:26 +00:00
cuz
0fcbb73439 Use a function pointer instead of a flag
git-svn-id: svn://svn.cc65.org/cc65/trunk@1046 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-12 18:21:56 +00:00
cuz
24a70bbcce Added a missing const
git-svn-id: svn://svn.cc65.org/cc65/trunk@1045 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-12 18:21:43 +00:00
cuz
5f577c4260 Added another optimization
git-svn-id: svn://svn.cc65.org/cc65/trunk@1044 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-12 09:06:42 +00:00
cuz
9552efc1e4 More work to make user asm labels work
git-svn-id: svn://svn.cc65.org/cc65/trunk@1043 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-12 07:58:11 +00:00
cuz
b892d4b3d3 Remove an unused function
git-svn-id: svn://svn.cc65.org/cc65/trunk@1042 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 22:02:00 +00:00
cuz
799459fdd5 Allow labels in user supplied asm statements
git-svn-id: svn://svn.cc65.org/cc65/trunk@1041 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 22:01:47 +00:00
cuz
de7da529f0 Fixed problems with the inline macros
git-svn-id: svn://svn.cc65.org/cc65/trunk@1040 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 21:54:25 +00:00
cuz
46209118b1 The longbranch macros did not work with numeric addresses
git-svn-id: svn://svn.cc65.org/cc65/trunk@1039 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 20:06:01 +00:00
cuz
f0ed4af252 Add a missing type in range check
git-svn-id: svn://svn.cc65.org/cc65/trunk@1038 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 19:58:16 +00:00
cuz
ffd9db8b61 Another signedness fix
git-svn-id: svn://svn.cc65.org/cc65/trunk@1037 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 14:53:55 +00:00
cuz
3277ca7880 Fixed another signedness problem
git-svn-id: svn://svn.cc65.org/cc65/trunk@1036 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 14:50:10 +00:00
cuz
6a01347d6c Last change fixed the wrong parameter
git-svn-id: svn://svn.cc65.org/cc65/trunk@1035 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 14:45:59 +00:00
cuz
ebfed0b5df Fixed a signedness problem
git-svn-id: svn://svn.cc65.org/cc65/trunk@1034 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 14:42:03 +00:00
cuz
1e78c82d9b Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1033 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 14:38:46 +00:00
cuz
76f0c7c05e Comment out unused code
git-svn-id: svn://svn.cc65.org/cc65/trunk@1031 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 13:48:30 +00:00
cuz
e17b0a0aac Don't run into an internal error in case of a duplicate switch label.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1029 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 13:45:46 +00:00
cuz
8546ab22cc Free the tree after use
git-svn-id: svn://svn.cc65.org/cc65/trunk@1028 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 13:39:17 +00:00
cuz
5e8ab3819d Bumped the version number
git-svn-id: svn://svn.cc65.org/cc65/trunk@1025 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 13:16:46 +00:00
cuz
e17ab75ab3 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1023 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 09:52:02 +00:00
cuz
41d2cc8f91 Rewrote the switch statement
git-svn-id: svn://svn.cc65.org/cc65/trunk@1021 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 08:02:03 +00:00
cuz
4fb253cef0 Track sreg in OptDecouple
git-svn-id: svn://svn.cc65.org/cc65/trunk@1019 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-11 07:01:16 +00:00
cuz
88dfee5642 Module breakup
git-svn-id: svn://svn.cc65.org/cc65/trunk@1017 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-09 09:44:39 +00:00
cuz
0fdf581d06 Added special multiplication routines
git-svn-id: svn://svn.cc65.org/cc65/trunk@1012 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-04 21:34:14 +00:00
cuz
560ac0ac43 Cosmetic changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1011 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-04 21:15:56 +00:00
cuz
9c4b9f19dc Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1010 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-04 21:15:43 +00:00
cuz
0c09cc7242 Optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@1009 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-04 11:34:18 +00:00
cuz
a497075f78 Reordered usage output
git-svn-id: svn://svn.cc65.org/cc65/trunk@1002 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-02 19:01:00 +00:00
cuz
8a53f3667c Handle intermediate access to local variables in the stack op optimizations.
git-svn-id: svn://svn.cc65.org/cc65/trunk@994 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-02 10:55:04 +00:00
cuz
b08adf831d More stack op optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@991 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-01 19:40:01 +00:00
cuz
ab692b8de8 Fixed a bug, added info for more runtime routines
git-svn-id: svn://svn.cc65.org/cc65/trunk@989 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-10-01 15:22:48 +00:00
cuz
91dac51780 Use __attribute ((unused)) instead of -Wno-unused-parameter
git-svn-id: svn://svn.cc65.org/cc65/trunk@988 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-30 22:19:39 +00:00
cuz
453a8b704f Used __attribute ((unused)) instead of -Wno-unused-parameter
git-svn-id: svn://svn.cc65.org/cc65/trunk@987 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-30 22:04:19 +00:00
cuz
c8415fc17c More source splitting.
Remove the -Wno-unused-parameter in favour of __atribute__((unused)).


git-svn-id: svn://svn.cc65.org/cc65/trunk@986 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-30 21:56:45 +00:00
cuz
0a6895ca05 Working on optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@985 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-29 20:34:31 +00:00
cuz
3c2b118dae Readded size optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@984 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-29 16:59:29 +00:00
cuz
62e48d9fd9 More splitting
git-svn-id: svn://svn.cc65.org/cc65/trunk@983 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-29 14:55:40 +00:00
cuz
9c24d729ae Added optimization statistics
git-svn-id: svn://svn.cc65.org/cc65/trunk@982 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-29 12:17:36 +00:00
cuz
21111ba235 Reordered/splitted the optimization module
git-svn-id: svn://svn.cc65.org/cc65/trunk@981 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-29 11:09:25 +00:00
cuz
2d7634aa6b Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@979 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-27 17:09:10 +00:00
cuz
371fcf48da Added AUTO_COLLECTION_INITIALIZER
git-svn-id: svn://svn.cc65.org/cc65/trunk@977 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-27 05:54:40 +00:00
cuz
3752afa685 Check for an additional error condition
git-svn-id: svn://svn.cc65.org/cc65/trunk@976 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-26 18:43:37 +00:00
cuz
4c87acbcc2 Command line options cleanup
git-svn-id: svn://svn.cc65.org/cc65/trunk@974 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-26 17:39:13 +00:00
cuz
e0e1515a72 Added new command line options, one bug fixed
git-svn-id: svn://svn.cc65.org/cc65/trunk@973 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-26 17:38:54 +00:00
cuz
42326113cb More optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@971 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-25 20:37:58 +00:00
cuz
8d0dfb5b41 More optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@970 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-25 12:34:34 +00:00
cuz
9b9508cbd8 Bumped the version number
git-svn-id: svn://svn.cc65.org/cc65/trunk@969 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-25 10:34:29 +00:00
cuz
5d0a52b7ac Finished indirect function calls.
Debugged zero page location tracking.


git-svn-id: svn://svn.cc65.org/cc65/trunk@968 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-25 10:30:48 +00:00
cuz
f4fbbc3dcc Track usage of the sreg and several other zero page registers and remove
unused stores into these registers.
Because of this, the old code using regsave does no longer work. Started
to rewrite it.


git-svn-id: svn://svn.cc65.org/cc65/trunk@966 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-24 22:36:35 +00:00
cuz
f28be6d657 Collect more info on zp registers
git-svn-id: svn://svn.cc65.org/cc65/trunk@965 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-23 09:20:55 +00:00
cuz
a6aa5512d5 Generate info about zp register usage
git-svn-id: svn://svn.cc65.org/cc65/trunk@964 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-21 21:52:50 +00:00
cuz
51b8bd4046 Extend usage information
git-svn-id: svn://svn.cc65.org/cc65/trunk@962 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-21 19:34:57 +00:00
cuz
f3b401cd21 Use X instead of Y register
git-svn-id: svn://svn.cc65.org/cc65/trunk@961 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-21 13:49:23 +00:00
cuz
fa1f814be5 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@960 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-21 13:48:55 +00:00
cuz
d694b9e88a Added a peephole optimization step for global array accesses
git-svn-id: svn://svn.cc65.org/cc65/trunk@957 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-20 19:47:32 +00:00
cuz
afb63ff31c Add character RAM
git-svn-id: svn://svn.cc65.org/cc65/trunk@953 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-20 09:52:28 +00:00
cuz
97af941462 Add IRQ function table
git-svn-id: svn://svn.cc65.org/cc65/trunk@945 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-19 08:23:10 +00:00
cuz
95551a2fd1 Fixed a minor problem
git-svn-id: svn://svn.cc65.org/cc65/trunk@942 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-16 20:48:22 +00:00
cuz
0f4acb37c6 Added text tables
git-svn-id: svn://svn.cc65.org/cc65/trunk@941 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-16 18:16:09 +00:00
cuz
1a65e30fa0 Fixed a few warnings
git-svn-id: svn://svn.cc65.org/cc65/trunk@938 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-15 13:36:59 +00:00
cuz
7c67a35771 Fixed a few warnings
git-svn-id: svn://svn.cc65.org/cc65/trunk@937 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-15 13:11:41 +00:00
cuz
8f057fd84d Fixed a few warnings
git-svn-id: svn://svn.cc65.org/cc65/trunk@936 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-15 12:13:33 +00:00
cuz
0b5c5e2e36 Fixed a few compiler warnings
git-svn-id: svn://svn.cc65.org/cc65/trunk@935 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-15 12:00:43 +00:00
cuz
e67f4dcbd6 Enable even more warnings
git-svn-id: svn://svn.cc65.org/cc65/trunk@934 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-15 11:59:30 +00:00
cuz
c3cb057407 Check for sign problems in compares
git-svn-id: svn://svn.cc65.org/cc65/trunk@932 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-15 11:51:08 +00:00
cuz
02be846175 Fix signed/unsigned comparisons
git-svn-id: svn://svn.cc65.org/cc65/trunk@931 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-15 11:39:07 +00:00
cuz
295d853b89 Add stacksize symbol
git-svn-id: svn://svn.cc65.org/cc65/trunk@928 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-14 21:19:48 +00:00
cuz
2760fbd5dc Adjust sizes, define the video RAM
git-svn-id: svn://svn.cc65.org/cc65/trunk@922 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-14 16:48:41 +00:00
cuz
6be0510138 Added the CBM510 as a new target system
git-svn-id: svn://svn.cc65.org/cc65/trunk@910 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-13 19:49:27 +00:00
cuz
3ab5a002df Added the Commdore 510 target system
git-svn-id: svn://svn.cc65.org/cc65/trunk@909 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-13 19:44:43 +00:00
cuz
fac003f477 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@902 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-13 15:29:59 +00:00
cuz
358578d417 Add IRQ table
git-svn-id: svn://svn.cc65.org/cc65/trunk@901 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-13 15:29:45 +00:00
cuz
c322febd66 Cosmetic change
git-svn-id: svn://svn.cc65.org/cc65/trunk@896 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-12 18:20:42 +00:00
cuz
1a39515769 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@895 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-12 18:20:30 +00:00
cuz
23fbf3ff2a Adding functionality to StrBuf
git-svn-id: svn://svn.cc65.org/cc65/trunk@885 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-09 20:49:20 +00:00
cuz
c090f90172 Use a string buffer instead of the old implementation
git-svn-id: svn://svn.cc65.org/cc65/trunk@883 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-09 13:23:54 +00:00
cuz
c04e8a90e4 More string buffer work
git-svn-id: svn://svn.cc65.org/cc65/trunk@882 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-09 13:23:16 +00:00
cuz
2485259a93 New strbuf module
git-svn-id: svn://svn.cc65.org/cc65/trunk@881 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-09 10:24:16 +00:00
cuz
56b8ead112 Move inline asm parsing into a separate module
git-svn-id: svn://svn.cc65.org/cc65/trunk@880 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-09 09:33:06 +00:00
cuz
bdf212b311 Added copyright notice
git-svn-id: svn://svn.cc65.org/cc65/trunk@879 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-09 09:26:46 +00:00
cuz
3e887bd9dd Flag labels in the map file exports list
git-svn-id: svn://svn.cc65.org/cc65/trunk@877 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-08 22:09:30 +00:00
cuz
cd53882eed Add the label/equate bit to the exports and debug symbols
git-svn-id: svn://svn.cc65.org/cc65/trunk@876 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-08 21:08:20 +00:00
cuz
522ddabc35 Add new defines for export usage
git-svn-id: svn://svn.cc65.org/cc65/trunk@875 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-08 20:51:33 +00:00
cuz
d799cc283f Add special routines for processing the boolean || and && operators in
preprocessor mode to work around limitations in the existing ones (constant
expressions are not detected).


git-svn-id: svn://svn.cc65.org/cc65/trunk@864 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-08 13:59:32 +00:00
cuz
84ddce0474 Cosmetic change
git-svn-id: svn://svn.cc65.org/cc65/trunk@861 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-07 21:42:40 +00:00
cuz
5db55826f0 Removed an invalid data access.
Check nested #ifs for overflow.
Lots of cleanups and rewriting of code sections.
Streamlined and extended #if stack handling.
Added #elif preprocessor directive.


git-svn-id: svn://svn.cc65.org/cc65/trunk@859 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-07 09:54:33 +00:00
cuz
f3df91260a Minor speedup
git-svn-id: svn://svn.cc65.org/cc65/trunk@858 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-07 07:04:54 +00:00
cuz
e1b0251f04 Renamed some functions for better readbility.
Add a binary search for preprocessor tokens (instead of the old linear one)
to speed up the compiler.


git-svn-id: svn://svn.cc65.org/cc65/trunk@857 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-06 10:17:52 +00:00
cuz
bf47ac26c9 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@856 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-06 10:16:41 +00:00
cuz
3c2dafcb1f Added .lclintrc
git-svn-id: svn://svn.cc65.org/cc65/trunk@855 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-06 09:43:53 +00:00
cuz
b02fbce931 Changed an error message
git-svn-id: svn://svn.cc65.org/cc65/trunk@854 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-01 19:13:36 +00:00
cuz
4ce28c0cd5 Fixed problem with forward references in unnamed labels
git-svn-id: svn://svn.cc65.org/cc65/trunk@853 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-08-30 08:17:06 +00:00
cuz
b3af17126c Allow access to the global segments. Place ".dbg file" statements into the
global text segments so they will appear before any of the ".dbg line"
statements emitted later.


git-svn-id: svn://svn.cc65.org/cc65/trunk@852 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-08-24 15:03:10 +00:00
izydorst
9346c3fbac info about c1541 in docs, lowered highest available address to $6000 due to
posiblity of overwriting C stack by drawing/copying to screen backbuffer


git-svn-id: svn://svn.cc65.org/cc65/trunk@847 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-08-15 16:08:15 +00:00
cuz
2ff141a73f Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@845 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-08-13 16:01:18 +00:00
cuz
7da0da3cad More optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@842 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-08-05 22:50:00 +00:00
cuz
185bb4875f Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@841 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-08-05 22:22:58 +00:00
cuz
adb0ac070a More optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@840 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-08-05 22:09:48 +00:00
cuz
0529c2044a More optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@839 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-08-05 21:19:50 +00:00
cuz
24403e151e More optimization
git-svn-id: svn://svn.cc65.org/cc65/trunk@838 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-08-05 20:37:14 +00:00
cuz
59a94124a1 More optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@837 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-08-03 07:34:40 +00:00
cuz
7cf676d40c More optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@836 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-08-03 06:45:38 +00:00
cuz
254948fcfe Minor changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@835 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-08-03 06:45:30 +00:00
cuz
eaf1304b71 Make flag constants unsigned
git-svn-id: svn://svn.cc65.org/cc65/trunk@834 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-08-03 06:45:22 +00:00
cuz
81520a5824 Make --list-opt-steps exclusive
git-svn-id: svn://svn.cc65.org/cc65/trunk@833 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-30 21:40:32 +00:00
cuz
b4010bae8b Fixed several bugs
git-svn-id: svn://svn.cc65.org/cc65/trunk@832 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-30 19:33:52 +00:00
cuz
d341565ddc Allow enabling/disabline optimizer steps by file
git-svn-id: svn://svn.cc65.org/cc65/trunk@831 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-29 20:38:15 +00:00
cuz
750cf445f7 Added IsControl
git-svn-id: svn://svn.cc65.org/cc65/trunk@830 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-29 20:36:19 +00:00
cuz
c51a706830 Simplify code generation
git-svn-id: svn://svn.cc65.org/cc65/trunk@827 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-29 09:07:43 +00:00
cuz
1cfec2492e Optimizations, cleanup in codegen
git-svn-id: svn://svn.cc65.org/cc65/trunk@826 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-26 20:08:28 +00:00
cuz
bbebbe3a1b More optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@824 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-26 06:40:06 +00:00
cuz
58592116ac Better code for > compares
git-svn-id: svn://svn.cc65.org/cc65/trunk@823 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-26 06:10:10 +00:00
cuz
d604ed5e3f More optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@822 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-25 21:51:40 +00:00
cuz
c2e45ea24d Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@819 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-25 16:15:47 +00:00
cuz
cd358107d3 Free register info
git-svn-id: svn://svn.cc65.org/cc65/trunk@818 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-25 06:59:27 +00:00
cuz
8cd7b15c8b Squashed one more bug in the switch statement
git-svn-id: svn://svn.cc65.org/cc65/trunk@816 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-24 20:19:03 +00:00
cuz
0b08eb0e68 More register tracking
git-svn-id: svn://svn.cc65.org/cc65/trunk@815 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-24 20:13:10 +00:00
cuz
d982999f3e Fixed another bug in CascadeSwitch
git-svn-id: svn://svn.cc65.org/cc65/trunk@814 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-24 20:12:53 +00:00
cuz
c5ccad1fc7 Fixed a bug in CascadeSwitch
git-svn-id: svn://svn.cc65.org/cc65/trunk@813 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-24 20:08:58 +00:00
cuz
05eb03b32f Better register tracking in the optimizer
git-svn-id: svn://svn.cc65.org/cc65/trunk@812 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-24 17:07:33 +00:00
cuz
f249ae345e More renaming. Remove the case label limit by using a collection to store
the switch entries.


git-svn-id: svn://svn.cc65.org/cc65/trunk@807 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-17 21:53:17 +00:00
cuz
c571214513 More renaming
git-svn-id: svn://svn.cc65.org/cc65/trunk@806 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-17 21:29:21 +00:00
cuz
cc83744882 Renamed struct expent
git-svn-id: svn://svn.cc65.org/cc65/trunk@805 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-17 21:24:19 +00:00
cuz
cbdc651884 Added more optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@804 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-17 20:13:33 +00:00
cuz
e370e447f6 Fixed a while loop bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@803 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-17 17:18:07 +00:00
cuz
c1c402c6ba Fixed a bug in the for loop optimization applied earlier
git-svn-id: svn://svn.cc65.org/cc65/trunk@800 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-17 16:46:43 +00:00
cuz
6c34eeb93d Move the increment code of a for loop after the loop body.
git-svn-id: svn://svn.cc65.org/cc65/trunk@799 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-17 12:50:38 +00:00
cuz
db707db0f1 Added CollMoveMultiple
git-svn-id: svn://svn.cc65.org/cc65/trunk@798 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-17 12:42:16 +00:00
cuz
5c46ebee60 Added CollMove
git-svn-id: svn://svn.cc65.org/cc65/trunk@797 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-17 11:54:30 +00:00
cuz
2266d11fec Remove transfer insns if possible
git-svn-id: svn://svn.cc65.org/cc65/trunk@795 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-16 18:48:04 +00:00
cuz
6a09064842 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@794 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-16 18:47:19 +00:00
cuz
f98db88f36 Trace register usage, remove duplicate loads
git-svn-id: svn://svn.cc65.org/cc65/trunk@793 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-16 16:32:14 +00:00
cuz
38f076a59e Fixed type compare for functions
git-svn-id: svn://svn.cc65.org/cc65/trunk@791 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-15 16:41:00 +00:00
cuz
36131c00d0 Work around a problem with the #if hack in the preprocessor
git-svn-id: svn://svn.cc65.org/cc65/trunk@787 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-14 15:56:17 +00:00
cuz
6dcb3b662e Avoid a copy of the line contents
git-svn-id: svn://svn.cc65.org/cc65/trunk@786 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-14 15:55:52 +00:00
cuz
ac6fdcc55b Add dbginfo module
git-svn-id: svn://svn.cc65.org/cc65/trunk@782 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-14 14:44:07 +00:00
cuz
49376daf0d Go back to a working codegen.c
git-svn-id: svn://svn.cc65.org/cc65/trunk@779 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-07-14 14:31:50 +00:00
cuz
6a988b4859 Fixed multi line macro bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@772 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-06-24 16:08:35 +00:00
cuz
fe2cd767b2 Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@771 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-06-04 12:27:16 +00:00
cuz
c1da7b8859 Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@770 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-06-04 12:26:53 +00:00
cuz
d27bfe8a7b More renaming
git-svn-id: svn://svn.cc65.org/cc65/trunk@769 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-06-03 09:10:46 +00:00
cuz
f42300ef62 Lots of renaming
git-svn-id: svn://svn.cc65.org/cc65/trunk@768 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-31 21:08:49 +00:00
cuz
9ce1e413e4 Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@767 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-29 18:11:06 +00:00
cuz
a9674c071a Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@766 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-29 07:41:08 +00:00
cuz
3889a2bec9 Added dbg file generation
git-svn-id: svn://svn.cc65.org/cc65/trunk@764 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-29 07:39:46 +00:00
cuz
45242a8e02 Fixed line info issues
git-svn-id: svn://svn.cc65.org/cc65/trunk@763 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-29 07:39:01 +00:00
cuz
369f59c1bb Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@762 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-28 06:30:03 +00:00
cuz
034a4b75e5 Optimizer bugfixes, polished the line info.
git-svn-id: svn://svn.cc65.org/cc65/trunk@761 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-26 10:58:40 +00:00
cuz
916a0879d5 cleanup
git-svn-id: svn://svn.cc65.org/cc65/trunk@760 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-26 10:04:15 +00:00
cuz
84f85293f1 Fixed more E_MCONST issues
git-svn-id: svn://svn.cc65.org/cc65/trunk@758 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-24 18:26:20 +00:00
cuz
b0324b6041 Bugfix
git-svn-id: svn://svn.cc65.org/cc65/trunk@757 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-24 09:16:11 +00:00
cuz
eab6086161 Cosmetic changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@754 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-24 08:26:57 +00:00
cuz
1d458e9f33 Small fixes for Watcom-C
git-svn-id: svn://svn.cc65.org/cc65/trunk@752 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-24 08:04:42 +00:00
cuz
d96baa7c42 Use a collections for the line info and sort them by file/line.
git-svn-id: svn://svn.cc65.org/cc65/trunk@751 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 22:02:19 +00:00
cuz
f3f42c43e5 Use fstat instead of stat and simplify the code
git-svn-id: svn://svn.cc65.org/cc65/trunk@750 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 21:44:14 +00:00
cuz
275da22a66 Use a separate structure for file infos instead of just the name.
git-svn-id: svn://svn.cc65.org/cc65/trunk@749 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 21:32:57 +00:00
cuz
bfbedfa54b Added line infos
git-svn-id: svn://svn.cc65.org/cc65/trunk@748 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 19:03:40 +00:00
cuz
ea2cf602b0 Working on source line information
git-svn-id: svn://svn.cc65.org/cc65/trunk@747 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 08:51:48 +00:00
cuz
d390c51e57 Cosmetic change
git-svn-id: svn://svn.cc65.org/cc65/trunk@746 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 07:10:16 +00:00
cuz
f0f7af6b4a Added new lineinfo module
git-svn-id: svn://svn.cc65.org/cc65/trunk@745 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 07:04:09 +00:00
cuz
bc8f4f3a1e Added .dbg statement generation for the assembler
git-svn-id: svn://svn.cc65.org/cc65/trunk@744 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-22 20:03:26 +00:00
cuz
afbf6d5fac Bumped the version
git-svn-id: svn://svn.cc65.org/cc65/trunk@743 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-22 19:59:37 +00:00
cuz
3a272d93af More polishing to get the line info right
git-svn-id: svn://svn.cc65.org/cc65/trunk@742 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-22 16:54:47 +00:00
cuz
12ec031f9a Polishing and minor corrections
git-svn-id: svn://svn.cc65.org/cc65/trunk@741 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-22 13:58:56 +00:00
cuz
0e80187cec Added the lineinfo module. Changed the complete code generation to use the
supplied data structures. Re-added the -T option which is much more exact
now because of the better line info stuff.
Cleanups in the scanner (remove old #defines).


git-svn-id: svn://svn.cc65.org/cc65/trunk@740 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-22 09:32:24 +00:00
cuz
caf73cf15f Fix load of longs and improve zero page info
git-svn-id: svn://svn.cc65.org/cc65/trunk@739 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-22 07:11:22 +00:00
cuz
a687912ea3 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@738 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-21 20:05:52 +00:00
cuz
c1b6680a92 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@737 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-21 06:43:46 +00:00
cuz
4c19a5b699 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@735 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-20 20:42:00 +00:00
cuz
3c04d5777f Fixed a problem with the Chg/Use flags
git-svn-id: svn://svn.cc65.org/cc65/trunk@734 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-20 18:51:12 +00:00
cuz
a9702f8a52 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@733 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-20 09:38:20 +00:00
cuz
df6d71d91e Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@732 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-19 21:20:08 +00:00
cuz
68c0d38dfa Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@731 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-18 20:32:18 +00:00
cuz
4e645d3ab8 Added DelCodeEntries
git-svn-id: svn://svn.cc65.org/cc65/trunk@730 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-17 21:42:41 +00:00
cuz
09eed789dd Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@729 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-16 19:01:19 +00:00
cuz
1d3ea5cde0 Use :? operator to allow use in expressions
git-svn-id: svn://svn.cc65.org/cc65/trunk@728 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-16 13:05:06 +00:00
cuz
46a306e400 Renamed cfeature.h to inline.h
git-svn-id: svn://svn.cc65.org/cc65/trunk@727 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-16 09:27:35 +00:00
cuz
87e9f7379b Use inline for better performance
git-svn-id: svn://svn.cc65.org/cc65/trunk@726 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-16 09:24:42 +00:00
cuz
f78237a6a6 Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@725 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-15 22:35:38 +00:00
cuz
21d41040c9 Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@724 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-15 19:42:17 +00:00
cuz
c9cb564b9b Moved some of the currently existing into a separate module.
git-svn-id: svn://svn.cc65.org/cc65/trunk@723 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-14 17:35:53 +00:00
cuz
a1da98103a Added backend optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@722 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-09 21:56:03 +00:00
cuz
3ef00e7d2a The .defined function (and .ifdef/.ifndef) flagged an imported symbol as
"defined". I'm not sure whichever is correct, but I changed it now and
will introduce an additional function .isimport if necessary.


git-svn-id: svn://svn.cc65.org/cc65/trunk@721 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-08 17:56:39 +00:00
cuz
a961f00997 Several bug fixes
git-svn-id: svn://svn.cc65.org/cc65/trunk@720 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-07 22:07:59 +00:00
cuz
989aacec2c Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@719 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-06 20:57:58 +00:00
cuz
e6a5e57b47 Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@718 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-05 21:42:58 +00:00
cuz
cc9826721b Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@717 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-05 16:12:47 +00:00
cuz
3ff4baeafb Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@716 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-05 14:30:29 +00:00
cuz
e6484f85c7 Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@715 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-05 13:51:42 +00:00
cuz
e8174aaa25 Added CollPop
git-svn-id: svn://svn.cc65.org/cc65/trunk@714 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-05 12:34:22 +00:00
cuz
0218f8c632 Working on the new backend. Moved the files from the b6502 into the main
compiler dir because the backend is not really a submodule, so this did
not reflect the real relations of the backend to the rest of the compiler.


git-svn-id: svn://svn.cc65.org/cc65/trunk@713 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-05 11:46:02 +00:00
cuz
8800b0c1c8 Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@712 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-05 11:31:05 +00:00
cuz
1fbf554c63 Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@710 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-04 16:41:23 +00:00
cuz
c71a80b0af Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@709 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-03 22:06:59 +00:00
cuz
42695dd3c3 Added CollIndex and CollDeleteItem
git-svn-id: svn://svn.cc65.org/cc65/trunk@708 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-03 20:45:26 +00:00
cuz
8a3bacd7f4 Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@707 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-03 20:16:41 +00:00
cuz
8eadb8aee0 Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@706 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-03 17:34:54 +00:00
cuz
cd956115fa Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@705 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-02 20:14:38 +00:00
cuz
b9677becc1 Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@704 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-01 19:59:55 +00:00
cuz
30e8306e05 Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@703 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-01 17:11:40 +00:00
cuz
239cbdcb2b Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@702 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-01 16:57:43 +00:00
cuz
88792854a6 Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@701 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-01 15:50:31 +00:00
cuz
9d1940a124 Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@700 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-01 09:21:32 +00:00
cuz
aa6b3afcfc Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@699 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-04-30 20:00:13 +00:00
cuz
ddc60c20fe Added CollDeleteAll
git-svn-id: svn://svn.cc65.org/cc65/trunk@698 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-04-30 19:44:54 +00:00
cuz
abb1362389 Fixed a bug with the .incbin command
git-svn-id: svn://svn.cc65.org/cc65/trunk@697 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-04-30 15:42:52 +00:00
cuz
b28672246a Rewriting the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@696 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-04-28 21:45:13 +00:00
cuz
2f722e4779 Started to redo the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@694 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-04-25 19:41:32 +00:00
cuz
4fdd595007 New module strutil
git-svn-id: svn://svn.cc65.org/cc65/trunk@693 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-04-25 13:50:35 +00:00
cuz
9cb63b679c Renamed GetLabel to GetLocalLabel
git-svn-id: svn://svn.cc65.org/cc65/trunk@692 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-04-19 06:49:08 +00:00
cuz
72e27092d4 Fixed a bug. Function declarations where the type of the first parameter is
a typedef and the name of the parameter is omitted where parse as old style
(K&R) function declarations leading to errors.


git-svn-id: svn://svn.cc65.org/cc65/trunk@688 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-04-06 09:07:48 +00:00
cuz
67aed641db Fixed an internal error on too few params in function call
git-svn-id: svn://svn.cc65.org/cc65/trunk@685 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-04-04 20:20:48 +00:00
cuz
b8e26d3612 Repeat opts until there are no more changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@684 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-04-04 20:20:29 +00:00
cuz
2d77e8b35f Make the last change more generic
git-svn-id: svn://svn.cc65.org/cc65/trunk@681 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-27 22:57:20 +00:00
cuz
8e5d8b9e4f Added optimization for g_inc and g_dec (remove handling of high byte if
not used).


git-svn-id: svn://svn.cc65.org/cc65/trunk@680 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-27 22:52:16 +00:00
cuz
e07945e9fc Changed an error message
git-svn-id: svn://svn.cc65.org/cc65/trunk@679 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-26 22:05:05 +00:00
cuz
2eab65ad24 Remove the hardcoded limit from the literal pool.
git-svn-id: svn://svn.cc65.org/cc65/trunk@678 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-26 21:57:07 +00:00
cuz
1ced0327ed Added xrealloc
git-svn-id: svn://svn.cc65.org/cc65/trunk@677 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-26 21:46:37 +00:00
cuz
c3e37a287a Changed the implementation of g_leavariadic.
Generate calls to the additional decax functions.


git-svn-id: svn://svn.cc65.org/cc65/trunk@676 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-26 20:49:54 +00:00
cuz
c3ec23aed0 Use one function exit point
git-svn-id: svn://svn.cc65.org/cc65/trunk@674 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-26 20:07:05 +00:00
cuz
b0f3e85d44 Changed header
git-svn-id: svn://svn.cc65.org/cc65/trunk@673 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-26 16:41:11 +00:00
cuz
32535083e7 Correct wrong optimizer infos
git-svn-id: svn://svn.cc65.org/cc65/trunk@672 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-26 16:40:40 +00:00
cuz
2fead58243 Allow a more exact specification which growth factor is allowed when
generating code and favouring speed over size.


git-svn-id: svn://svn.cc65.org/cc65/trunk@668 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-24 23:33:38 +00:00
cuz
4ab743143b Adjust several optimizer information pieces
git-svn-id: svn://svn.cc65.org/cc65/trunk@667 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-24 16:28:18 +00:00
cuz
c18453ebcb Inline parameter frame building
git-svn-id: svn://svn.cc65.org/cc65/trunk@661 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-24 13:00:16 +00:00
cuz
59bcc726b6 Make AddConstSym from AddEnumSym
git-svn-id: svn://svn.cc65.org/cc65/trunk@660 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 21:27:48 +00:00
cuz
544705e6f4 * Added several type casts to increase C++ compatibility.
* __fixargs__ is now an actual function symbol and no longer handled in the
   scanner.
 * Additional symbol __argsize__ that is a constant in normal functions and
   a const local variable for variadic functions. Using this symbol, the
   va_arg macro gets a lot simpler and smaller.
 * Added special code to handle the fixed parameters of a variadic function.
   The code has some overhead, but the va_fix macro is no longer needed (and
   the compiler generated code is better than va_fix anyway).


git-svn-id: svn://svn.cc65.org/cc65/trunk@652 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 19:17:04 +00:00
cuz
080500d0a0 Type change
git-svn-id: svn://svn.cc65.org/cc65/trunk@650 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 17:59:23 +00:00
cuz
45cf0c2dd9 Changed TgtTranslateBuf
git-svn-id: svn://svn.cc65.org/cc65/trunk@649 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 17:56:28 +00:00
cuz
594a941ee9 Make __fixargs__ an actual symbol table entry. Add a new pseudo variable
__argsize__.


git-svn-id: svn://svn.cc65.org/cc65/trunk@646 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 10:16:50 +00:00
cuz
4357bb4760 Allow __fastcall__ for C function. Contrary to the name, this is a size
optimization for C functions. The last parameter is not pushed onto the
stack by the caller but in the function entry code, so there is no speed
but a size gain.


git-svn-id: svn://svn.cc65.org/cc65/trunk@645 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-22 21:02:01 +00:00
cuz
00706daa49 Fix a compiler crash that happens after a function definition with two or
more identical parameter names. The input is of course wrong, but the
compiler shouldn't crash.


git-svn-id: svn://svn.cc65.org/cc65/trunk@644 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-22 20:54:52 +00:00
cuz
9528c379c1 Added code to check the 6502 stack
git-svn-id: svn://svn.cc65.org/cc65/trunk@638 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-20 22:34:08 +00:00
cuz
6f604239c7 Help text alignment was wrong
git-svn-id: svn://svn.cc65.org/cc65/trunk@634 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-20 10:18:56 +00:00
cuz
857a362e78 Partially fixed a bug with the long addressing modes that was introduced
with a change in the scanner and went undetected since then. Use of symbols
as lower part of the address does still not work.


git-svn-id: svn://svn.cc65.org/cc65/trunk@632 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-19 23:02:38 +00:00
cuz
3e5ed62469 Added new option and pragma to generate calls to a stack checking routine
git-svn-id: svn://svn.cc65.org/cc65/trunk@631 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-19 23:01:35 +00:00
cuz
b86a6b9749 Some more debuginfo implementation
git-svn-id: svn://svn.cc65.org/cc65/trunk@626 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-18 17:55:36 +00:00
cuz
d57f57db55 Add new symbol __STACKSIZE__ to all linker configurations.
git-svn-id: svn://svn.cc65.org/cc65/trunk@622 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-10 14:24:58 +00:00
cuz
1923199dad Allow to define symbols in the linker config
git-svn-id: svn://svn.cc65.org/cc65/trunk@620 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-10 14:10:38 +00:00
cuz
1eff067ff9 Moved verbose output to a shared module in the common/ directory.
git-svn-id: svn://svn.cc65.org/cc65/trunk@619 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-10 10:21:03 +00:00
cuz
d10079ccdc Added module for program output.
git-svn-id: svn://svn.cc65.org/cc65/trunk@618 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-10 10:04:42 +00:00
cuz
27a55ba085 Added optional start and count arguments to .INCBIN
git-svn-id: svn://svn.cc65.org/cc65/trunk@617 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-09 23:12:34 +00:00
cuz
697abf3ed7 Added command line response files
git-svn-id: svn://svn.cc65.org/cc65/trunk@616 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-09 21:59:23 +00:00
cuz
1bcad88c3a Define symbols for the RAM area
git-svn-id: svn://svn.cc65.org/cc65/trunk@610 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-08 14:49:31 +00:00
cuz
724262fb90 Fixed a bug with different load/run areas, where a segment was marked as
dumped if the run area preceeded the load area, so it was not output into
the file for the load area (and not for the run area either).


git-svn-id: svn://svn.cc65.org/cc65/trunk@603 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-03 12:01:46 +00:00
cuz
2e48ce195d Remove trailing underlines from struct names
git-svn-id: svn://svn.cc65.org/cc65/trunk@597 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-01-10 19:10:05 +00:00
cuz
46a2a610e1 Use IsQuote instead of IsQuoteChar
git-svn-id: svn://svn.cc65.org/cc65/trunk@596 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-01-05 19:26:25 +00:00
cuz
9c02fb3ec0 Minor updates
git-svn-id: svn://svn.cc65.org/cc65/trunk@594 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-01-05 19:25:24 +00:00
cuz
8add1ad057 Use chartype.h instead of ctype.h
git-svn-id: svn://svn.cc65.org/cc65/trunk@593 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-01-05 19:24:47 +00:00
cuz
37da7dff98 Add a new chartype module for character classification. Use the new
function IsDigit in target.c.


git-svn-id: svn://svn.cc65.org/cc65/trunk@592 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-01-05 19:06:20 +00:00
cuz
1bb9d0fa70 Changed the makefiles to work under OS/2 using EMX (Changes from
Mirco Miranda).


git-svn-id: svn://svn.cc65.org/cc65/trunk@590 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-01-05 16:59:41 +00:00
cuz
77ec52a06d OS/2 EMX fix
git-svn-id: svn://svn.cc65.org/cc65/trunk@588 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-01-03 20:49:07 +00:00
cuz
51e5a7cf84 Fixed several dangling pointer bugs in 65C0 2optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@587 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-12-24 14:37:18 +00:00
cuz
45de0a49ec Replaced several // style comments
git-svn-id: svn://svn.cc65.org/cc65/trunk@586 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-12-20 17:44:12 +00:00
cuz
3b472c7b91 Cosmetic changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@582 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-12-10 10:40:28 +00:00
cuz
579b48c522 Watcom fixes
git-svn-id: svn://svn.cc65.org/cc65/trunk@581 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-12-10 10:38:42 +00:00
cuz
99052e546d Fixed a problem with the Watcom compiler
git-svn-id: svn://svn.cc65.org/cc65/trunk@580 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-12-10 10:36:44 +00:00