Commit Graph

  • ecaaf8b3ec fix typo (detected by Stefan Haubenthal) cpg 2004-07-23 20:04:58 +00:00
  • 1fb5967496 Fixed inline assembler problems with instructions where implicit means actually accumulator addressing. These went through and caused the optimizer to behave strangely. cuz 2004-07-18 09:34:52 +00:00
  • 9b2834ef7e Improve handling of files with foreign newline sequences. cuz 2004-07-18 08:46:12 +00:00
  • 104f041111 Add dummy return value to avoid a wcc warning cuz 2004-07-17 22:16:02 +00:00
  • feec244272 Remove exprnode.obj cuz 2004-07-17 22:15:43 +00:00
  • 9c0bf14454 Fixed problems with unnamed labels cuz 2004-07-17 22:14:30 +00:00
  • 8eb898d0d1 Adjust result to user visible size cuz 2004-07-17 12:18:51 +00:00
  • 855a2744ea New function heapblocksize() cuz 2004-07-17 12:12:54 +00:00
  • 16f2918902 New function heapblocksize() cuz 2004-07-17 12:05:36 +00:00
  • 764955a915 Make a few params const cuz 2004-07-11 14:06:49 +00:00
  • 0ba074995c Check for invalid function names before trying to compare the name against the names of known standard functions. cuz 2004-07-11 13:47:57 +00:00
  • 725afdee94 Added SB_Compare cuz 2004-07-11 11:13:10 +00:00
  • 38fe19a1a3 get_ostype() was split into get_ostype() and get_tv() a long time ago... cpg 2004-07-09 19:56:55 +00:00
  • 449e602e12 zap also deletes *.ser and *.mou files cpg 2004-07-09 19:46:30 +00:00
  • 413a58a418 rename some Atari specific function names cpg 2004-07-09 19:33:28 +00:00
  • 6ac5c407cf keep the old names (w/o "_") of get_ostype() and get_tv() for cross platform compatibility cpg 2004-07-09 19:27:12 +00:00
  • bb9d07430f revert last change cpg 2004-07-09 19:23:13 +00:00
  • 1182d4cbd9 A main function not returning an int is not allowed in standard C cuz 2004-07-06 14:25:48 +00:00
  • 2c3d5773f3 Fixed a bug cuz 2004-07-06 14:25:03 +00:00
  • 9df7321d90 Cleanup in ShiftExpr. Changed GetCodePos to also remember the stack pointer at the given location, this removes the necessity to manipulate the stack when removing code. Since CodeMark is now a struct, the API for most asmcode functions has changed. cuz 2004-07-06 11:30:08 +00:00
  • a4c4e995a3 Added lasr.o cuz 2004-07-05 22:38:21 +00:00
  • c122f18605 New code for the shift functions cuz 2004-07-05 22:24:06 +00:00
  • 07419b62f8 Changed shift functions, added info about shift runtime functions cuz 2004-06-30 19:18:56 +00:00
  • 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