I have a project written in assembly for SHARC-21369. In a couple of places I call C functions and it works fine. Also I have an interrupt handler, which uses secondary (background) registers for DAG1. And as the "C/C++ Run-Time Model and Environment" doc says, "The C/C++ run-time model does not have an understanding of background registers." So when I enable secondary registers for DAG1 I have no frame pointer and no stack pointer (i6 and i7).
So the question is what is the correct way to execute a C function from an interrupt handler that enables secondary registers for DAG1?