diff options
| author | Xavi Del Campo <xavi.dcr@tutanota.com> | 2019-11-06 04:10:53 +0100 |
|---|---|---|
| committer | Xavi Del Campo <xavi.dcr@tutanota.com> | 2019-11-06 04:34:26 +0100 |
| commit | cf1d3aec552ebaea437935e74e5eabda4bd989e7 (patch) | |
| tree | ebff2398497ea6ff20a1d6e57e63a12531d53ea2 /src/SDCCmem.h | |
| parent | 0290d8bd12f3cd188c200367ade7d569a92f1d2d (diff) | |
| download | sdcc-gas-cf1d3aec552ebaea437935e74e5eabda4bd989e7.tar.gz | |
Fixed github sdcc-gas issues #1, #2 and #4
Issue #1 was caused because code_name and data_name had been incorrectly
defined as const-qualified pointers, but this must be an exception for
the z80 backend, as stated by the comments.
Issue #2 has been solved by removing the --gas switch from SDCCmain.c,
renaming it to "--asm=" (as requested by PKK) and moved to STM8's main.c,
so the option is limited to those targets supporting it.
Issue #4 was because of SDCCglue.c, that generated local labels using
"!labeldef" instead of "!slabeldef", causing those __str_%d labels to be
printed as "__str_%d::" (the double colons stand for globa label according
to asxxx documentation) instead of "__str_%d":".
I ran the regression tests and most of them passed, but "wchar" returned another
"Multiple definition of..." error that I cannot explain so far. It is better than
nothing, though.
Diffstat (limited to 'src/SDCCmem.h')
| -rw-r--r-- | src/SDCCmem.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/SDCCmem.h b/src/SDCCmem.h index feddcba..b2b1620 100644 --- a/src/SDCCmem.h +++ b/src/SDCCmem.h @@ -50,8 +50,8 @@ extern FILE *junkFile; #define ISTACK_NAME port->mem.istack_name #define CODE_NAME (options.gasOutput ? ".text" : port->mem.code_name) #define DATA_NAME (options.gasOutput ? ".bss" : port->mem.data_name) -#define INITIALIZED_NAME port->mem.data_name -#define INITIALIZER_NAME (options.gasOutput ? ".data" : port->mem.data_name) +#define INITIALIZED_NAME (options.gasOutput ? port->mem.data_name : port->mem.initialized_name) +#define INITIALIZER_NAME (options.gasOutput ? ".data" : port->mem.initializer_name) #define IDATA_NAME port->mem.idata_name #define PDATA_NAME port->mem.pdata_name #define XDATA_NAME port->mem.xdata_name |
