??? 09/12/11 22:27 Modified: 09/12/11 22:45 Read: times |
#183736 - Using... Responding to: ???'s previous message |
From my experience with the Keil tool set the USING(n) attribute applies to the "implementation" of the code and not to pointers or declarations normally located in .h files. It gives the compiler a hint as to how the code in the function needs to be built into machine language to properly deal with the chosen register set.
Note that register set selection is really hard tied to the way the code is translated to assembly. Optimized code generation, particularly from Keil - and also probably others, makes extensive use of code constructs such as: PUSH ACC PUSH AR1 PUSH AR2 ... ... POP AR2 POP AR1 POP ACC As opposed to the more "register set indepedant"code: as: PUSH ACC MOV A, R1 PUSH ACC MOV A, R2 PUSH ACC PUSH AR1 PUSH AR2 ... ... POP ACC MOV R2, A POP ACC MOV R1, A POP ACC Michael Karas |
Topic | Author | Date |
SDCC: function pointers in an ISR | 01/01/70 00:00 | |
Alternative | 01/01/70 00:00 | |
re: Alternative | 01/01/70 00:00 | |
Register bank 1 | 01/01/70 00:00 | |
re: register bank 1 | 01/01/70 00:00 | |
Using... | 01/01/70 00:00 | |
Lack of orthogonality | 01/01/70 00:00 | |
incorrect warning | 01/01/70 00:00 | |
re: incorrect warning | 01/01/70 00:00 | |
not fixed yet | 01/01/70 00:00 | |
re: not fixed yet | 01/01/70 00:00 | |
Actel's answer. | 01/01/70 00:00 | |
warning | 01/01/70 00:00 | |
function pointers in SDCC | 01/01/70 00:00 | |
bug fixed! | 01/01/70 00:00 | |
Actel support | 01/01/70 00:00 | |
Still on the payroll | 01/01/70 00:00 |