Hello,
I get an assembler error below for ARM9. The compiler is TI v5.1.1. The #-2147483648 is 0x80000000 as the start address of shared ram. I seem that this number is used as offset address by assembler. Could you tell me how I resolve this? The program as C674x is working though. There is not an assembler error in TI v7.4.11. Then a particular address data is read correctly. -> 0x80000000 + (0x1000 + 3 * 2) * sizeof(short)
<console>
"test.asm", ERROR! at line 145: [E0200] Offset out of range, must be [-4095,4095]
LDR V9, [V9, #-2147483648] ; [DPU_PIPE] |18|
<test.c>
#define OFFSET 0x1000
#define SHRAM ((volatile unsigned short *)(0x80000000))
void data_set(unsigned int index, int *data);
void main (void) {
unsigned int Index = 3;
int Data;
data_set(Index, &Data);
}
void data_set(unsigned int index, int *data)
{
*data = *((int *)&SHRAM[OFFSET+(index*2)]);
}
Regards,
Kazu