[ixp1200] ixp1200 absolute register programming problem

xtan at mail xtan at csnet1.cs.tsinghua.edu.cn
Thu Aug 22 21:27:12 EDT 2002


Hello everybody:
         Here is an absolute register programming problem that I
encountered with IXP1200 C (asm) compiler.
The detail code goes here:

__declspec(shared gp_reg) a;

void main()
{
     __asm alu[a, 1, +, a];
}

The compiler will report an error: (0): error :  #0: Inst has bad
operands (d:\cvs\uc\ixp1200\uEngineC\pdev\ixp_cg\ixpasm.c, line 2109)

While the IXP programming guide said the B operand and the dest_reg
could use absolute register leaving A operand a immediate data.

Is there anything wrong with my syntax or it is just a compiler bug?

Besides, using global absolute register is convenient in the
communications between threads, but this failure will lead to an
exaggerate code generation which dramatically decrease the performance.

I will very appreciate if anyone could help me.

Zhanxi Tan
Dep. of CS Tsinghua Univ.




More information about the ixp1200 mailing list