d20d99b32b
Fix reverse lowercase on Apple][
Colin Leroy-Mira
2026-04-13 08:43:15 +02:00
8fcee1b552
Merge pull request #2958 from geon/master
Bob Andrews
2026-04-19 17:52:36 +02:00
c31565cd5b
Fixed typos. marco -> macro
Victor Widell
2026-04-19 17:20:54 +02:00
a545b4fc3e
Merge pull request #2951 from avolkov76/anv-bug-2942
Bob Andrews
2026-04-07 13:36:12 +02:00
69c17a502b
Additional synthetic, extreme register load reuse tests future-proofing issues #2942 and #2947.
Alex Volkov
2026-04-01 18:27:28 -04:00
de78048319
Generalize the shared, non-removable reg load tests in RemoveRegLoads() to "instruction affects the other register"
Alex Volkov
2026-03-29 17:05:20 -04:00
321e47f0f3
Rhs X removals in coptstop.c should no longer be dangerous.
Alex Volkov
2026-03-26 18:32:04 -04:00
6027487c30
Expand bug2461 tests to other operators and Lhs/Rhs conditions
Alex Volkov
2026-03-26 18:22:39 -04:00
00a1f1d447
Clearly delineate load instruction "must remove" conditions from "may remove" with a new LI_MUST_REMOVE flag. A demand to remove a non-removable load is fatal.
Alex Volkov
2026-03-25 19:14:14 -04:00
c9b885b144
Prevent the removal of a ldaxysp runtime call as a "load instruction" for only the A or the X side, when the other is non-removable. Fixes issue #2942 / #2461.
Alex Volkov
2026-03-25 19:08:18 -04:00
40a20ab973
Expand bug1374 tests to a few other conditions
Alex Volkov
2026-03-25 19:03:00 -04:00
ac69017ca5
Remove redundant LoadEntry clears; DelEntry() already handles clearing them, and the redundant clears are a red herring in the code.
Alex Volkov
2026-03-25 19:01:37 -04:00
62451557f9
Revert the fix for #2461 in search of a more general solution
Alex Volkov
2026-03-25 19:00:57 -04:00
80ff9d3f4d
Merge pull request #2949 from avolkov76/anv-bug-2947
Bob Andrews
2026-03-25 23:01:50 +01:00
d711b6d6fa
Prevent Lhs load insns shared with the Rhs from being inadvertently removed by Rhs optimizers. Fixes issue #2947.
Alex Volkov
2026-03-22 19:42:57 -04:00
af285ba9e5
Remove red herring flag set. It is far too late to set LI_DONT_REMOVE in a subopt.
Alex Volkov
2026-03-22 18:49:12 -04:00
7988d9aefb
Regression tests for #2947 expanded to other operators and conditions
Alex Volkov
2026-03-22 18:44:16 -04:00
9732bc2cb7
Correct some printed messages and remove one print in bug2395 test (c&p errors)
Alex Volkov
2026-03-22 18:42:01 -04:00
b6d9fb6016
Merge pull request #2948 from avolkov76/tests-out-race
Bob Andrews
2026-03-22 20:36:59 +01:00
9c5916866b
Prevent stdout/stderr redirect races in the testbench
Alex Volkov
2026-03-22 14:24:02 -04:00
916933f884
Merge pull request #2941 from avolkov76/anv-coptstop-refactor
Bob Andrews
2026-03-21 14:50:25 +01:00
d036c4aaae
Minimal test for issue #2947
Alex Volkov
2026-03-20 19:51:55 -04:00
f464b50495
Minimal test for issue #2946
Alex Volkov
2026-03-20 19:51:37 -04:00
2fd9411f7f
Expand bug2395 tests to other operators and conditions
Alex Volkov
2026-03-20 19:51:04 -04:00
d427887764
Merge branch 'cc65:master' into anv-coptstop-refactor
Alex Volkov
2026-03-19 08:15:09 -04:00
4232e7acc6
Merge pull request #2945 from polluks/patch-15
Bob Andrews
2026-03-18 21:31:55 +01:00
0fe0337e9c
Update comment for MEGA65 joystick driver
Stefan
2026-03-18 19:30:40 +01:00
57cc683d91
Whitespace fix (left after var removal)
Alex Volkov
2026-03-11 19:33:36 -04:00
ca98b218e8
Remove the unused (for now) predicate functions in coptstop.c to keep the compiler happy.
Alex Volkov
2026-03-11 19:17:50 -04:00
73f4149554
Refactor: remove the now unused flag variable in OptStackOps()
Alex Volkov
2026-03-11 19:09:34 -04:00
99ccd7e1a3
Refactor: Replace OptStackOps() complex (and buggy) flag-based subopt precondition evaluation system with plain language predicate functions. Any custom preconditions can now be expressed without much trouble. Also, begin establishing parity between precondition logic and actual subopt branching logic.
Alex Volkov
2026-03-11 17:44:33 -04:00
82d672e904
Refactor: rearrange Opt_a_tosbitwise() code to follow the common if-else if-else pattern form used by other subopts.
Alex Volkov
2026-03-10 20:47:39 -04:00
bf5d8c44e4
BUGFIX: Fix the "same X value" and "same A value" evaluations issue in OptStackOps(), where the values compared come from the wrong instruction when a runtime call has an asm label.
Alex Volkov
2026-03-10 20:08:35 -04:00
505698c450
Refactor: remove StackOpData side effects from IsRegVar() and PreCondOk()/RegAPreCondOk(); setting StackOpData.ZPLo/ZPHi is explicit.
Alex Volkov
2026-03-10 19:23:40 -04:00
1b778edee8
Annotations ahead of refactoring: bugs., looming bugs, and work notes.
Alex Volkov
2026-03-10 17:46:40 -04:00
a29ce64fb5
Merge pull request #2940 from avolkov76/anv-coptstop-head
Bob Andrews
2026-03-10 01:49:31 +01:00
76d71aec92
Compare operator test suite: forward and reverse compares; edge and corner cases; literals, autos, statics, simple expressions; signed and unsigned; some special cases.
Alex Volkov
2026-03-09 20:04:59 -04:00
d45fac3afe
Merge pull request #2938 from kugelfuhr/kugelfuhr/fix-2811
Bob Andrews
2026-03-05 19:51:51 +01:00
3d26a7e1fe
Correct test name and test comment.
Kugel Fuhr
2026-03-05 18:44:33 +01:00
380c3f810e
Fix an invalid transformation by the optimizer. Introduced by #2811.
Kugel Fuhr
2026-03-05 18:38:34 +01:00
6184e7286b
Merge pull request #2936 from CubeXGames/patch-1
Bob Andrews
2026-03-01 14:06:41 +01:00
e41484a3a8
Fix typo in ca65 documentation
CubeX
2026-02-28 20:20:59 -07:00
c7e851caa3
Merge pull request #2932 from willisblackburn/bug_2930
Bob Andrews
2026-02-28 00:14:48 +01:00
5f437e09a0
Move AssignIds to before we print the info line in order to ensure that we write the correct file count.
Willis Blackburn
2026-02-12 17:54:58 -05:00
0fca83500b
Merge pull request #2927 from kugelfuhr/kugelfuhr/fix-2926
Bob Andrews
2026-02-11 19:54:44 +01:00
53dacfd18e
Merge pull request #2919 from polluks/c16
Bob Andrews
2026-02-11 19:47:04 +01:00
f166ca8ad9
Merge pull request #2918 from polluks/patch-15
Bob Andrews
2026-02-07 16:35:51 +01:00
fbcae3e640
Merge pull request #2921 from willisblackburn/master
Bob Andrews
2026-02-07 16:34:01 +01:00
2f62b263f3
Added a test.
Kugel Fuhr
2026-02-06 16:36:44 +01:00
61799b07bf
Fix unchecked integer or floating point suffixes.
Kugel Fuhr
2026-02-06 15:55:30 +01:00