mc78
f87a575d4d
added missing spaces before braces. added unknown option msg if not given -Wc|l|a when passing options to subprocess
2017-05-23 22:57:27 +02:00
mc78
21b1add984
added four escaped tabs to -E Stop after .... description
2017-05-22 23:21:55 +02:00
mc78
3157e4be1e
added empty lines and spaces according to olivers comments. Made local functions static.
2017-05-22 23:07:31 +02:00
Oliver Schmidt
1c54213091
Merge pull request #433 from clbr/trampoline-fixes
...
Trampoline fixes
2017-05-20 12:29:10 +02:00
Lauri Kasanen
e8a735492d
Correct comment style
2017-05-19 15:38:50 +03:00
Lauri Kasanen
901ac80026
Wrapper functions use all registers
2017-05-19 15:25:50 +03:00
Oliver Schmidt
16a2beaaca
Adjusted VS project files to commit 11b01b908d
2017-05-18 22:40:18 +02:00
Oliver Schmidt
11b01b908d
Merge pull request #424 from clbr/trampoline
...
Trampoline support
2017-05-18 16:29:34 +02:00
Lauri Kasanen
219b239a34
Adjustments in response to latest comments
2017-05-18 17:14:26 +03:00
Lauri Kasanen
4c05c46cd1
Remove RAM-trampoline array support
2017-05-18 16:11:39 +03:00
Lauri Kasanen
f6fa74a636
Rename trampoline to wrappedcall everywhere
2017-05-18 16:00:04 +03:00
Lauri Kasanen
7feced8862
More tabs to spaces
2017-05-18 15:54:47 +03:00
Lauri Kasanen
a590b99f5b
Align with spaces instead of tabs here
2017-05-18 14:21:43 +03:00
Oliver Schmidt
390ee4e22f
Merge pull request #429 from pfusik/opt-stdfunc
...
Optimize the inlined strlen/memcpy/memset
2017-05-17 22:58:54 +02:00
Oliver Schmidt
f151142e6a
Keep GCC from complaining about 'List' may be used uninitialized in this function.
2017-05-17 19:39:02 +02:00
Oliver Schmidt
298dda0e71
Increased GCC optimization level.
2017-05-17 18:30:35 +02:00
Piotr Fusik
675dd3c963
Optimize the inlined memcpy/memset for the sizes of 128/129.
2017-05-17 10:08:08 +02:00
Piotr Fusik
6011bdb2f6
Optimize the inlined strlen.
2017-05-17 10:00:35 +02:00
Lauri Kasanen
ca41af41c2
Rename pragma trampoline to wrapped-call, value to identifier
2017-05-16 20:10:24 +03:00
mc78
d70a9507a7
replaced tabs with spaces which accidently were introduced.
2017-05-16 13:31:10 +02:00
mc78
691df09a1f
According to recent comments on my recent pull request, -Wc checking for -E flag has been removed again. Intead, -E flag has been added to cl65 without need of -Wc. Two functions have been introduced to disable compile, link or both. These function remove assigment repetions to DoAssemble and DoLink for litte overhead, having the maintainability in mind.
2017-05-16 13:13:09 +02:00
mc78
4cbfb4e199
added -E switch to cl65 for >>stop after the preprocessing stage<<.
...
added compilation and assemblation disable after -Wc -E also with -E beeing part of a comma separated list of arguments
2017-05-12 12:23:30 +02:00
Lauri Kasanen
a2f61c667a
Update comments and location checks according to Greg
2017-05-07 20:31:41 +03:00
Lauri Kasanen
ead0338c0d
Add fast path for char postdec
2017-05-06 13:35:39 +03:00
Lauri Kasanen
767f093ff8
Add fast path for char postinc
2017-05-06 13:35:39 +03:00
Lauri Kasanen
2890b3a810
Pragma trampoline
2017-05-02 20:51:53 +03:00
Lauri Kasanen
d091a57e91
Trampoline stack
2017-05-02 20:43:41 +03:00
Lauri Kasanen
679bfb0ae9
Add IntPtrStack
2017-05-01 21:08:04 +03:00
Oliver Schmidt
18b0aaf9f2
Removed help for non-existent option.
2017-04-15 23:12:19 +02:00
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
be772c0198
Bumped version.
...
As suggested the incompatibility resulting from 02daf9f8b5
makes a new version appropriate.
2017-04-06 12:22:39 +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
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
Piotr Fusik
8e35a82c91
Fix regression of #pragma bss-name
...
Closes #409
2017-03-21 22:35:25 +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
IrgendwerA8
cc82cd9992
Fixed addressing error for TSB/TSR and enabled tests again.
2017-03-20 21:53:07 +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
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
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
Piotr Fusik
d2c89d2ba9
"static int n; int n;" is an error.
...
Fixes test/err/static-4.c regression.
2017-03-09 19:14:31 +01:00
Piotr Fusik
5988ec37cd
Revert "Disallow global variable declarations with an initializer."
...
This reverts commit 1f12a06f7cc2ae79a800fe3faed727513364091b.
2017-02-15 18:51:27 +01:00