This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS/TMS320C6727B: Can CCS v3.3 GEL "jump" to an arbitrary function on the DSP?

Part Number: TMS320C6727B


Tool/software: Code Composer Studio

Hello,

We are using GEL to provide some test functionality for our program.  Currently, we communicate between GEL and the C++ app via global variables in the C++ app (which GEL has visibility based on the symbol table, and therefore can modify directly).  The C++ app can then, for instance, switch on the global variable to perform a function corresponding to the value of the global variable.  However, my task lead says that he's had the ability to jump to functions directly via GEL, at least in more modern versions of CCS/GEL.

Could you please confirm if the ability to jump directly to a function is available in GEL of CCS v3.3?  I see that the GEL_Go() function merely executes until the specified function is reached, but does not actually jump.  So as far as I could tell, it's not possible.  (Also, if not's possible in CCS v3.3, it would be interesting to know if it is possible in future versions of GEL, as my task lead recalls.)

Thanks,

Alec

  • Hi Alec,

    Alec Green said:
    However, my task lead says that he's had the ability to jump to functions directly via GEL, at least in more modern versions of CCS/GEL.

    Alec Green said:
    Could you please confirm if the ability to jump directly to a function is available in GEL of CCS v3.3?

    The only thing that comes to mind is to set the program counter to the start address of the function. This is the most common technique I've seen (from GEL).

    Thanks

    ki

  • Okay, thanks Ki.  Could you please elaborate how that might be done in GEL?  Is there a specific GEL command, or do you mean something along the lines of just de-referencing the function symbol, e.g. within GEL performing a (*fcn_to_jump_to)().  -Alec

  • There is no specific GEL function, you can just set the PC to the desired address:

    PC=<start address of function>

    Thanks

    ki