Hello, everyone!
I am getting an error that I don't understand. I have an interrupt function
with some
inline assembly, and I can't see anything wrong with it. Am I missing
something? I got
this error with 3.6.0 #9615, and then again with 3.6.9 #10186
pi@stm8pi:~ $ sdcc -mstm8 -c x.c
x.c:21: error 9: FATAL Compiler Internal Error in file 'peep.c' line number
'46' :
readint() got non-integer argument.
Contact Author with source code
x.c:21: error 9: FATAL Compiler Internal Error in file 'peep.c' line number
'46' :
readint() got non-integer argument.
Contact Author with source code
x.c:21: error 9: FATAL Compiler Internal Error in file 'peep.c' line number
'46' :
readint() got non-integer argument.
Contact Author with source code
Here is the preprocessor output I used to verify:
char bits_rx;
char *ptr_rx;
void tim2c_isr(void) __interrupt (14)
{
*(volatile char *)(0x5304) = 0;
if (!bits_rx)
return;
bits_rx--;
if (bits_rx & 0x80)
return;
__asm
ld a, 0x5006
and a, #(1 << 5)
add a, #255
rrc [_ptr_rx]
__endasm;
if (!(bits_rx & 7))
ptr_rx++;
}
It compiles fine without the inline assembly. Sorry if I am missing something
obvious!
Thanks,
-Richard
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Sdcc-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sdcc-user