summaryrefslogtreecommitdiff
path: root/src/port.h
Commit message (Collapse)AuthorAgeFilesLines
* Fixed github sdcc-gas issues #1, #2 and #4Xavi Del Campo2019-11-061-2/+2
| | | | | | | | | | | | | | | | | | | 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.
* Got hi8/lo8 asm instructions workingXavier ASUS2019-10-241-0/+4
| | | | | | | | | | | | GNU as does not support the #</#> notation asxxx uses to determine address LSB and MSB. Instead, two instructions have been created on GNU as and ld (see my stm8-binutils-gdb fork) for this purpose. On the other hand, I'm upset to see gen.c does not provide an assembler-agnostic implementation when SDCCasm.c already provides tools already meant for this. OTOH, support for the "-C" has been added for --gas.
* First working example!Xavier ASUS2019-10-221-4/+0
| | | | | | stm8/main.c: 0x8000 must contain the entry point aka "_start" for GNU as. Some work on supporting debugging symbols with --gas. Not finished yet.
* More work on GNU as generationXavier ASUS2019-10-211-2/+2
| | | | | | | | | | | | | | | | | | On _gas_mapping, label definitions do not allow "::". ":" must be used instead. gasOutput is now part of "options". Unneeded sections, such as HOME/GSINIT/etc., are no longer declared and/or defined. GNU as just does not need them. Startup function name must equal "_start" for GNU ld. The value of some macros, such as CODE_NAME or DATA_NAME, must change according to options.gasOutput, as "CODE" or "DATA" (among many others) are not understood by GNU as. STM8 port now selects GNU as format on --gas switch enabled.
* sdcc-3.9.0 fork implementing GNU assembler syntaxXavier ASUS2019-10-181-0/+488
This fork aims to provide better support for stm8-binutils