This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Reentrant?

I rarely ask questions on this forum, but since I couldn't [easily] find it in the help-files, or on-line, I'm asking you guys.

I usually (like never) don't use the 'reentrant' pragma, but I think I may have to do that with a particular routine.

BUT I can't find the key-word that declares a function as reentrant. Am I missing something? Is there one for Keil's IDE tools? If so, what is its form? Can I get a link to the 'official' use of it?

Thanks in advance, and I need it asap because I need to pass this class and I don't want to really learn how to do this 'embedded' stuff anyway but the teacher keeps hounding me.

--Cpt. Vince Foster
2nd Cannon Place
Fort Marcy Park, VA

Parents

  • =>allows non-standard pragmas to be issolated and documented well<=

    Sorry for that, I am confused.

    non-standard to ARM calling convention?
    or
    non-standard to C standard?

    As I tried to say (in a previous post in this thread), in the embedded world many of the 'standards' cannot be easily implemented by the 'lesser processors' like the 8051.

    So the compiler companies will sometimes deviate from the standard and require special pragmas or compiler/linker switches to allow for the code to generate full compliance. I am aware of this, and the processor limitations, and the challenges of compiler vendors, so in 'my book' it is a "cautionary" issue because of what Leandro Gentili said. (He said it very well too).

    I also tried to say that sometimes a design is either optimized and changed. this can include the processor itself. "C" is fairly transportable from processor to processor, and can be 'transported' into VHDL for FPGA/ASIC needs.

    If your software is organized properly, these transitions can be more easily handled *IF* you are aware of these potential issues.

    I was the 'troll' that started this thread. *They* expanded it. The answer came after the 3rd reply by Robert McNamara.

    --Cpt. Vince Foster
    2nd Cannon Place
    Fort Marcy Park, VA

Reply

  • =>allows non-standard pragmas to be issolated and documented well<=

    Sorry for that, I am confused.

    non-standard to ARM calling convention?
    or
    non-standard to C standard?

    As I tried to say (in a previous post in this thread), in the embedded world many of the 'standards' cannot be easily implemented by the 'lesser processors' like the 8051.

    So the compiler companies will sometimes deviate from the standard and require special pragmas or compiler/linker switches to allow for the code to generate full compliance. I am aware of this, and the processor limitations, and the challenges of compiler vendors, so in 'my book' it is a "cautionary" issue because of what Leandro Gentili said. (He said it very well too).

    I also tried to say that sometimes a design is either optimized and changed. this can include the processor itself. "C" is fairly transportable from processor to processor, and can be 'transported' into VHDL for FPGA/ASIC needs.

    If your software is organized properly, these transitions can be more easily handled *IF* you are aware of these potential issues.

    I was the 'troll' that started this thread. *They* expanded it. The answer came after the 3rd reply by Robert McNamara.

    --Cpt. Vince Foster
    2nd Cannon Place
    Fort Marcy Park, VA

Children
No data