1
0
mirror of https://github.com/cc65/cc65.git synced 2024-10-07 07:59:27 +00:00
Commit Graph

296 Commits

Author SHA1 Message Date
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
cuz
4d34ce83d7 Remove unused flags
git-svn-id: svn://svn.cc65.org/cc65/trunk@577 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-12-09 21:09:52 +00:00
cuz
6c0e4b2b2d Bumped the version number
git-svn-id: svn://svn.cc65.org/cc65/trunk@572 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-12-09 15:51:44 +00:00
cuz
f7e7da925e Ignore some files
git-svn-id: svn://svn.cc65.org/cc65/trunk@571 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-12-09 10:13:20 +00:00
cuz
61a1fa52c4 Fixed several obvious omissions. Allow specifying a start address.
git-svn-id: svn://svn.cc65.org/cc65/trunk@570 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-12-09 10:10:07 +00:00