Register Addressing Modes

Discussion created by the729 on Feb 12, 2010
Latest reply on Feb 12, 2010 by MicahVillmow
About relative addressing, sr, etc.

From the document 'Evergreen-Family ISA Instructions and Microcode' page 2-23~2-24, I find that INDEX_MODE supports 4 modes. My question is, how to utilize these features in IL respectively? To be more specific:

INDEX_AR_X, use ar.x for indexing. As far as I know, we can use indexed array x[] to utilize this feature. Is there any other way?

INDEX_LOOP, use loop index. Actually, I do not really use this feature.

INDEX_GLOBAL, treat GPR address as absolute. We can declare sr in IL. However, the number of SR is limited to 32 (am I right?). It is certainly not a limit of the ISA microcode. Is this a hardware limit?

INDEX_GLOBAL_AR_X, absolute GPR address and us ar.x for indexing. Is there any way to use this feature in IL?