1
0
mirror of https://github.com/cc65/cc65.git synced 2024-11-18 00:07:21 +00:00
Commit Graph

904 Commits

Author SHA1 Message Date
cuz
2be826ded6 Remove debugging printf's
git-svn-id: svn://svn.cc65.org/cc65/trunk@2009 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-07 11:51:28 +00:00
cuz
b06d37d809 Added new .FORCEIMPORT pseudo op
git-svn-id: svn://svn.cc65.org/cc65/trunk@2007 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-07 11:33:14 +00:00
cuz
e925aa27ee Improve error recovery
git-svn-id: svn://svn.cc65.org/cc65/trunk@2002 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-06 12:12:25 +00:00
cuz
0ae6ab57ae Last fix was wrong
git-svn-id: svn://svn.cc65.org/cc65/trunk@1999 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-04 11:02:11 +00:00
cuz
c008e555b2 Fixed a bug in sign extension of constant values
git-svn-id: svn://svn.cc65.org/cc65/trunk@1998 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-04 10:46:27 +00:00
cuz
0fd653c416 .incbin did not honor the include search path
git-svn-id: svn://svn.cc65.org/cc65/trunk@1996 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-26 23:17:42 +00:00
cuz
f80a5148bd Fixed problem with array forward decl
git-svn-id: svn://svn.cc65.org/cc65/trunk@1994 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-19 22:58:13 +00:00
cuz
a9899eba15 Added a new extended (and machine specific) zeropage segment named EXTZP.
Renamed GEOSZP to EXTZP.
Added a --dump-config command that dumps a builtin linker config.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1987 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-16 14:32:13 +00:00
cuz
c6cf5d7fd9 Minor cleanup
git-svn-id: svn://svn.cc65.org/cc65/trunk@1979 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-12 23:15:34 +00:00
cuz
4af023a180 Add more co65 options
git-svn-id: svn://svn.cc65.org/cc65/trunk@1975 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-12 14:40:00 +00:00
cuz
686f267324 Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@1972 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-11 22:40:56 +00:00
cuz
631aeb2a8d Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@1971 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-11 22:33:12 +00:00
cuz
606e81df3d Fix memory area start symbol
git-svn-id: svn://svn.cc65.org/cc65/trunk@1970 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-11 12:51:37 +00:00
cuz
b7c44015f7 Add co65 utility
git-svn-id: svn://svn.cc65.org/cc65/trunk@1963 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-10 23:14:23 +00:00
cuz
0346cf692e Working
git-svn-id: svn://svn.cc65.org/cc65/trunk@1949 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 23:00:40 +00:00
cuz
061caaca6d New function StrCaseCmp
git-svn-id: svn://svn.cc65.org/cc65/trunk@1948 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 22:23:29 +00:00
cuz
92b18822fa Bumped the version number
git-svn-id: svn://svn.cc65.org/cc65/trunk@1947 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 21:15:43 +00:00
cuz
b0c86375b8 Fixed generation of o65 timestamp
git-svn-id: svn://svn.cc65.org/cc65/trunk@1946 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 21:13:13 +00:00
cuz
5dbc41b0bb Output statistics if -v given
git-svn-id: svn://svn.cc65.org/cc65/trunk@1944 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 16:49:48 +00:00
cuz
79a2185c42 Added capability to conver o65 object files by using the new co65 utility
git-svn-id: svn://svn.cc65.org/cc65/trunk@1943 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 16:48:46 +00:00
cuz
bbb70a2d47 First import
git-svn-id: svn://svn.cc65.org/cc65/trunk@1942 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 16:32:55 +00:00
cuz
b28cf4cfd8 ValidSegName now defined in segnames.h
git-svn-id: svn://svn.cc65.org/cc65/trunk@1941 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 09:54:47 +00:00
cuz
07cb34ba61 Move ValidSegName into segnames.c
git-svn-id: svn://svn.cc65.org/cc65/trunk@1940 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 09:53:44 +00:00
cuz
b9e04d5242 Move default segment names into segnames.h
git-svn-id: svn://svn.cc65.org/cc65/trunk@1939 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 09:45:15 +00:00
cuz
1c5ba2bea5 Use default segment name definitions
git-svn-id: svn://svn.cc65.org/cc65/trunk@1938 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 09:40:01 +00:00
cuz
800451f1d8 Correct zeropage #def
git-svn-id: svn://svn.cc65.org/cc65/trunk@1937 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 09:39:36 +00:00
cuz
0c77a8cc34 Define default segment names
git-svn-id: svn://svn.cc65.org/cc65/trunk@1936 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-08 09:37:42 +00:00
izydorst
a5eefc2734 fixed VLIR linker (case when chain length was equal to n*254)
git-svn-id: svn://svn.cc65.org/cc65/trunk@1931 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-06 02:00:33 +00:00
izydorst
443efb5f3a fixed value for VLIR record table (points TO the last byte in the sector, not the next one)
git-svn-id: svn://svn.cc65.org/cc65/trunk@1930 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-06 00:23:37 +00:00
cuz
f817b05fa9 Allow initialization of flexible array struct members
git-svn-id: svn://svn.cc65.org/cc65/trunk@1928 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-05 22:02:48 +00:00
cuz
c123666d24 Added flexible array members for structs
git-svn-id: svn://svn.cc65.org/cc65/trunk@1925 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-03 22:14:20 +00:00
cuz
c5868d30c0 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1922 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-02 21:05:39 +00:00
cuz
47ce743518 Fixed a bug in JMP (IND)
git-svn-id: svn://svn.cc65.org/cc65/trunk@1918 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-02 11:19:51 +00:00
cuz
88cb1a9fd8 Error message for negative array sizes.
Restrucured struct decl parsing code.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1914 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-01 12:39:12 +00:00
cuz
7a1a7745eb Fixed the address
git-svn-id: svn://svn.cc65.org/cc65/trunk@1913 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-01 12:38:43 +00:00
cuz
703447dd26 Locals with a qualifier and implicit int type where not parsed correctly
git-svn-id: svn://svn.cc65.org/cc65/trunk@1910 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-28 16:28:41 +00:00
cuz
6e6560abd9 Fixed the last fix. Sigh:-(
git-svn-id: svn://svn.cc65.org/cc65/trunk@1909 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-20 21:02:57 +00:00
cuz
4ca598de3a Fixed the last fix. Sigh:-(
git-svn-id: svn://svn.cc65.org/cc65/trunk@1908 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-20 20:53:42 +00:00
cuz
638f54f3e4 The check for illegal storage classes on globals was wrong
git-svn-id: svn://svn.cc65.org/cc65/trunk@1907 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-20 06:02:33 +00:00
cuz
66f6093ae2 Fixed last fix
git-svn-id: svn://svn.cc65.org/cc65/trunk@1905 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-20 05:56:48 +00:00
cuz
b6c4ff2e01 Fixed problems that occured on input files with missing LF at end of file.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1903 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-19 12:04:33 +00:00
cuz
0293cc4bc0 Fixed a problem with line continuations and -T
git-svn-id: svn://svn.cc65.org/cc65/trunk@1893 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-07 21:45:20 +00:00
cuz
efc905a39e Type of LOWCODE was wrong. Cleanup.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1889 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-05 21:08:58 +00:00
cuz
4d892a7993 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1888 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-05 21:04:40 +00:00
cuz
d4b73bc0ef Fixed several uses of memory after free()
git-svn-id: svn://svn.cc65.org/cc65/trunk@1879 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-05 19:03:48 +00:00
cuz
abcc981253 Move the Debug flag into a new module "debugflag" in the common directory.
Remove the const qualifier from the argument of xfree().


git-svn-id: svn://svn.cc65.org/cc65/trunk@1877 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-01-04 16:59:51 +00:00
izydorst
0264d31e7c new GEOSZP segment for library use, added GEOS tgi driver, fixes in GEOS conio
git-svn-id: svn://svn.cc65.org/cc65/trunk@1864 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-31 15:35:55 +00:00
cuz
ed2bb59bcb Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1862 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-29 21:23:28 +00:00
cuz
9222de75da Check for implicit int return in all cases
git-svn-id: svn://svn.cc65.org/cc65/trunk@1851 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-26 16:14:57 +00:00
cuz
ed1e1db09b Fixed a bug introduced by EXPR_SEGMENT -> EXPR_SECTION change
git-svn-id: svn://svn.cc65.org/cc65/trunk@1838 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-24 14:39:09 +00:00
izydorst
dc207514dd support for .zeropage segment in GEOS
git-svn-id: svn://svn.cc65.org/cc65/trunk@1834 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-23 22:14:14 +00:00
cuz
5f666a19b8 Replaced the solution for the array conversion problem by a better one.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1784 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-17 12:12:44 +00:00
cuz
421c8771dc Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1783 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-17 11:39:02 +00:00
izydorst
803c1c0184 using functions from common/ in grc, correct order of menus in test.grc
git-svn-id: svn://svn.cc65.org/cc65/trunk@1779 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-17 09:10:57 +00:00
cuz
0774fe273a Did some renaming and cleanup: Renamed EXPR_SEGMENT to EXPR_SECTION, since
this is what it really is. Added a real EXPR_SECTION which is now used in
the linker to represent the run address of a segment, provided that it is
requested to be defined. Changed some named in use of EXPR_MEMAREA. Added
handling of the new EXPR_SEGMENT to both, the binary and o65 output format.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1769 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-14 22:57:00 +00:00
cuz
cd5f487b8c Bumped the version number
git-svn-id: svn://svn.cc65.org/cc65/trunk@1765 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-13 20:01:18 +00:00
cuz
76b41b3f9a Fixed a typo
git-svn-id: svn://svn.cc65.org/cc65/trunk@1763 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-13 11:26:21 +00:00
cuz
f79ac9168e New Lunix config file from Greg King
git-svn-id: svn://svn.cc65.org/cc65/trunk@1761 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-13 10:47:03 +00:00
cuz
da6462ebd3 Fixed formatting of the help text
git-svn-id: svn://svn.cc65.org/cc65/trunk@1756 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-13 00:29:40 +00:00
cuz
a5489728ae Converted all Watcom makefiles to use GNU make
git-svn-id: svn://svn.cc65.org/cc65/trunk@1745 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-12 23:19:53 +00:00
cuz
1ec291fa4e Fixed a macro problem
git-svn-id: svn://svn.cc65.org/cc65/trunk@1744 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-12 23:19:33 +00:00
cuz
7f9bb30731 Some Watcom related fixes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1742 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-12 21:53:26 +00:00
cuz
4e2110a7a9 Fixed the inlined strlen function
git-svn-id: svn://svn.cc65.org/cc65/trunk@1738 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-12 17:40:58 +00:00
cuz
e84a1c068b Print a warning if a bss type segment has both, run and load areas assigned.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1737 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-11 18:29:58 +00:00
cuz
11306120ea Fixed a bug that occurred when using // comments at the end of an #if
line.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1735 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-11 15:28:09 +00:00
cuz
2f8c281b89 Fixed hangup for loops in jump cascade
git-svn-id: svn://svn.cc65.org/cc65/trunk@1734 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-11 11:29:17 +00:00
cuz
e4d25caa56 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1717 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-05 12:59:07 +00:00
cuz
cca009fe78 Added stack usage info
git-svn-id: svn://svn.cc65.org/cc65/trunk@1716 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-05 12:59:00 +00:00
cuz
867b2ea2ed Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1714 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-04 11:03:15 +00:00
cuz
df5132d31c New feature: startaddress
git-svn-id: svn://svn.cc65.org/cc65/trunk@1713 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-03 22:32:38 +00:00
cuz
40c8cbdca5 Added a harmless function
git-svn-id: svn://svn.cc65.org/cc65/trunk@1686 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-01 23:32:13 +00:00
cuz
086d80e8c4 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1684 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-01 23:32:01 +00:00
cuz
1167d99a9b New .PUSHSEG and .POPSEG commands
git-svn-id: svn://svn.cc65.org/cc65/trunk@1671 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-28 17:42:16 +00:00
cuz
cf2162f5da Move the ValidSegName function into common (segdefs)
git-svn-id: svn://svn.cc65.org/cc65/trunk@1669 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-28 17:34:42 +00:00
cuz
34f42ce630 Added SegDef struct and a few functions to the segdefs module
git-svn-id: svn://svn.cc65.org/cc65/trunk@1668 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-28 17:34:16 +00:00
cuz
6b46bf3b10 Cosmetic changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1667 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-28 15:25:11 +00:00
cuz
0348739164 New --register-space option
git-svn-id: svn://svn.cc65.org/cc65/trunk@1653 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-26 18:27:09 +00:00
cuz
bf5ae8b663 Add compiler options for register variables
git-svn-id: svn://svn.cc65.org/cc65/trunk@1652 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-26 18:23:44 +00:00
cuz
8fc78c2c8d Added the .TIME pseudo function
git-svn-id: svn://svn.cc65.org/cc65/trunk@1651 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-26 13:44:35 +00:00
cuz
ef886278a8 Make the spawn module an include file as suggested by Greg King
git-svn-id: svn://svn.cc65.org/cc65/trunk@1649 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-25 21:12:00 +00:00
cuz
345d2ddf54 Adjusted the copyright string
git-svn-id: svn://svn.cc65.org/cc65/trunk@1648 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-25 17:33:58 +00:00
cuz
85e36f2ea5 Add capability to dump just the segment sizes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1647 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-25 17:32:16 +00:00
cuz
ea06b7286e Additional pointer load optimization
git-svn-id: svn://svn.cc65.org/cc65/trunk@1644 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-25 17:06:19 +00:00
cuz
9328da18fb Fixed symtab code
git-svn-id: svn://svn.cc65.org/cc65/trunk@1642 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-25 15:13:03 +00:00
cuz
70755921a9 Re-added register variables.
Changed/added several optimizer steps to detect register variables correctly
or to handle them in a special way.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1636 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-25 15:05:15 +00:00
cuz
d8338efc53 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1632 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-25 14:24:48 +00:00
cuz
da44e7ae4b Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1628 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-24 23:41:51 +00:00
cuz
ede471904c Reenable register variables
git-svn-id: svn://svn.cc65.org/cc65/trunk@1625 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-24 23:31:54 +00:00
cuz
b6898c3f1e Check register before static
git-svn-id: svn://svn.cc65.org/cc65/trunk@1624 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-24 21:07:39 +00:00
cuz
89f00263af Fixed a problem with the test expression in a for loop: It was not evaluated
correctly if it did not contain an explicit comparison operator.
Removed an old hack from the test subroutine that did no longer work.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1619 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-24 18:18:16 +00:00
cuz
b948d96206 More optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@1613 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-23 22:06:26 +00:00
cuz
c61729a15a A few size optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@1606 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-23 16:33:35 +00:00
cuz
ac61d6826c Another optimization step
git-svn-id: svn://svn.cc65.org/cc65/trunk@1603 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-23 12:05:23 +00:00
cuz
d7d86886b6 Add STARTUP and LOWCODE segments
git-svn-id: svn://svn.cc65.org/cc65/trunk@1601 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-23 11:10:50 +00:00
cuz
fe75b5c3f3 Added LOWCODE and STARTUP segments
git-svn-id: svn://svn.cc65.org/cc65/trunk@1600 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 23:50:45 +00:00
cuz
a7d67fb9b5 New upper memory limit
git-svn-id: svn://svn.cc65.org/cc65/trunk@1598 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 23:45:57 +00:00
cuz
cf71d811dc Comment was wrong
git-svn-id: svn://svn.cc65.org/cc65/trunk@1597 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 23:45:37 +00:00
cuz
86fb1f760a New harmless function
git-svn-id: svn://svn.cc65.org/cc65/trunk@1595 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 23:44:36 +00:00
cuz
6eabc2813a Added interrupt handler table
git-svn-id: svn://svn.cc65.org/cc65/trunk@1591 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 22:42:49 +00:00
cuz
527c0575ec Cosmetic changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1590 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 22:42:38 +00:00
izydorst
8c5da1ecc1 added LOWCODE and STARTUP segments
git-svn-id: svn://svn.cc65.org/cc65/trunk@1583 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 18:46:55 +00:00
cuz
2b98a26cac Add STARTUP and LOWCODE segments
git-svn-id: svn://svn.cc65.org/cc65/trunk@1582 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 17:43:47 +00:00
cuz
4dd4e76a88 Added a scope argument to the SymIsDef and SymIsDef functions, so it is
possible to request information for a specific scope.
Add an optional scope argument to the .DEFINED builtin function.
Change the long branch macros to look for symbols in local scope.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1574 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 01:45:00 +00:00
cuz
08b095c604 Reversed the last change because it did not work
git-svn-id: svn://svn.cc65.org/cc65/trunk@1566 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 00:33:29 +00:00
cuz
4f9f06c20a Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1565 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-21 23:28:32 +00:00
cuz
e41c0adbb2 New target c16
git-svn-id: svn://svn.cc65.org/cc65/trunk@1563 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-21 21:22:26 +00:00
cuz
c80596458c Renamed NMI segment to LOWCODE
git-svn-id: svn://svn.cc65.org/cc65/trunk@1562 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-21 21:15:19 +00:00
cuz
f205950f54 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1561 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-21 21:10:10 +00:00
cuz
42463beaee Rewrote code for better readability
git-svn-id: svn://svn.cc65.org/cc65/trunk@1560 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-21 20:46:16 +00:00
cuz
0ba44bb2d4 Small but significant shift optimization
git-svn-id: svn://svn.cc65.org/cc65/trunk@1559 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-21 01:08:14 +00:00
cuz
cfbe5ec5b4 Commiting some old changes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1551 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-20 17:04:29 +00:00
cuz
ead7de2b42 Ignore module.inc
git-svn-id: svn://svn.cc65.org/cc65/trunk@1550 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-20 17:03:14 +00:00
cuz
e688abde1f Moved the zero page locations for the PET machines
git-svn-id: svn://svn.cc65.org/cc65/trunk@1547 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-20 01:34:56 +00:00
cuz
8ef3447248 Fixed an error in struct compare. For one, the behaviour was not standard
compliant, because struct tags were not compare, second, this lead to an
endless loop of recursive calls for a special case of wrong C code.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1523 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-15 13:19:46 +00:00
cuz
ca1386e9d4 Removed unused code
git-svn-id: svn://svn.cc65.org/cc65/trunk@1522 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-14 22:52:29 +00:00
cuz
b1cc64faaa Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1521 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-14 22:52:10 +00:00
cuz
57d6c2f51e New function ReplaceType
git-svn-id: svn://svn.cc65.org/cc65/trunk@1520 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-14 22:51:59 +00:00
cuz
c6abc5d9d4 Make small functions inline
git-svn-id: svn://svn.cc65.org/cc65/trunk@1519 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-14 22:51:39 +00:00
cuz
dadd136ae1 Use constants for datatype sizes
git-svn-id: svn://svn.cc65.org/cc65/trunk@1480 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-02 12:39:10 +00:00
cuz
8810e38bb7 Move the assignment parser into a separate module.
When assigning structures, copy them using the primary register when the
size is 1, 2, or 4.
When assigning structures, allow structures by value when the size is 1,
2, or 4. These structures are expected to be in the primary register. The
only case when this can happen is by return from function, so this change
makes div() work.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1477 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-01 21:27:31 +00:00
cuz
5548b6fd56 Work on better type casts - not yet finished
git-svn-id: svn://svn.cc65.org/cc65/trunk@1476 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-01 15:16:16 +00:00
cuz
571ea849d9 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1475 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-29 17:53:17 +00:00
cuz
914b2a7e37 New store optimization.
New functions RegValIsKnown and RegValIsUnknown should be used instead of
direct compares against zero, so we can change the "unknown" representation
one day.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1466 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-17 21:37:01 +00:00
cuz
4da19658c2 Fixed error "variable has unknown size" for a local array where the size
was not given (introduced by last change).


git-svn-id: svn://svn.cc65.org/cc65/trunk@1465 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-17 21:14:40 +00:00
cuz
49fd7134e5 Fixed a buffer overflow (report from Christian Groessler).
git-svn-id: svn://svn.cc65.org/cc65/trunk@1464 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-14 16:23:26 +00:00
cuz
83fb2c8ab4 Allow initialization of local variables of compound type
git-svn-id: svn://svn.cc65.org/cc65/trunk@1458 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-10 21:15:24 +00:00
cuz
dcdaf8fd49 Restructured DeclareLocals()
git-svn-id: svn://svn.cc65.org/cc65/trunk@1457 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-10 20:24:16 +00:00
cuz
872c2b4453 Made a lot of short functions inline
git-svn-id: svn://svn.cc65.org/cc65/trunk@1456 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-10 20:23:41 +00:00
cuz
2e5fa9575c Add info about more functions
git-svn-id: svn://svn.cc65.org/cc65/trunk@1455 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-09 19:39:45 +00:00
cuz
13642fc6c4 Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1454 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-09 19:39:36 +00:00
cuz
e68b8160ed Added more size optimizations, separate module
git-svn-id: svn://svn.cc65.org/cc65/trunk@1453 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-08 20:56:00 +00:00
cuz
3c31d063f7 New optimizer pass OptShift3.
Renamed CE_IsCall to CE_IsCallTo.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1451 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-06 20:54:01 +00:00
cuz
a0496ca53d Fixed an omission in AdjustStackOffset. Use CS_IsBasicBlock in OptStackOps.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1450 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-06 19:03:12 +00:00
cuz
9a62c92489 Improved implementation of OptPushPop
git-svn-id: svn://svn.cc65.org/cc65/trunk@1449 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-06 19:01:46 +00:00
cuz
1647c6783f New functions CS_ResetMarks, CS_ResetAllMarks and CS_IsBasicBlock.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1448 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-06 19:01:16 +00:00
cuz
6047165325 Fixed problem with earlier change
git-svn-id: svn://svn.cc65.org/cc65/trunk@1445 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-05 22:55:42 +00:00
cuz
e9da20f961 Fix codesize setting
git-svn-id: svn://svn.cc65.org/cc65/trunk@1444 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-05 22:37:36 +00:00
cuz
7ce4196829 New/changed optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@1443 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-05 20:32:31 +00:00
cuz
bc1085997d Minor improvement of optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@1440 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-04 19:27:15 +00:00
cuz
89e8aae7d7 Increase the size of some buffers, so we are at the assembler level able to
handle any identifiers passed from the C level.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1439 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-04 17:54:46 +00:00
cuz
29c217b4b2 Use a #define instead of numeric value
git-svn-id: svn://svn.cc65.org/cc65/trunk@1429 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-03 11:20:45 +00:00
cuz
4389b0c438 Fixed a small bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1426 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-03 09:00:57 +00:00
cuz
f5243e514c Fixed optimizer bug in or/xor
git-svn-id: svn://svn.cc65.org/cc65/trunk@1425 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-02 22:21:42 +00:00
cuz
b4326d1930 Place all declarations that are local to a function into the local function
scope. Apart from some other advantages, this works around a bug where having
an external identifier in global scope and using an "extern" declaration for
exactly the same identifier in a function did not work, because the assembler
refused to export and import one and the same identifier. Since the import
now imports into local scope, both identifiers are distinct for the assembler
and the (valid) C code works.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1424 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-02 13:00:04 +00:00
cuz
980c17daef Allow more flexible numeric flag pragma arguments
git-svn-id: svn://svn.cc65.org/cc65/trunk@1423 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-10-01 08:13:04 +00:00
cuz
65fa99f65e Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1422 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-30 21:58:39 +00:00
cuz
1f20202239 Ignore also cr's on input. This allows to compile sources with DOS/Windows
line separators on unix systems.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1419 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-30 19:32:33 +00:00
cuz
15d2c8fc83 Removed debug code
git-svn-id: svn://svn.cc65.org/cc65/trunk@1418 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-30 19:05:37 +00:00
cuz
d92676ef60 Add SB_GetNumber to scanstrbuf.c.
Rewrite of CharMapPragma in pragma.c
Fixed bug in scanner.c: Invalid octal constants containing the numbers 8
and 9 were accepted by the compiler.
Moved SignExtendChar from scanner.c to datatype.c.


git-svn-id: svn://svn.cc65.org/cc65/trunk@1416 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-30 18:46:08 +00:00
cuz
2df5db1f04 Call StrBuf destructors
git-svn-id: svn://svn.cc65.org/cc65/trunk@1415 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-09-29 21:15:02 +00:00