Commit Graph

  • 9d8d2a3229 Fixed a bug cuz 2004-06-30 18:11:11 +00:00
  • 76e31df5f8 Fixed a bug cuz 2004-06-29 20:48:35 +00:00
  • e354d269f6 Remove shifts from kcalc cuz 2004-06-29 20:44:50 +00:00
  • 809d1408ce Move shift expression evaluation into a separate module. More checks and improvements for shift expressions. cuz 2004-06-29 20:44:01 +00:00
  • 31f85bc23e Renaming and cleanup cuz 2004-06-29 20:37:18 +00:00
  • e8afc897cf Some renaming cuz 2004-06-29 20:35:39 +00:00
  • daf8e0d1e6 Added license information preproc.h cuz 2004-06-29 20:26:27 +00:00
  • b2b7006939 Fixed a problem cuz 2004-06-21 22:30:07 +00:00
  • 13a2927e17 The -A and --ansi switches are gone, together with the __STRICT_ANSI__ predefined macro. Instead there is now a command line option --standard that allows to set c89, c99 or cc65 as language standard. The compiler defines a macro __CC65_STD__ that is one of __CC65_STD_C89__, __CC65_STD_C99__ or __CC65_STD_CC65__ depending on the command line option. Default is cc65 (all extensions) as before. cuz 2004-06-21 22:22:11 +00:00
  • d01687fd82 Removed the undocumented, obsolete and unused OptDisable flagset cuz 2004-06-15 21:24:47 +00:00
  • 255392eb15 Document the codesize, optimize and warn pragmas cuz 2004-06-15 21:20:34 +00:00
  • ca2b070935 Make the -W flag stackable. New pragmas codesize, optimize and warn. cuz 2004-06-15 21:05:40 +00:00
  • d8279302a9 Make the -O and --codesize options stackable. Copy the current optimization settings into a code segment on creation. cuz 2004-06-15 20:29:49 +00:00
  • 9cb7015055 Inline assembly can now reference C labels with the %g format specifier cuz 2004-06-15 20:08:01 +00:00
  • a3e6fbd21f Some cleanup cuz 2004-06-15 20:05:54 +00:00
  • ddf012b94d Changed an error message cuz 2004-06-15 09:29:31 +00:00
  • aa0c3bbf81 New function tgi_geterrormsg cuz 2004-06-15 09:08:39 +00:00
  • 191801d7a1 Use enum, declare count of errors cuz 2004-06-15 09:08:31 +00:00
  • 9b7fcec4b4 Fixed an error cuz 2004-06-15 09:06:36 +00:00
  • 1297374ea7 New module tgi_geterrormsg.s cuz 2004-06-15 09:02:05 +00:00
  • ff3f7da425 Patches from Greg King cuz 2004-06-13 18:28:09 +00:00
  • a3039d57fc Fixed problems on 64 bit platforms and some other sloopyness when working with the element count of an array. cuz 2004-06-10 13:03:28 +00:00
  • 300919d61f Better error messages cuz 2004-06-10 11:02:05 +00:00
  • cb7c50a8ce Fixed a warning cuz 2004-06-10 10:37:55 +00:00
  • d184d938fd Fixed a bug cuz 2004-06-10 08:48:02 +00:00
  • aeadc056c7 one byte space optimization cpg 2004-06-09 19:53:13 +00:00
  • 573f1818df Check the return code of the submakes (Christian Groessler) cuz 2004-06-09 19:30:33 +00:00
  • 975323ece2 Renamed ExprLoad to LoadExpr. Moved LoadExpr + support functions into a separate module. Removed obsolete files. Some cleanup and makefile adjustments. cuz 2004-06-09 19:25:28 +00:00
  • 8752f0b2c1 Removed ExprLoad to LoadExpr. Moved LoadExpr + support functions into a separate module. Removed obsolete files. Some cleanup and makefile adjustments. cuz 2004-06-09 14:12:57 +00:00
  • e3f63219a1 Fixed a typo and changed example to use new asm syntax cuz 2004-06-07 21:40:51 +00:00
  • 3ac1a08baf Cleaned up the code used for handling jump labels and the label name. Fixed a problem that caused the optimizer not to detect that flags set by a load are used, if the use is "hidden" behind an unconditional branch. This caused the optimizer to remove the load. cuz 2004-06-07 21:16:49 +00:00
  • 8425d988fe Removed debug code cuz 2004-06-06 18:36:15 +00:00
  • 71ed8810c3 Minor change cuz 2004-06-06 18:36:08 +00:00
  • f500a641c5 Added support for floating point constants in the scanner and Primary() cuz 2004-06-06 15:59:44 +00:00
  • 9fc71c5e93 Renamed ExprDesc.Val to ExprDesc.IVal. Added an FVal field for a floating point constant. cuz 2004-06-06 14:48:59 +00:00
  • eb388aa237 The loop code will access the stackpointer directly cuz 2004-06-06 10:52:32 +00:00
  • 651c6e5cbf Add predefined type strings for float and double cuz 2004-06-06 10:49:59 +00:00
  • 0f80f0e297 Corrected minor spelling errors cuz 2004-06-06 10:35:12 +00:00
  • 4b98935889 Corrected minor spelling errors cuz 2004-06-06 10:33:00 +00:00
  • c76e14f9f5 Improved code for or and xor cuz 2004-06-05 22:10:04 +00:00
  • 5586527fcc Move the test flags into the Flags bitset of struct ExprDesc cuz 2004-06-05 20:29:47 +00:00
  • aa39d98cbc When changing the reference to a jump label, do also replace the string argument for the instruction with the name of the new jump label. This allows CodeEntriesAreEqual to work in all cases, and therefore optimizations based on this function will also work more effectively (or at all). cuz 2004-06-05 16:21:07 +00:00
  • e4473c0a96 Repeat the check in OptJumpTarget whenever a match is found to find rows of matches cuz 2004-06-05 16:19:23 +00:00
  • 522f1d86d4 Generate LDY instead of INY whenever possible because this allows better detection of known patterns and is replaced by INY in a later step anyway. cuz 2004-06-05 16:18:30 +00:00
  • 08eb9b7b0e Check for and warn on statements that don't have an effect cuz 2004-06-05 12:56:51 +00:00
  • 3a0edbff75 Fixed a bug cuz 2004-06-05 11:50:04 +00:00
  • 104ae3a54f Move the compiler stack pointer into its own module. Improved the inlining of standard C functions. Added more standard functions to inline. cuz 2004-06-05 11:35:53 +00:00
  • a0c1b9fe38 Fixed a bug cuz 2004-06-05 11:33:44 +00:00
  • 1ec972d0c4 Fixed a typo cuz 2004-06-04 21:30:37 +00:00
  • f0b8ea1e14 Fixed a problem cuz 2004-06-04 21:25:54 +00:00
  • 64fdaa4629 Remove dependency on rom.o cuz 2004-06-04 17:54:15 +00:00
  • 3a144965fa Added T_SIZE_T as an alias for T_UINT cuz 2004-06-04 17:52:19 +00:00
  • 28a60dd8d5 Added strcpy cuz 2004-06-04 17:51:49 +00:00
  • da2049637a Fixed a typo cuz 2004-06-04 17:00:48 +00:00
  • 0b6da0f1e4 Fixed a comment cuz 2004-06-04 14:47:21 +00:00
  • 87d0d88986 Check the InlineStdFuncs flag later cuz 2004-06-04 14:37:50 +00:00
  • 361316246b Fixed a bug cuz 2004-06-04 14:36:54 +00:00
  • b1d7f78bce More debugging output cuz 2004-06-04 14:36:36 +00:00
  • eb9d9ee0c5 Fixed a bug cuz 2004-06-04 14:06:36 +00:00
  • 0eb23b9b51 Added new atmos tgi driver cuz 2004-06-03 21:30:16 +00:00
  • 9e57bb5dd5 Copy the new atmos tgi driver cuz 2004-06-03 21:28:56 +00:00
  • 6f14319eb6 TGI driver by Stefan Haubenthal cuz 2004-06-03 21:27:56 +00:00
  • f4995609ef Define symbols depending on the target system similar to the C compiler. cuz 2004-06-03 21:12:29 +00:00
  • ebb463fd41 finish last change cpg 2004-06-03 19:46:16 +00:00
  • 92621abb86 rename backwards compatibility define cpg 2004-06-03 19:45:50 +00:00
  • f6d59f6e17 prepend a "_" to clib runtime functions cpg 2004-06-03 19:43:11 +00:00
  • 2de3291ddb Fixed symbol usage cuz 2004-06-03 17:42:56 +00:00
  • 9a1bab361f Improvements by Oliver Schmidt cuz 2004-06-03 15:05:41 +00:00
  • 8c4b3599a2 Fixed a typo cuz 2004-06-03 12:09:24 +00:00
  • 2fa9b6e5ac Improved code generation cuz 2004-06-03 12:08:49 +00:00
  • 01104d26ea Fixed generation of non optimal code in StructRef() cuz 2004-06-03 11:10:30 +00:00
  • 763a359114 Comment and indentation changes cuz 2004-06-03 11:08:50 +00:00
  • 6e34e386cb Rewrote code generation for the strlen standard function. Added code for other standard functions in several places. cuz 2004-06-02 21:33:35 +00:00
  • 2bb2ceec33 Fixed a bug cuz 2004-06-02 21:20:18 +00:00
  • d8f7384091 Fixed a bug cuz 2004-06-01 20:30:44 +00:00
  • 61ca515494 small optimization; fix line buffered read of length 0 cpg 2004-06-01 20:25:44 +00:00
  • 5abf10e049 New options cuz 2004-06-01 11:22:35 +00:00
  • efdd68e735 Fix external function names cuz 2004-06-01 08:48:20 +00:00
  • 111c69a826 String literals can be handled as static data in most cases cuz 2004-05-31 19:51:13 +00:00
  • 5fc98bd69a Comment fixes by Stefan Haubenthal cuz 2004-05-31 19:35:30 +00:00
  • df4289cd34 Small addition by Stefan Haubenthal cuz 2004-05-31 19:31:53 +00:00
  • e625fcea95 Small fix by Stefan Haubenthal cuz 2004-05-31 19:30:27 +00:00
  • 01a424b70c Added oserrlist.s from Stefan Haubenthal cuz 2004-05-31 19:27:54 +00:00
  • f5403e7d57 Load programs at 13:5900 instead of 00 cuz 2004-05-31 19:25:38 +00:00
  • 8d8162eb23 Rewrite/cleanup of the complete expression flags handling. cuz 2004-05-31 15:27:33 +00:00
  • c39022729d Some improvements in font generation cuz 2004-05-31 15:17:40 +00:00
  • 16634884af fix comment cpg 2004-05-28 22:05:01 +00:00
  • e13ad6372c LINEBUF cpg 2004-05-28 22:04:33 +00:00
  • 0b658d7319 implement line buffered reads, optional with LINEBUF define cpg 2004-05-28 22:01:14 +00:00
  • ef6a034153 Removed unused modules cuz 2004-05-27 14:20:16 +00:00
  • fedb566ff1 Some renaming and restructuring cuz 2004-05-26 16:15:28 +00:00
  • 4f024ca81b Added a missing include cuz 2004-05-26 13:55:48 +00:00
  • 72923eb316 Generate assembler names for symbols cuz 2004-05-26 13:44:53 +00:00
  • 2cdef2d58f Add standard names for library functions cuz 2004-05-26 13:42:19 +00:00
  • 878e4f1352 Changed the expression parser to return the lvalue flag as part of the ExprDesc structure, not as separate value. WARNING: The current code does compile but does not work correctly, because the lvalue flag is part of ExprDesc.Flags and not masked out in several tests throughout the code. cuz 2004-05-25 20:59:38 +00:00
  • c885a814c7 ungetc is now available cuz 2004-05-14 20:58:37 +00:00
  • 1d7884fa94 Add support for pushed back characters from ungetc() cuz 2004-05-14 20:54:46 +00:00
  • 556b861640 Better error messages in case of a range error cuz 2004-05-14 15:05:51 +00:00
  • b61b5f3ec5 Fixed a bug cuz 2004-05-14 14:33:43 +00:00
  • a2ac5ec13c Export __seterrno cuz 2004-05-14 09:44:42 +00:00