1
0
mirror of https://github.com/KarolS/millfork.git synced 2026-04-19 10:42:10 +00:00

Text encoding improvements

This commit is contained in:
Karol Stasiak
2018-07-07 00:58:44 +02:00
parent 265f729b24
commit 2c8de8b6a5
31 changed files with 329 additions and 54 deletions
+6 -2
View File
@@ -81,14 +81,18 @@ Default: no if targeting Ricoh, yes otherwise.
* `-fvariable-overlap`, `-fno-variable-overlap` Whether variables should overlap if their scopes do not intersect.
Default: yes.
* `-fbounds-checking`, `-fnobounds-checking` Whether should insert bounds checking on array access.
* `-fbounds-checking`, `-fno-bounds-checking` Whether should insert bounds checking on array access.
Default: no.
* `-fcompact-dispatch-params`, `-fnocompact-dispatch-params`
* `-fcompact-dispatch-params`, `-fno-compact-dispatch-params`
Whether parameter values in return dispatch statements may overlap other objects.
This may cause problems if the parameter table is stored next to a hardware register that has side effects when reading.
`.ini` equivalent: `compact_dispatch_params`. Default: yes.
* `-flenient-encoding`, `-fno-lenient-encoding`
Whether the compiler should allow for invalid characters in string/character literals that use the default encodings and replace them with alternatives.
.ini` equivalent: `lenient_encoding`. Default: no.
## Optimization options
* `-O0` Disable all optimizations.
+9
View File
@@ -26,6 +26,13 @@ Every platform is defined in an `.ini` file with an appropriate name.
* `z80` (Zilog Z80; experimental and very incomplete)
* `encoding` default encoding for console I/O, one of
`ascii`, `pet`/`petscii`, `petscr`/`cbmscr`, `atascii`, `bbc`, `jis`/`jisx`, `apple2`,
`iso_de`, `iso_no`/`iso_dk`, `iso_se`/`iso_fi`, `iso_yu`. Default: `ascii`
* `screen_encoding` default encoding for screencodes (literals with encoding specified as `scr`).
Default: the same as `encoding`.
* `modules` comma-separated list of modules that will be automatically imported
* other compilation options (they can be overridden using commandline options):
@@ -54,6 +61,8 @@ Every platform is defined in an `.ini` file with an appropriate name.
* `inline` - inline functions automatically by default, default is `false`.
* `ipo` - enable interprocedural optimization, default is `false`.
* `lenient_encoding` - allow for automatic substitution of invalid characters in string literals using the default encodings, default is `false`.
#### `[allocation]` section