1
0
mirror of https://github.com/cc65/cc65.git synced 2024-09-08 16:54:52 +00:00
Commit Graph

461 Commits

Author SHA1 Message Date
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
cuz
84f85293f1 Fixed more E_MCONST issues
git-svn-id: svn://svn.cc65.org/cc65/trunk@758 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-24 18:26:20 +00:00
cuz
b0324b6041 Bugfix
git-svn-id: svn://svn.cc65.org/cc65/trunk@757 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-24 09:16:11 +00:00
cuz
eab6086161 Cosmetic changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@754 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-24 08:26:57 +00:00
cuz
1d458e9f33 Small fixes for Watcom-C
git-svn-id: svn://svn.cc65.org/cc65/trunk@752 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-24 08:04:42 +00:00
cuz
d96baa7c42 Use a collections for the line info and sort them by file/line.
git-svn-id: svn://svn.cc65.org/cc65/trunk@751 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 22:02:19 +00:00
cuz
f3f42c43e5 Use fstat instead of stat and simplify the code
git-svn-id: svn://svn.cc65.org/cc65/trunk@750 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 21:44:14 +00:00
cuz
275da22a66 Use a separate structure for file infos instead of just the name.
git-svn-id: svn://svn.cc65.org/cc65/trunk@749 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 21:32:57 +00:00
cuz
bfbedfa54b Added line infos
git-svn-id: svn://svn.cc65.org/cc65/trunk@748 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 19:03:40 +00:00
cuz
ea2cf602b0 Working on source line information
git-svn-id: svn://svn.cc65.org/cc65/trunk@747 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 08:51:48 +00:00
cuz
d390c51e57 Cosmetic change
git-svn-id: svn://svn.cc65.org/cc65/trunk@746 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 07:10:16 +00:00
cuz
f0f7af6b4a Added new lineinfo module
git-svn-id: svn://svn.cc65.org/cc65/trunk@745 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 07:04:09 +00:00
cuz
bc8f4f3a1e Added .dbg statement generation for the assembler
git-svn-id: svn://svn.cc65.org/cc65/trunk@744 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-22 20:03:26 +00:00
cuz
afbf6d5fac Bumped the version
git-svn-id: svn://svn.cc65.org/cc65/trunk@743 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-22 19:59:37 +00:00
cuz
3a272d93af More polishing to get the line info right
git-svn-id: svn://svn.cc65.org/cc65/trunk@742 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-22 16:54:47 +00:00
cuz
12ec031f9a Polishing and minor corrections
git-svn-id: svn://svn.cc65.org/cc65/trunk@741 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-22 13:58:56 +00:00
cuz
0e80187cec Added the lineinfo module. Changed the complete code generation to use the
supplied data structures. Re-added the -T option which is much more exact
now because of the better line info stuff.
Cleanups in the scanner (remove old #defines).


git-svn-id: svn://svn.cc65.org/cc65/trunk@740 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-22 09:32:24 +00:00
cuz
caf73cf15f Fix load of longs and improve zero page info
git-svn-id: svn://svn.cc65.org/cc65/trunk@739 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-22 07:11:22 +00:00
cuz
a687912ea3 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@738 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-21 20:05:52 +00:00
cuz
c1b6680a92 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@737 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-21 06:43:46 +00:00
cuz
4c19a5b699 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@735 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-20 20:42:00 +00:00
cuz
3c04d5777f Fixed a problem with the Chg/Use flags
git-svn-id: svn://svn.cc65.org/cc65/trunk@734 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-20 18:51:12 +00:00
cuz
a9702f8a52 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@733 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-20 09:38:20 +00:00
cuz
df6d71d91e Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@732 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-19 21:20:08 +00:00
cuz
68c0d38dfa Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@731 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-18 20:32:18 +00:00
cuz
4e645d3ab8 Added DelCodeEntries
git-svn-id: svn://svn.cc65.org/cc65/trunk@730 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-17 21:42:41 +00:00
cuz
09eed789dd Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@729 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-16 19:01:19 +00:00
cuz
1d3ea5cde0 Use :? operator to allow use in expressions
git-svn-id: svn://svn.cc65.org/cc65/trunk@728 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-16 13:05:06 +00:00
cuz
46a306e400 Renamed cfeature.h to inline.h
git-svn-id: svn://svn.cc65.org/cc65/trunk@727 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-16 09:27:35 +00:00
cuz
87e9f7379b Use inline for better performance
git-svn-id: svn://svn.cc65.org/cc65/trunk@726 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-16 09:24:42 +00:00
cuz
f78237a6a6 Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@725 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-15 22:35:38 +00:00
cuz
21d41040c9 Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@724 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-15 19:42:17 +00:00
cuz
c9cb564b9b Moved some of the currently existing into a separate module.
git-svn-id: svn://svn.cc65.org/cc65/trunk@723 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-14 17:35:53 +00:00
cuz
a1da98103a Added backend optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@722 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-09 21:56:03 +00:00
cuz
3ef00e7d2a The .defined function (and .ifdef/.ifndef) flagged an imported symbol as
"defined". I'm not sure whichever is correct, but I changed it now and
will introduce an additional function .isimport if necessary.


git-svn-id: svn://svn.cc65.org/cc65/trunk@721 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-08 17:56:39 +00:00
cuz
a961f00997 Several bug fixes
git-svn-id: svn://svn.cc65.org/cc65/trunk@720 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-07 22:07:59 +00:00
cuz
989aacec2c Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@719 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-06 20:57:58 +00:00
cuz
e6a5e57b47 Working on the backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@718 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-05 21:42:58 +00:00
cuz
cc9826721b Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@717 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-05 16:12:47 +00:00
cuz
3ff4baeafb Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@716 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-05 14:30:29 +00:00
cuz
e6484f85c7 Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@715 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-05 13:51:42 +00:00
cuz
e8174aaa25 Added CollPop
git-svn-id: svn://svn.cc65.org/cc65/trunk@714 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-05 12:34:22 +00:00
cuz
0218f8c632 Working on the new backend. Moved the files from the b6502 into the main
compiler dir because the backend is not really a submodule, so this did
not reflect the real relations of the backend to the rest of the compiler.


git-svn-id: svn://svn.cc65.org/cc65/trunk@713 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-05 11:46:02 +00:00
cuz
8800b0c1c8 Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@712 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-05 11:31:05 +00:00
cuz
1fbf554c63 Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@710 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-04 16:41:23 +00:00
cuz
c71a80b0af Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@709 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-03 22:06:59 +00:00
cuz
42695dd3c3 Added CollIndex and CollDeleteItem
git-svn-id: svn://svn.cc65.org/cc65/trunk@708 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-03 20:45:26 +00:00
cuz
8a3bacd7f4 Working on the new backend
git-svn-id: svn://svn.cc65.org/cc65/trunk@707 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-03 20:16:41 +00:00