Menu

#3565 peephole asm labels

open
nobody
PDK
5
2023-03-17
2023-03-17
No

It seems peephole parser excessively sensitive to whitespaces between label and opcode:

char foo(char x) __naked {
__asm;
   add      a, -1
   t0sn.io  f,c
   add      a,  1
0$:ret
__endasm;
}

sdcc -mpdk13 --peep-asm test.c

FATAL Compiler Internal Error in file '/home/sdcc-builder/build/sdcc-build/orig/sdcc/src/SDCCpeeph.c' line number '3727' : skip instruction has no target label:
Contact Author with source code
't0sn.io f,c'

mcs51/z80/z180/r2k/r2ka/r3ka/sm83/tlcs90/ez80_z80/z80n/ds390/pic16/pic14/TININative/ds400/hc08/s08/stm8/pdk13/pdk14/pdk15/mos6502 TD- 4.2.14 #13898 (MINGW64)

PS: for skip instructions it will be cool to implicitly create new labels. Otherwise it requires to retouch all inline assembly.

Discussion


Log in to post a comment.

Auth0 Logo