-/* tab:4
+/*
* IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. By
* downloading, copying, installing or using the software you agree to
* this license. If you do not agree to this license, do not download,
/* We need slightly different defs than SIGNAL, INTERRUPT */
#define AVR_ATOMIC_HANDLER(signame) \
- void signame() __attribute__ ((spontaneous, C))
+ void signame() @spontaneous() @C()
#define AVR_NONATOMIC_HANDLER(signame) \
- void signame() __attribute__ ((spontaneous, C))
+ void signame() @spontaneous() @C()
/* Macro to create union casting functions. */
#define DEFINE_UNION_CAST(func_name, from_type, to_type) \
/* Saves current interrupt mask state and disables interrupts. */
inline __nesc_atomic_t
-__nesc_atomic_start(void) __attribute__((spontaneous))
+__nesc_atomic_start(void) @spontaneous()
{
__nesc_atomic_t result = SREG;
__nesc_disable_interrupt();
/* Restores interrupt mask to original state. */
inline void
-__nesc_atomic_end(__nesc_atomic_t original_SREG) __attribute__((spontaneous))
+__nesc_atomic_end(__nesc_atomic_t original_SREG) @spontaneous()
{
SREG = original_SREG;
}