1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-23 04:30:10 +00:00
Commit Graph

619 Commits

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