patchAVR C Runtime Library - Patches: patch #6805, Numeric interrupt vectors

 
 

You are not allowed to post comments on this tracker with your current authentication level.

patch #6805: Numeric interrupt vectors

Submitted by:  Ron Kreymborg <ronkrem>
Submitted on:  Sun 12 Apr 2009 05:26:05 AM UTC  
 
Category:  None Priority:  5 - Normal
Status:  None Privacy:  Public
Assigned to:  Anatoly Sokolov <aesok> Open/Closed:  Open

Mon 13 Apr 2009 01:16:53 AM UTC, comment #2:

Good idea - a more complete implementation that mine (which was based on Marek's original). I assume it will use the number for the vector and not the "handler_name" (the C++ requirement).

Just curious - what is an example of (2)?

Ron

Ron Kreymborg <ronkrem>
Sun 12 Apr 2009 02:10:51 PM UTC, comment #1:

The patch for the GCC is not complete.
1. No numeric argument to the 'interrupt' attribute is implemented.
2. Not possible use one interrupt handler for some interrupt vectors.

I propose to implement the interface for interrupt handler functions as:

_attribute_ ((vectors(N1[, N2[, ...]]), [signal, interrupt, nmi, naked]))
void handler_mame (void);

The 'vectors' attribute specify interrupt vector numbers for handler function.

The 'signal', 'interrupt', 'nmi' and 'naked' attributes specify type of handler function. Need use only one. The default attribute is 'signal'.

Anatoly.

Anatoly Sokolov <aesok>
Project AdministratorIn charge of this item.
Sun 12 Apr 2009 05:26:05 AM UTC, original submission:

This patch allows a C++ interrupt handler name to be represented by a number, and while the name will be mangled as usual, the number survives for later linking. The patch provides for an optional numeric argument to the signal function.

An interrupt function prototype using this system for the same USART0 receiver interrupt looks like:

void IntName(void) _attribute_ ((signal(18), __INTR_ATTRS));

Ron Kreymborg <ronkrem>

 

Attached Files
file #17905:  ClassInterrupts2.zip added by ronkrem (57KiB - application/x-zip-compressed - Patches + doco + simple test)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by aesok (Posted a comment)
  • -email is unavailable- added by ronkrem (Submitted the item)
  • -email is unavailable- added by ronkrem
  •  

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

     

     

    Follow 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2009-10-11 aesok Assigned toNone => aesok
    2009-04-12 ronkrem Attached File- => Added ClassInterrupts2.zip, #17905
        Carbon-Copy- => Added -email is unavailable-

    Back to the top


    Powered by Savane 3.3