1
0
mirror of https://github.com/cc65/cc65.git synced 2024-11-14 20:05:05 +00:00
Commit Graph

2964 Commits

Author SHA1 Message Date
cuz
092c0a2620 Recode decsp8
git-svn-id: svn://svn.cc65.org/cc65/trunk@670 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-26 14:41:45 +00:00
cuz
b4da972eb7 Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@669 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-26 14:26:27 +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
d1530bc0a2 Squeeze one cycle and several bytes out of the pushax routine.
git-svn-id: svn://svn.cc65.org/cc65/trunk@666 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-24 16:25:08 +00:00
cuz
1e1199cb2b Rewrite the decsp and subysp functions now since they are used more often.
git-svn-id: svn://svn.cc65.org/cc65/trunk@665 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-24 16:15:01 +00:00
cuz
eec01763c4 Remove unused imports
git-svn-id: svn://svn.cc65.org/cc65/trunk@664 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-24 16:00:48 +00:00
cuz
e93f1574f4 Use decsp instead of subysp
git-svn-id: svn://svn.cc65.org/cc65/trunk@663 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-24 15:59:54 +00:00
cuz
0bac28d96f decspX will no longer save a
git-svn-id: svn://svn.cc65.org/cc65/trunk@662 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-24 15:57:32 +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
4a6f7cadd0 Added Greg King
git-svn-id: svn://svn.cc65.org/cc65/trunk@659 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 20:34:17 +00:00
cuz
57d2199bb3 Ignore some auto generated files
git-svn-id: svn://svn.cc65.org/cc65/trunk@658 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 20:20:23 +00:00
cuz
93433f4023 Add section about cost of accessing params in a variadic function
git-svn-id: svn://svn.cc65.org/cc65/trunk@657 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 20:19:22 +00:00
cuz
300acc8175 Remove comment about stdarg.h being non standard
git-svn-id: svn://svn.cc65.org/cc65/trunk@656 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 20:19:02 +00:00
cuz
e7b80c4e8d va_start has also changed since the address of a fixed parameter is now
calculated by the compiler.


git-svn-id: svn://svn.cc65.org/cc65/trunk@655 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 20:07:42 +00:00
cuz
b5914306cd Remove va_fix
git-svn-id: svn://svn.cc65.org/cc65/trunk@654 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 19:21:27 +00:00
cuz
7e6005c999 The va_fix macro is no longer needed
git-svn-id: svn://svn.cc65.org/cc65/trunk@653 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 19:19:02 +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
59db8bdf1f Increased h/w stack safety zone to 12 bytes
git-svn-id: svn://svn.cc65.org/cc65/trunk@651 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 19:08:07 +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
1bc86c9c78 Last checkin was a cr/lf converted version:-(
git-svn-id: svn://svn.cc65.org/cc65/trunk@648 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 10:30:02 +00:00
cuz
5b68ec1591 Use the new __argsize__ pseudo variable
git-svn-id: svn://svn.cc65.org/cc65/trunk@647 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-23 10:28:11 +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
mrintsch
787ca6a9dd completed and testet cbm_read()
git-svn-id: svn://svn.cc65.org/cc65/trunk@639 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-21 20:59:27 +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
mrintsch
fb76e97575 Added comments to cbm.h.
load/save returns oserror code.
Added open/close and read (which is not tested yet).


git-svn-id: svn://svn.cc65.org/cc65/trunk@637 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-20 21:06:04 +00:00
cuz
83f8ce6f39 Describe new --check-stack option and related #pragma. Added missing
descriptions for the options to set the segment names from the command
line.


git-svn-id: svn://svn.cc65.org/cc65/trunk@636 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-20 10:24:54 +00:00
cuz
9bf849151d Describe changed .incbin command
git-svn-id: svn://svn.cc65.org/cc65/trunk@635 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-20 10:24:05 +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
01ffedd363 Removed the old stack checking routine
git-svn-id: svn://svn.cc65.org/cc65/trunk@630 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-19 23:00:45 +00:00
cuz
4c8f35ea97 Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@629 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-19 23:00:19 +00:00
cuz
dce87b81db Ignore intermediate files
git-svn-id: svn://svn.cc65.org/cc65/trunk@628 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-19 22:59:38 +00:00
cuz
1df22c6452 Added a stack checking routine
git-svn-id: svn://svn.cc65.org/cc65/trunk@627 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-19 22:26:47 +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
mrintsch
16fded6d0c Loading and saving memory areas on cbm platforms
git-svn-id: svn://svn.cc65.org/cc65/trunk@625 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-13 22:48:19 +00:00
cuz
7c4bcbd569 scanf modules (currently not working)
git-svn-id: svn://svn.cc65.org/cc65/trunk@624 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-13 07:59:17 +00:00
cuz
1411097746 Remove bash pecularities.
git-svn-id: svn://svn.cc65.org/cc65/trunk@623 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-13 07:56:56 +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
e32d5a4a4b Use the linker define stacksize instead of a variable.
git-svn-id: svn://svn.cc65.org/cc65/trunk@621 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-03-10 14:19:21 +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