Commit Graph

  • dc14751954 Exported the direct Kernal entries that were moved from target headers to "cbm_kernal.inc". Greg King 2020-09-22 00:02:12 -04:00
  • 41bd8d909b Added ld65's bank attribute to the cx16 library's bank (overlay) configuration file. Greg King 2020-09-20 19:55:25 -04:00
  • 0b64ca0d7d Fixed the ld65 cx16 Assembly configuration file. Greg King 2020-09-20 16:09:58 -04:00
  • bf4b195016 Added some comments that explain where the g_branch() code generator can and can't be used. Greg King 2020-09-18 15:50:26 -04:00
  • de630a1245 Fixed quick hack for known registers after calling certain runtime functions, and new quick hack for tosshrax. acqn 2020-09-13 09:15:07 +08:00
  • 079f4a99dd Added processor state info to the OPCDesc table. However, since some opcodes are affected by the addressing mode, this info is unused in codegen/optimizer but just as quick in-code documentation/hints. acqn 2020-09-13 09:14:51 +08:00
  • a7d6eb9190 Added processor flag usage/change-tracking for non-JSR/RTS code entries. Some existing optimizations are impacted and need fixes in order to work correctly again. Fixed and improved OptPrecalc. Now it respects the C/V/Z/N flags. Fixed optimizations impacted by added support of tracking processor flags. acqn 2020-09-13 08:41:05 +08:00
  • d02b12fa6c Made local code/data labels really local to the functions where they live in. acqn 2020-08-23 01:35:18 +08:00
  • 86ced2bd4c Avoided unnecessarily boosting the code label numbers with boolean AND. acqn 2020-09-13 17:01:57 +08:00
  • 0482e4d6e4 Fix CRLFs introduced by fe3f267 Jesse Rosenstock 2020-09-18 08:42:56 +02:00
  • b8ae5c28fe Added debug output support for processor flags. acqn 2020-09-08 23:41:04 +08:00
  • 810e17edfe Fixed processor states tracking for the BIT/TRB/TSB opcode. Added new opcode descriptions about whether and how the opcode accesses memory. acqn 2020-09-08 23:41:02 +08:00
  • 66c5faeb9a Added processor flags usage tracking. Added ZNRegs for tracking what register(s) Z/N flags currently reflect. Added utility functions to check if the specified processor state is known to be a certain value. acqn 2020-09-08 23:40:58 +08:00
  • fe3f267233 Added new runtime sub bcasta/bcastax/bcasteax opposing to bnega/bnegax/bnegeax. acqn 2020-09-05 11:28:38 +08:00
  • 142b0bf9b3 Added utility functions to get names of comparison function/transformer subroutines. acqn 2020-09-05 11:26:00 +08:00
  • ae6696fcb9 Removed some ambiguity from a statement. Greg King 2020-09-08 10:24:27 -04:00
  • ab7e9f8424 Hotfix for Issue #1250. acqn 2020-09-08 21:36:38 +08:00
  • 4e4e4c2d21 Allow char bit-fields Jesse Rosenstock 2020-08-30 20:47:25 +02:00
  • 41cee0eb44 Extended support for more addressing modes in tos* optimizations. acqn 2020-01-23 06:54:34 +08:00
  • 7553b60ef0 Improved OptStackOps for optimizating further when operands have equal hi-bytes. acqn 2020-01-23 06:53:52 +08:00
  • 57117fa687 Utility functions about compare conditions. acqn 2020-01-23 06:39:37 +08:00
  • 64ef562fa7 Moved all optimization steps from codeopt.c and some optimization steps from coptind.c into new separate files. acqn 2020-09-07 05:11:48 +08:00
  • 9a0e4a35e1 Fix enum bit-field ICE #1244 Jesse Rosenstock 2020-09-05 20:03:24 +02:00
  • 1e7a9e44af Update comment to reflect addition of integer boundary constants Tevo 2020-09-06 21:19:01 -03:00
  • 23a8b2c303 Define integer size macros for lacking systems Tevo 2020-09-03 00:06:31 -03:00
  • 6bb2d1d5d1 Fixed a comment on struct/union types in DoCompare(). acqn 2020-09-07 04:19:27 +08:00
  • 1cde952cf5 Fixed comparing an enum type with a non-enum type in DoCompare(). acqn 2020-09-07 04:19:27 +08:00
  • 6e0fb630d7 Fixed check for processor flags usage in case of PHP. acqn 2020-09-05 21:31:22 +08:00
  • e2f950b15e Avoided referencing string literals with sizeof so that they are not output if unused elsewhere. acqn 2020-08-31 17:45:36 +08:00
  • 903e84c24c Std-functions are no longer inlined if they are unevaluated. acqn 2020-08-31 17:45:25 +08:00
  • df07e23f2c Fixed bnegeax funcinfo on register usage. acqn 2020-09-05 11:15:17 +08:00
  • f849de6769 Object addresses as non-NULL for comparison with NULL. acqn 2020-08-20 07:52:22 +08:00
  • 8e0b2f0833 Object addresses as non-NULL in boolean context. acqn 2020-08-20 07:52:20 +08:00
  • bc5570b708 Fixed logical-NOT in constant context. acqn 2020-08-20 07:52:17 +08:00
  • 44b719d957 Change line endings from CRLF to LF Jesse Rosenstock 2020-09-03 09:16:51 +02:00
  • 676b14429d Better opt chance for certain optimization steps e.g. OptPtrStore1 etc. acqn 2020-08-31 06:16:36 +08:00
  • 29d1999947 Rearranged the OptFunc's in alphabetic order. acqn 2020-08-31 06:16:32 +08:00
  • 761d00b7dc Ignore running removed old optimization steps. Neither list them in help info. acqn 2020-08-31 06:16:28 +08:00
  • ae340703f2 OptDupLoads shouldn't silently do optimizations. acqn 2020-08-31 01:57:01 +08:00
  • f45d2515eb Fixed OptPush1 in case later code would rely on that pushax zeroes register Y. acqn 2020-08-31 01:56:57 +08:00
  • 2a3d996077 Improved test case for PR #1220. acqn 2020-08-31 20:41:36 +08:00
  • fb6bc275bc Fixed evaluation flags propagation to subexpressions in assignments and function calls. acqn 2020-08-31 20:33:58 +08:00
  • 2379504449 Fixed AND/OR in certain cases where the 'E_NEED_TEST' flag set for usage only in subexpressions should be cleared. acqn 2020-08-31 20:31:54 +08:00
  • 28de3423eb Merged some switch cases in code generation subroutines. acqn 2020-08-23 01:35:13 +08:00
  • 6b64b43395 Made local static data use a separated label pool from the code label pool. acqn 2020-08-23 01:35:11 +08:00
  • 9398e1cd33 Use a dedicated label pool for literals. acqn 2020-08-23 01:35:06 +08:00
  • bee559d5f4 Merge pull request #1220 from acqn/StaticConst Oliver Schmidt 2020-08-31 08:59:25 +02:00
  • 74def4608a The 'E_NEED_TEST' flag shouldn't be overwritten when loading the expression result. acqn 2020-08-31 02:30:12 +08:00
  • c0a873e0c8 Reduced exess errors on wrong initializations with curly braces. acqn 2020-08-27 08:02:05 +08:00
  • 8b580e1191 Disabled struct/union fields of 'void' type. acqn 2020-08-30 02:31:09 +08:00
  • f1161daee9 Recursively checking for incomplete/unknown-sized types. acqn 2020-08-30 02:30:43 +08:00
  • 8541f18340 Improved diagnostic info on assignment to void types. acqn 2020-08-26 00:12:23 +08:00
  • abcc2a8f1a Disallowed void arrays of elements of variant sizes. acqn 2020-08-20 07:46:08 +08:00
  • d87846e1e1 Improved comments according to PR reviews. acqn 2020-08-30 22:12:30 +08:00
  • 60c59f59a3 Renamed StaticConstExpr() and StaticConstAbsIntExpr() with clearer comments. acqn 2020-08-30 00:26:52 +08:00
  • 492ee7fc45 Improved test/ref/pr1220.c. acqn 2020-08-30 03:10:24 +08:00
  • df755df44d Warning about ESU types declared inside parameter list as they are invisble outside. acqn 2020-08-15 06:27:11 +08:00
  • 33a75e0a73 Optimized parameter list checking. Fixed function type comparison between ANSI and K&R styles. acqn 2020-08-15 06:27:11 +08:00
  • 0a96ffc878 Fixed function parameter checking. Fixed function return type checking. acqn 2020-08-15 06:27:11 +08:00
  • 4e61ae5b36 Fixed function parameter type conversion. acqn 2020-08-15 06:27:11 +08:00
  • 632da3f4ee Fixed tracking and checking flexible array members. acqn 2020-08-15 06:27:11 +08:00
  • f54e01781b Tiny optimizations for multiplication. IrgendwerA8 2020-08-29 16:21:45 +02:00
  • 5158ee2092 preliminary makefile to build all programs in the testcode directory mrdudz 2020-08-27 14:50:00 +02:00
  • 5e2d2a54f6 added makefile for the GEOS samples. geosconio.c and rmvprot.c do not compile right now, someone with more GEOS knowledge should look at them mrdudz 2020-08-27 14:25:33 +02:00
  • 4008ab556c added a Makefile mrdudz 2020-08-27 01:34:18 +02:00
  • f34644186f build a bogus "ROM image" that can be disassembled, fix the makefile, remove generated files mrdudz 2020-08-27 01:19:33 +02:00
  • 504aee3835 Merge branch 'master' into StaticConst acqn 2020-08-27 06:27:23 +08:00
  • 7a453d1f90 add a "disk" target to build the disk images as suggested by Oliver mrdudz 2020-08-27 00:08:22 +02:00
  • 41dbd31b02 fix makefile, remove the unneeded .cfg again. oops :) mrdudz 2020-08-27 00:04:34 +02:00
  • c1a514c0f8 added test related to issue #1201 mrdudz 2020-08-26 23:20:28 +02:00
  • 39a3de3119 made geoslib testcode compile again, added the required linker config and a Makefile mrdudz 2020-08-26 22:47:47 +02:00
  • bf5384a712 some more refactoring of Makefiles, preparing for CI mrdudz 2020-08-26 22:46:45 +02:00
  • bb9c203222 Fixed integer promotion of unary operations. acqn 2020-08-15 07:53:28 +08:00
  • 8d225c32b1 Fixed checks on assignment to incomplete types. acqn 2020-08-22 05:57:12 +08:00
  • 43cb092a68 Fixed CHECK failures on certain usage of incomplete enums. acqn 2020-08-22 05:56:33 +08:00
  • 1957dc7a5c Disallowed arrays of incomplete types. Fixed diagnostics on incomplete local arrays. acqn 2020-08-15 06:27:11 +08:00
  • f5b1b69376 Forbid struct/union fields of incomplete types. acqn 2020-08-15 06:27:11 +08:00
  • bee11ec11b Merge branch 'master' of https://github.com/cc65/cc65 mrdudz 2020-08-26 21:28:32 +02:00
  • 8649859bc5 added/updated Makefiles, preparing for CI (later) mrdudz 2020-08-26 21:28:19 +02:00
  • b0d3b19a6a The bug1209 test fails at link stage. Oliver Schmidt 2020-08-26 20:58:44 +02:00
  • ad1579140b Merge branch 'master' of https://github.com/cc65/cc65 mrdudz 2020-08-26 20:54:13 +02:00
  • c6adf4364f make atari testcode compile again, added makefile mrdudz 2020-08-26 20:53:45 +02:00
  • c658acbf85 Avoid cl65 in tests. Oliver Schmidt 2020-08-26 20:37:28 +02:00
  • 4c912a0fbe make gamate testcode compile again mrdudz 2020-08-26 15:59:52 +02:00
  • 83cc115112 re-add define for pad bits hw address, which was accidently removed in some refactor commit mrdudz 2020-08-26 15:51:20 +02:00
  • e5a1755133 added some ifdefs to make testcode compile for apple2 and atari targets mrdudz 2020-08-26 15:08:17 +02:00
  • d21fbed1bb Merge branch 'master' of https://github.com/cc65/cc65 mrdudz 2020-08-26 13:37:07 +02:00
  • c216b3534b fix compilation, fixes issue #1184 mrdudz 2020-08-26 13:36:43 +02:00
  • 4cd19711f2 Merge pull request #1219 from acqn/Test Bob Andrews 2020-08-26 11:09:11 +02:00
  • b6a4715a38 Added test/ref/pr1220 for testing constant AND/OR code generation. acqn 2020-08-26 08:45:01 +08:00
  • d68925c6a8 Bug #1113 was fixed long ago. acqn 2020-08-25 22:34:25 +08:00
  • 344aea0669 Add additional test cases for #1209 Jesse Rosenstock 2020-08-23 21:50:54 +02:00
  • d38e5858f0 Add tests for #1211 Jesse Rosenstock 2020-08-24 10:01:58 +02:00
  • 4b7cd491e3 Move #1209 test from err/ to misc/ Jesse Rosenstock 2020-08-24 16:33:50 +02:00
  • f289ea6c14 Avoided generating unnecessary true-case labels in logic AND/OR. acqn 2020-08-22 11:10:17 +08:00
  • 85ea06687b Fixed logical AND and logical OR. acqn 2020-08-20 07:52:15 +08:00
  • 725511131a Fixed constant expression checks with no-code requirement. Used return-by-value initialization for ExprDesc. acqn 2020-08-20 07:52:11 +08:00
  • 1abb9da2b2 Moved bug250.c to test/val as it is fixed. acqn 2020-08-26 09:40:32 +08:00
  • 3ea3887c77 Fixed warnings on const comparison. Warnings on expressions with no effects. Fixed const ternary. Fixed ternary with struct/union types as the true/false-branch expressions. acqn 2020-08-20 07:52:06 +08:00
  • b15ab348ba Moved bug250.c from test/misc as it is to be fixed. acqn 2020-08-26 08:23:05 +08:00