Commit graph

1438 commits

Author SHA1 Message Date
cuz
8cd583d591 Fixed a bug (Report from Greg King)
git-svn-id: svn://svn.cc65.org/cc65/trunk@3367 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-14 18:40:33 +00:00
cuz
e06d9d0d84 Fixed a bug (hopefully).
The ArrayRef() does really need a rewrite, now since we have better
expression info.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3364 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-09 21:17:19 +00:00
cuz
6a1ff58499 Don't treat K&R functions as variadic. The standard (at least the C99 one)
says that passing an invalid number of parameters causes undefined behaviour,
so we don't need to handle that case.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3363 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-09 21:16:32 +00:00
cuz
5c1bc2d740 Output warnings for implicit int types if std >= C99.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3361 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-09 18:03:55 +00:00
cuz
9cd0b7705c Fixed a bug: If all output data was discarded (by using file = "" in the
linker config), CheckExports was never called, which in turn meant that
the list of all exports was never built. This caused a crash later when
the linker tried to generate a map file. The solution is to separate the
creation of the exports list and the check for unresolved imports.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3360 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-09 13:16:51 +00:00
cuz
a456e503e4 More CfgName issues.
Use CfgError instead of calling Error directly.
Use dynamically allocated string buffers in the CfgError and CfgWarning
functions.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3359 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-08 21:38:17 +00:00
cuz
8559581d9f Fixed several places were CfgName was used directly instead of calling
CfgGetName(). The former may be NULL, while the latter maps that to a
string like "builtin config".


git-svn-id: svn://svn.cc65.org/cc65/trunk@3358 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-08 21:08:59 +00:00
cuz
e128341854 Replace obsolete "wprot" segment type by "ro".
git-svn-id: svn://svn.cc65.org/cc65/trunk@3357 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-08 21:08:04 +00:00
cuz
83147e5fce New info file statement "asminc" that allows to read in a file containing
symbol values in asm syntax.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3355 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-08 20:16:57 +00:00
cuz
7774e57eae New segment attribute ALIGN_LOAD. Some cleanup.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3353 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-08 13:44:11 +00:00
cuz
1875825e78 New segment APPZP
git-svn-id: svn://svn.cc65.org/cc65/trunk@3352 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-01-06 13:20:23 +00:00
cuz
49d1a47269 Several improvements and a few bug fixes
git-svn-id: svn://svn.cc65.org/cc65/trunk@3339 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-19 22:15:43 +00:00
cuz
218e722b91 Fixes for the Watcom compiler and some general improvements for older
compilers that don't have the va_copy macro.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3338 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-18 14:28:42 +00:00
cuz
ae70828938 Some improvements using the new SB_Printf for string buffers
git-svn-id: svn://svn.cc65.org/cc65/trunk@3335 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-16 22:43:52 +00:00
cuz
41ec19b72a Use inttypes.h and the intmax_t/uintmax_t types
git-svn-id: svn://svn.cc65.org/cc65/trunk@3332 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-16 22:38:07 +00:00
cuz
3dab55e339 New module inttypes.h
git-svn-id: svn://svn.cc65.org/cc65/trunk@3331 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-16 22:37:30 +00:00
cuz
0ce95ffe6a Fixed another bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3329 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-16 20:26:46 +00:00
cuz
5b851fb621 Fixed several bugs
git-svn-id: svn://svn.cc65.org/cc65/trunk@3328 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-16 20:07:49 +00:00
cuz
e43766ea93 Added a basic vsnprintf implementation to work around problems with compilers
that don't have it.
Added SB_VPrintf and SB_Printf as safe replacement for sprintf function
with the output going into a string buffer.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3327 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-12-15 21:23:22 +00:00
cuz
3692fd40da New test optimization
git-svn-id: svn://svn.cc65.org/cc65/trunk@3310 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-11-27 21:13:07 +00:00
cuz
9ba5eafedf Optimization step that handles load from *ptr++ if ptr is a char* register
variable.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3309 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-11-27 20:52:46 +00:00
cuz
d2c8a754db Handle static functions correctly with %v.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3308 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-11-27 20:52:06 +00:00
cuz
d46b1a395b Fixed a bug in code generation for left shifts
git-svn-id: svn://svn.cc65.org/cc65/trunk@3296 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-11-23 10:04:34 +00:00
cuz
1cb722ba7d The absolute X indirect addressing mode for the 65C02 CPU was missing.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3266 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-26 20:20:55 +00:00
cuz
56656eac69 interruptor is now supported by the runtime
git-svn-id: svn://svn.cc65.org/cc65/trunk@3265 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-26 19:46:26 +00:00
cuz
8af1d395df Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@3243 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-14 16:24:25 +00:00
cuz
d204e4a1ad Added zilog/intel style hex numbers
git-svn-id: svn://svn.cc65.org/cc65/trunk@3242 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-11 19:01:51 +00:00
cuz
843c183698 Changes for new WINE version
git-svn-id: svn://svn.cc65.org/cc65/trunk@3241 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-11 17:09:56 +00:00
cuz
19e1167b82 Use Line only if available
git-svn-id: svn://svn.cc65.org/cc65/trunk@3238 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-10 10:30:03 +00:00
cuz
340a16e399 The --forget-inc-paths option did not work correctly
git-svn-id: svn://svn.cc65.org/cc65/trunk@3237 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-10 10:19:19 +00:00
cuz
8874a80ddd Fixed a bug in inlined memcpy
git-svn-id: svn://svn.cc65.org/cc65/trunk@3236 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-09 19:09:35 +00:00
cuz
0e0183020d Fixed a escape char const problem
git-svn-id: svn://svn.cc65.org/cc65/trunk@3235 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-09 14:32:27 +00:00
cuz
f962da83c2 Added the builtin config for the lynx game console
git-svn-id: svn://svn.cc65.org/cc65/trunk@3224 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-08 18:51:37 +00:00
cuz
b2af5120fb Added the lynx target
git-svn-id: svn://svn.cc65.org/cc65/trunk@3218 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-08 09:23:59 +00:00
cuz
23ef4fa172 Added the lynx target
git-svn-id: svn://svn.cc65.org/cc65/trunk@3217 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-08 09:23:02 +00:00
cuz
856046e41d Added SWEET 16 CPU
git-svn-id: svn://svn.cc65.org/cc65/trunk@3210 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-03 22:10:42 +00:00
cuz
7d0eb0d3ff Added new CPU SWEET16
git-svn-id: svn://svn.cc65.org/cc65/trunk@3208 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-03 21:26:00 +00:00
cuz
7d72f47fe6 Added new CPU SWEET16
git-svn-id: svn://svn.cc65.org/cc65/trunk@3207 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-03 21:25:29 +00:00
cuz
e43054905b Removed the shift runtime functions because there calling semantics have been
changed and size optimizations are no longer possible and needed.
Use the UNKNOWN_REGVAL constant instead of -1.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3202 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-28 19:44:17 +00:00
cuz
f2167895cd Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@3200 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-23 19:05:57 +00:00
cuz
3b58383277 Allow to override CC65_LIB on the command line
git-svn-id: svn://svn.cc65.org/cc65/trunk@3199 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-23 19:05:49 +00:00
cuz
25c8f27d2f Allow to override CC65_INC on the command line
git-svn-id: svn://svn.cc65.org/cc65/trunk@3198 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-23 19:04:00 +00:00
cuz
40d01eb4ce Fixed bug with braces in initializer lists
git-svn-id: svn://svn.cc65.org/cc65/trunk@3193 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-23 17:34:03 +00:00
cuz
2414d6cd11 Invalid code was generated for a switch statement with no case labels.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3191 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-22 17:48:23 +00:00
cuz
cfef8e1e0d Renamed __IRQFUNC_xxx -> __INTERRUPTOR_xxx
git-svn-id: svn://svn.cc65.org/cc65/trunk@3189 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-20 10:24:59 +00:00
cuz
e6b456a8a6 New condes type interruptor
git-svn-id: svn://svn.cc65.org/cc65/trunk@3188 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-20 10:23:57 +00:00
cuz
777dcff9bf New condes type interruptor
git-svn-id: svn://svn.cc65.org/cc65/trunk@3187 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-20 10:15:01 +00:00
cuz
1b3e3633b9 Fixed a C99ism
git-svn-id: svn://svn.cc65.org/cc65/trunk@3183 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-16 14:31:40 +00:00
cuz
06b57e6e7e Introduce a -E flag that activates just the preprocessor.
Use variable sized string buffers for input and macro processing instead
of the fixed buffers used before.
Many changes in the preprocessor to make it more standards compliant (which
it is still not).


git-svn-id: svn://svn.cc65.org/cc65/trunk@3182 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-16 12:42:41 +00:00
cuz
684010abf1 Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@3178 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-10 09:55:55 +00:00