Greg King
1aab287189
Fixed the handling of "while (0) {}".
...
It's a corner case; but, conditional macroes might create it -- better safe than sorry.
2017-04-07 09:26:58 -04:00
Oliver Schmidt
e43dbe1c24
Just some white space fixes of recently contributed code.
2017-04-06 17:53:57 +02:00
Oliver Schmidt
be772c0198
Bumped version.
...
As suggested the incompatibility resulting from 02daf9f8b5
makes a new version appropriate.
2017-04-06 12:22:39 +02:00
Oliver Schmidt
5d129f6e8a
Merge pull request #417 from greg-king5/sim-interrupts
...
sim65: Fix the simulations of the stack pointer and the "break" and decimal flags.
2017-04-05 10:57:47 +02:00
Greg King
dce5783dc9
Fixed the simulations of the stack pointer and the "break" and decimal-mode flags.
...
* The pointer wraps around the stack page.
* The break flag exists on only the stack, and only after an interrupt.
* 65C02 interrupts clear the decimal-mode flag.
2017-04-04 13:23:44 -04:00
Oliver Schmidt
e806515541
Removed workaround.
2017-04-04 15:53:14 +02:00
Oliver Schmidt
93193727be
Removed workaround.
2017-04-04 15:52:37 +02:00
Oliver Schmidt
cd27fef6a8
Removed workaround.
2017-04-04 15:52:01 +02:00
Oliver Schmidt
3789174162
Removed workaround.
2017-04-04 15:51:00 +02:00
Oliver Schmidt
14268510f5
Removed workaround.
2017-04-04 15:45:24 +02:00
Oliver Schmidt
275b27647e
Removed superfluous final linefeed.
2017-04-04 15:43:56 +02:00
Oliver Schmidt
233dd5062a
Merge pull request #389 from IrgendwerA8/stringimprovements
...
Optimization of string functions (size & speed).
2017-04-04 15:39:37 +02:00
Oliver Schmidt
4e856546c1
Minor language update.
2017-04-04 13:42:57 +02:00
Greg King
3b17c3a411
Fixed 2 typoes.
...
Warning messages from nsgmls usually mean a typing mistake a few lines above the first line that's named by nsgmls.
2017-04-04 07:23:05 -04:00
Oliver Schmidt
9b34509956
Use the more explicit tag style for recently added internal links.
2017-04-04 00:41:40 +02:00
Oliver Schmidt
02daf9f8b5
So far the built-in inlining of several known standard function was always (!) enabled and the option -Os enabled additional, potentially unsafe inlining of some of those functions.
...
There were two aspects of this behavior that were considered undesirable:
- Although the safe inlining is in general desirable it should only be enabled if asked for it - like any other optimization.
- The option name -Os implies that it is a safe option, the potentially unsafe inlining should have a more explicit name.
So now:
- The option -Os enables the safe inlining.
- The new option --eagerly-inline-funcs enables the potentially unsafe inlining (including the safe inlining).
Additionally was added:
- The option --inline-stdfuncs that does like -Os enable the safe inlining but doesn't enable optimizations.
- The pragma inline-stdfuncs that works identical to --inline-stdfuncs.
- The pragma allow-eager-inline that enables the potentially unsafe inlining but doesn't include the safe inlining. That means that by itself it only marks code as safe for potentially unsafe inlining but doesn't actually enable any inlining.
2017-04-03 23:20:26 +02:00
Oliver Schmidt
cbb2833c01
Merge pull request #414 from IrgendwerA8/SED_Fix
...
Fixed sim65 SED
2017-03-30 12:26:37 +02:00
IrgendwerA8
170d96898f
Fixed SED
2017-03-30 12:17:29 +02:00
Oliver Schmidt
5dbacb538e
Merge pull request #411 from pfusik/bss-name-regression
...
Fix regression of #pragma bss-name
2017-03-22 13:44:48 +01:00
Greg King
01f5baf03d
Fixed SGML typo.
2017-03-21 21:23:48 -04:00
Piotr Fusik
8e35a82c91
Fix regression of #pragma bss-name
...
Closes #409
2017-03-21 22:35:25 +01:00
Oliver Schmidt
5b3611265b
Revert to recursively expanded var.
...
4a6bca0b56
needed to move to a simply expanded variable but cc82cd9992
made that unnecessary again.
2017-03-21 20:54:55 +01:00
Oliver Schmidt
669113b595
Added missing line continuation.
...
Fixes https://github.com/cc65/cc65/issues/408
2017-03-21 20:45:51 +01:00
Oliver Schmidt
fe59626953
Merge pull request #407 from IrgendwerA8/sim65_fix
...
Fixed addressing error for TSB/TSR and enabled tests again.
2017-03-21 11:21:48 +01:00
IrgendwerA8
cc82cd9992
Fixed addressing error for TSB/TSR and enabled tests again.
2017-03-20 21:53:07 +01:00
Oliver Schmidt
5095dd72b2
Merge pull request #402 from IrgendwerA8/runtime_improvements
...
few 6502 and some 65SC02 runtime optimizations
2017-03-20 11:34:06 +01:00
Oliver Schmidt
0851e3d694
Allow to control test Makefile output via QUIET (like libsrc).
2017-03-20 11:22:04 +01:00
IrgendwerA8
1abfa98290
minor style changes
2017-03-19 20:51:54 +01:00
Oliver Schmidt
50174d9860
Hide stdout of tests returning an exit code.
...
Now that we doubled our tests by running them for both 6502 and 65C02 Travis CI complains (again) about a too long build output. So let's reduce it by omitting the (useless) stdout of tests.
2017-03-19 20:32:23 +01:00
Oliver Schmidt
4a6bca0b56
Run test for the 65C02 code generator / runtime too.
...
Now that sim65's 65C02 support is actually functional we can run test for the 65C02 support in the compiler and the runtime.
We learn the hard way this is a good idea as there are tests failing when built with optimizations for the 65C02:
- val/compare7
- val/compare8
- val/compare9
- val/compare10
- val/or1
2017-03-19 20:07:19 +01:00
Oliver Schmidt
ff9b77b6cc
Shortened test subdir names.
2017-03-19 17:57:25 +01:00
Oliver Schmidt
66634ef683
Cleaned up test Makefiles.
2017-03-19 17:48:44 +01:00
Oliver Schmidt
3a30669ff6
Merge pull request #405 from IrgendwerA8/65SC02_sim65_support
...
Added 65SC02 support for simulator.
2017-03-18 23:38:05 +01:00
IrgendwerA8
e14e13abf4
fixed curly brackets for single line scopes
2017-03-18 22:52:13 +01:00
Oliver Schmidt
2048d6cfb5
Removed top blank line.
2017-03-18 20:57:12 +01:00
IrgendwerA8
ad003e5991
style changes
2017-03-18 20:27:41 +01:00
IrgendwerA8
0985655ac7
Fixed bug in original sim65 implementation (reason for C&P error in last commit)
2017-03-18 17:02:22 +01:00
IrgendwerA8
c50e4d25e2
additional fix for scrambled code (sorry)
2017-03-18 16:56:36 +01:00
IrgendwerA8
4ba34f2a69
fixed scrambled semicolon
2017-03-18 16:54:00 +01:00
IrgendwerA8
360372420b
Added 65SC02 support for simulator.
2017-03-18 16:37:15 +01:00
Oliver Schmidt
aa75789f58
Merge pull request #404 from groessler/something_to_pull
...
Creativison changes.
2017-03-18 12:51:46 +01:00
Christian Groessler
a3d8829be9
Creativison changes.
...
This change includes some cleanups, removal of mainargs.s (game console
programs never have arguments), and a workaround for a problem I'm seeing.
The problem is that sometimes (in fact, more often than not) the clrscr()
call in testcode/lib/joy-test.c writes some garbage chars on the screen (most
often a "P"). Could be my hardware (I haven't seen it on MAME), but to
me the root cause is still unknown.
2017-03-17 21:42:51 +01:00
IrgendwerA8
0de44517ac
few 6502 and some 65SC02 optimizations
2017-03-12 23:21:43 +01:00
Oliver Schmidt
0bbe4f56a5
Merge pull request #401 from greg-king5/void-size
...
Make C's sizeof operator work with cc65's void variables.
2017-03-12 20:06:34 +01:00
Greg King
750a527100
Made C's sizeof operator work with initialized void variables.
...
Added regression tests that check cc65's handling of void variables.
2017-03-12 14:41:32 -04:00
Oliver Schmidt
a780df1fe1
Merge pull request #381 from pfusik/static-forward-decl
...
"static" forward declarations
2017-03-12 18:26:14 +01:00
Oliver Schmidt
2e8d792f9a
Added .gitattributes to force LF line endings on commit.
2017-03-12 18:13:18 +01:00
Oliver Schmidt
d7689b43cd
Merge pull request #400 from greg-king5/yaccdbg-fix
...
Fix a yaccdbg pointer test again.
2017-03-12 16:10:54 +01:00
Greg King
73261ea48f
Fixed a pointer test again -- but, it's better than in pull request #391 .
...
This time, the expression compares the pointer directly, instead of comparing the pointer's target. The new expression avoids an array underrun.
2017-03-11 15:11:15 -05:00
Oliver Schmidt
23d4534f94
Merge pull request #395 from greg-king5/no-Os
...
Remove a pointless cc65 command-line option from "samples/Makefile".
2017-03-10 15:33:02 +01:00