Follow-up Comment #3, bug #28756 (project avr-libc):

I'm have his bug in WinAVR 20100110 too. In clock_prescale_set(x) I found
infinity loop and error disappear when I remove loop:
WinAVR 20100110 power.h:
#define clock_prescale_set(x) 
do { 
        uint8_t tmp = _BV(CLKPCE); 
        __asm__ __volatile__ ( 
                "in __tmp_reg__,__SREG__" "nt" 
                "cli" "nt" 
                "sts %1, %0" "nt" 
                "sts %1, %2" "nt" 
                "out __SREG__, __tmp_reg__" 
                : /* no outputs */ 
                : "d" (tmp), 
                  "M" (_SFR_MEM_ADDR(CLKPR)), 
                  "d" (x) 
                : "r0"); 
} while (0)

WinAVR 20090313 power.h:
#define clock_prescale_set(x) 
{ 
        uint8_t tmp = _BV(CLKPCE); 
        __asm__ __volatile__ ( 
                "in __tmp_reg__,__SREG__" "nt" 
                "cli" "nt" 
                "sts %1, %0" "nt" 
                "sts %1, %2" "nt" 
                "out __SREG__, __tmp_reg__" 
                : /* no outputs */ 
                : "d" (tmp), 
                  "M" (_SFR_MEM_ADDR(CLKPR)), 
                  "d" (x) 
                : "r0"); 
}


(file #19590, file #19591)
    _______________________________________________________

Additional Item Attachment:

File name: power.h                        Size:57 KB
File name: power.h                        Size:60 KB


    _______________________________________________________

Reply to this item at:

  <http://savannah.nongnu.org/bugs/?28756>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.nongnu.org/



_______________________________________________
AVR-libc-dev mailing list
AVR-libc-dev@nongnu.org
http://lists.nongnu.org/mailman/listinfo/avr-libc-dev

Reply via email to