ecaaf8b3ecfix typo (detected by Stefan Haubenthal)
cpg
2004-07-23 20:04:58 +00:00
1fb5967496Fixed 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
9b2834ef7eImprove handling of files with foreign newline sequences.
cuz
2004-07-18 08:46:12 +00:00
104f041111Add dummy return value to avoid a wcc warning
cuz
2004-07-17 22:16:02 +00:00
9c0bf14454Fixed problems with unnamed labels
cuz
2004-07-17 22:14:30 +00:00
8eb898d0d1Adjust result to user visible size
cuz
2004-07-17 12:18:51 +00:00
855a2744eaNew function heapblocksize()
cuz
2004-07-17 12:12:54 +00:00
16f2918902New function heapblocksize()
cuz
2004-07-17 12:05:36 +00:00
764955a915Make a few params const
cuz
2004-07-11 14:06:49 +00:00
0ba074995cCheck 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
38fe19a1a3get_ostype() was split into get_ostype() and get_tv() a long time ago...
cpg
2004-07-09 19:56:55 +00:00
449e602e12zap also deletes *.ser and *.mou files
cpg
2004-07-09 19:46:30 +00:00
413a58a418rename some Atari specific function names
cpg
2004-07-09 19:33:28 +00:00
6ac5c407cfkeep the old names (w/o "_") of get_ostype() and get_tv() for cross platform compatibility
cpg
2004-07-09 19:27:12 +00:00
bb9d07430frevert last change
cpg
2004-07-09 19:23:13 +00:00
1182d4cbd9A main function not returning an int is not allowed in standard C
cuz
2004-07-06 14:25:48 +00:00
2c3d5773f3Fixed a bug
cuz
2004-07-06 14:25:03 +00:00
9df7321d90Cleanup 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
daf8e0d1e6Added license information preproc.h
cuz
2004-06-29 20:26:27 +00:00
b2b7006939Fixed a problem
cuz
2004-06-21 22:30:07 +00:00
13a2927e17The -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
d01687fd82Removed the undocumented, obsolete and unused OptDisable flagset
cuz
2004-06-15 21:24:47 +00:00
255392eb15Document the codesize, optimize and warn pragmas
cuz
2004-06-15 21:20:34 +00:00
ca2b070935Make the -W flag stackable. New pragmas codesize, optimize and warn.
cuz
2004-06-15 21:05:40 +00:00
d8279302a9Make 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
9cb7015055Inline assembly can now reference C labels with the %g format specifier
cuz
2004-06-15 20:08:01 +00:00
cb7c50a8ceFixed a warning
cuz
2004-06-10 10:37:55 +00:00
d184d938fdFixed a bug
cuz
2004-06-10 08:48:02 +00:00
aeadc056c7one byte space optimization
cpg
2004-06-09 19:53:13 +00:00
573f1818dfCheck the return code of the submakes (Christian Groessler)
cuz
2004-06-09 19:30:33 +00:00
975323ece2Renamed 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
8752f0b2c1Removed 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
e3f63219a1Fixed a typo and changed example to use new asm syntax
cuz
2004-06-07 21:40:51 +00:00
3ac1a08bafCleaned 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
f500a641c5Added support for floating point constants in the scanner and Primary()
cuz
2004-06-06 15:59:44 +00:00
9fc71c5e93Renamed ExprDesc.Val to ExprDesc.IVal. Added an FVal field for a floating point constant.
cuz
2004-06-06 14:48:59 +00:00
eb388aa237The loop code will access the stackpointer directly
cuz
2004-06-06 10:52:32 +00:00
651c6e5cbfAdd predefined type strings for float and double
cuz
2004-06-06 10:49:59 +00:00
0f80f0e297Corrected minor spelling errors
cuz
2004-06-06 10:35:12 +00:00
4b98935889Corrected minor spelling errors
cuz
2004-06-06 10:33:00 +00:00
c76e14f9f5Improved code for or and xor
cuz
2004-06-05 22:10:04 +00:00
5586527fccMove the test flags into the Flags bitset of struct ExprDesc
cuz
2004-06-05 20:29:47 +00:00
aa39d98cbcWhen 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
e4473c0a96Repeat the check in OptJumpTarget whenever a match is found to find rows of matches
cuz
2004-06-05 16:19:23 +00:00
522f1d86d4Generate 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
08eb9b7b0eCheck for and warn on statements that don't have an effect
cuz
2004-06-05 12:56:51 +00:00
3a0edbff75Fixed a bug
cuz
2004-06-05 11:50:04 +00:00
104ae3a54fMove 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
a0c1b9fe38Fixed a bug
cuz
2004-06-05 11:33:44 +00:00
1ec972d0c4Fixed a typo
cuz
2004-06-04 21:30:37 +00:00
f0b8ea1e14Fixed a problem
cuz
2004-06-04 21:25:54 +00:00
64fdaa4629Remove dependency on rom.o
cuz
2004-06-04 17:54:15 +00:00
3a144965faAdded T_SIZE_T as an alias for T_UINT
cuz
2004-06-04 17:52:19 +00:00
01104d26eaFixed generation of non optimal code in StructRef()
cuz
2004-06-03 11:10:30 +00:00
763a359114Comment and indentation changes
cuz
2004-06-03 11:08:50 +00:00
6e34e386cbRewrote 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
2bb2ceec33Fixed a bug
cuz
2004-06-02 21:20:18 +00:00
d8f7384091Fixed a bug
cuz
2004-06-01 20:30:44 +00:00
61ca515494small optimization; fix line buffered read of length 0
cpg
2004-06-01 20:25:44 +00:00