When issuing one of the directives .big_endian or .little_endian, the assembler fails with, for example,
Error: Unknown directive 'big_endian' at filename:lineno.
This is because the conditionals in check_for_directive for these two directives do not return 1, but fall through to return 0, indicating no directive matched.
I also note that the default endianness specified for STM8 is incorrect: it is actually a big-endian processor.
This is a serious problem, as it means any word-length data or addresses stored will be loaded in backwards.
When issuing one of the directives
.big_endian
or.little_endian
, the assembler fails with, for example,This is because the conditionals in
check_for_directive
for these two directives do not return 1, but fall through to return 0, indicating no directive matched.I also note that the default endianness specified for STM8 is incorrect: it is actually a big-endian processor.
This is a serious problem, as it means any word-length data or addresses stored will be loaded in backwards.