Karol Stasiak
1e4a193741
Optimization hints
2021-03-15 00:44:14 +01:00
Karol Stasiak
196ad6542f
Allow refering to labels from other functions in assembly ( fixes #101 )
2021-02-24 02:32:00 +01:00
Karol Stasiak
521b73d0d3
Array fields for structs and unions (see #87 )
2021-02-22 23:23:00 +01:00
Karol Stasiak
25adb05229
Fix typeof
2021-02-18 01:29:27 +01:00
Karol Stasiak
d20cc677bb
The typeof builtin function
2021-02-18 00:38:30 +01:00
Karol Stasiak
32b98750a9
Warn about non-volatile spinlocks (see #95 )
2021-02-03 09:46:09 +01:00
Karol Stasiak
c1959b356f
Make all constants referring to segments match their equivalents from the platform definition (see #87 )
2021-01-13 19:55:11 +01:00
Karol Stasiak
499e650752
Define and document more magic suffixes and constants (see #87 )
2021-01-13 19:35:11 +01:00
Karol Stasiak
b2d2c3e005
Don't emit labels that are not necessary; fix the __heap_start symbol.
2020-11-18 23:08:45 +01:00
Karol Stasiak
dc087ed887
Better error messages for arays without sizes
2020-11-18 23:08:09 +01:00
Karol Stasiak
97c7d0ffed
Basic groundwork for optimization hint support
2020-11-18 22:37:58 +01:00
Karol Stasiak
385b2fd40b
Fix function pointers ( fixes #86 )
2020-11-18 09:34:02 +01:00
Karol Stasiak
fc7643c416
Interrupt handler pointer types
2020-11-11 00:28:21 +01:00
Karol Stasiak
c0eae29a41
Minor compilation speed optimization
2020-09-21 00:15:16 +02:00
Karol Stasiak
615a0d7dc1
Interrupt functions in assembly should not have prologue ( fixes #62 )
2020-09-09 01:46:34 +02:00
Karol Stasiak
5e46e8ade9
Fix alignment of substructures
2020-09-02 00:44:24 +02:00
Karol Stasiak
e09db3d132
Local labels in assembly
2020-09-01 22:00:07 +02:00
Karol Stasiak
49816d18fe
Fix volatile
2020-08-14 22:28:31 +02:00
Karol Stasiak
7c4fb50808
Hardcode some more typo hints for things from other programming languages
2020-07-31 17:07:25 +02:00
Karol Stasiak
2905e99521
Support local labels in macros for all instructions
2020-07-31 13:29:48 +02:00
Karol Stasiak
d7f2b0688f
Improved error reporting for constants used before definition
2020-07-31 01:53:58 +02:00
Karol Stasiak
d5367cc1fe
for
loops over arrays
2020-07-24 19:12:19 +02:00
Karol Stasiak
000aede8db
Do not remove constants used only as array sizes ( #51 )
2020-07-19 23:34:14 +02:00
Karol Stasiak
a2c49a1f89
Add manual type alignment. 6502: Optimize multiplications by constants.
2020-07-18 01:15:33 +02:00
Karol Stasiak
31a8504195
Fix raw views of typed pointers
2020-07-18 01:11:20 +02:00
Karol Stasiak
a22571f60b
6809: tons of improvements:
...
* stack variables
* large comparisons
* pointer optimizations
* fixed constant evaluation
2020-07-09 01:50:18 +02:00
Karol Stasiak
b0577270d5
6809: various assembly fixes
2020-06-09 21:43:04 +02:00
Karol Stasiak
655edc35ff
Allow sizeof in assembly
2020-05-01 15:18:48 +02:00
Karol Stasiak
78346af2ef
8080: Some minor improvements
2020-04-06 11:35:14 +02:00
Karol Stasiak
63ff28e94e
Changes to macros and parameter list syntax:
...
* non-asm macros can now take `const` and `call` parameters
* register parameters to asm functions and macros can be given names if annotated explicitly
2020-03-30 19:23:48 +02:00
Karol Stasiak
dfe33c9b7a
6502: Pointers should have priority when allocating to the zeropage
2020-03-26 18:52:46 +01:00
Karol Stasiak
59882cf765
6502: Fix zp allocation
2020-03-26 01:38:54 +01:00
Karol Stasiak
2a3c9f04be
Fix >32bit constants
2020-03-26 01:36:41 +01:00
Karol Stasiak
5215400cb2
Fix lookup
2020-03-26 01:36:15 +01:00
Karol Stasiak
3187ed155e
Add signed16 and unsigned16 types
2020-03-25 23:53:26 +01:00
Karol Stasiak
d478f3504f
Const-pure functions
2020-03-19 23:53:16 +01:00
Karol Stasiak
769f31717d
6502: Detect pointer variables that have to be in the zeropage more accurately
2020-03-19 20:00:28 +01:00
Karol Stasiak
85030d3147
Added constant-only functions min, max, if. Improved handling of constant-only functions.
2020-03-19 19:43:24 +01:00
Karol Stasiak
2eb8ef53ca
Put almost all warnings behind internal flags
2020-03-17 21:08:43 +01:00
Karol Stasiak
a527eea0fc
Add more binary operators for constants in assembly
2020-03-17 02:03:44 +01:00
Karol Stasiak
83b85ef0fc
Support breakpoints in the label file ( #44 )
2020-03-16 00:01:04 +01:00
Karol Stasiak
f57ecc9800
Improve and optimize memset (see #47 )
2020-03-15 01:06:09 +01:00
Karol Stasiak
24870ae62e
Detect obviously overflowing constants
2020-03-15 01:01:08 +01:00
Karol Stasiak
8b6e89f9a4
Various improvements for macros ( fixes #39 and pertains to #40 )
2020-02-02 23:25:06 +01:00
Karol Stasiak
df1d5421be
Do not allocate variables on top of fixed-address vairables and arrays ( fixes #26 )
2020-01-03 23:09:20 +01:00
Karol Stasiak
6e36166af2
Never remove or inline volatile variables ( fixes #27 )
2020-01-03 21:28:10 +01:00
Karol Stasiak
b2dd4eadd4
Start work on supporting member arrays
2019-12-30 11:50:18 +01:00
Karol Stasiak
59784ad5f1
HuC6280: Full assembly support
2019-11-24 01:30:30 +01:00
Karol Stasiak
3a0bc0f15e
Add unsigned types
2019-11-03 23:33:41 +01:00
Karol Stasiak
ffe79a214d
Add nullchar_src
, NULLCHAR_SCR
and NULLCHAR_SAME
(relates to #17 )
2019-10-31 12:20:42 +01:00