1
0
mirror of https://github.com/cc65/cc65.git synced 2024-08-01 02:29:08 +00:00
Commit Graph

508 Commits

Author SHA1 Message Date
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