Hi khurram712,
Yes you are right, pragma should be used in combination with function prototype declaration.
I can debug the RAM code without any limitations/confusions.
See below the example how to place standalone assembler function into RAM:
main.c
---------
#pragma push
#pragma section code_type ".my_RAM_code" ".my_RAM_code" data_mode=far_abs code_mode=far_abs
void my_C_ram_func(void);
extern void my_asm_ram_func(void);
#pragma pop
void my_C_ram_func(void)
{
asm (nop);
}
int main(void) {
my_C_ram_func();
my_asm_ram_func();
...
}
main_asm.s
----------
.globl my_asm_ram_func
.section .my_RAM_code,text
my_asm_ram_func:
nop
nop
blr
*.lcf
-----
...
SECTIONS
{
...
GROUP : {
.__uninitialized_intc_handlertable ALIGN(0x10) : {}
.data : {}
.sdata : {}
.sbss : {}
.sdata2 : {}
.sbss2 : {}
.bss : {}
.my_RAM_code: {}
} > internal_ram
}
Stanish