Rick Mann <[email protected]> wrote:

>         asm volatile (  "in     %0, %1"         "\n\t"
>                         "andi   %0, %2"         "\n\t"
>                         "out    %1, %0"         "\n\t"

"andi" requires an immediate operand.  So it takes the "r24" that is
passed by the compiler as an immediate rather than a register.  The
value of "r24" is not known to the assembler by that time, thus the
assembler marks the symbol as "global undefined" in the object file.
The linker then eventually complains because it cannot resolve that
symbol ...

My guess is you'd like to use "and" rather than "andi". ;-)

-- 
cheers, J"org               .-.-.   --... ...--   -.. .  DL8DTL

http://www.sax.de/~joerg/                        NIC: JW11-RIPE
Never trust an operating system you don't have sources for. ;-)

_______________________________________________
AVR-chat mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/avr-chat

Reply via email to