|
From: | Anatoly Sokolov |
Subject: | [avr-libc-dev] [patch #6352] Far pointer library |
Date: | Wed, 02 Jan 2008 16:20:32 +0000 |
User-agent: | Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; MRA 4.1 (build 00975); .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR 2.0.50727) |
Follow-up Comment #1, patch #6352 (project avr-libc): These functions modify RAMPZ register and is non-reenterable. They cannot be used in interrupt handlers and pre-emptive Real Time OS. It should be written in documentation. Your comments on such offer: Add in AVR GCC toolchain architectures for 128KB devices. Define "__AVR_HAVE_RAMPZ__" macro and save RAMPZ register in interrupt handlers for these devices. Pro: 1. Safely use more 64KB data stored in FLASH. 2. Add xxxx_PF string functions in avr-libc. 3. In future add support of "far" pointer in avr-gcc. Contra: 1. Longer prologue/epologue code in interrupt handlers (4 instructions + 1 byte stored in stack). Anatoly. _______________________________________________________ Reply to this item at: <http://savannah.nongnu.org/patch/?6352> _______________________________________________ Message sent via/by Savannah http://savannah.nongnu.org/
[Prev in Thread] | Current Thread | [Next in Thread] |