I need to define the constant memory address/offset in i386 gcc inline asm, i.e. immediate value without $ prefix, so I can use it as a constant offset for some memory address statement. E.g. I want to access different fields of the same structure through a single base register containing pointer to this structure or access different areas of static data by using both base and index registers to construct complete address.
Something like this: "movl %0(%%ebx), %%eax" "\n\t" "movl %1(%%ebx), %%edx" "\n\t" "movl %2(%%ebx,%%esi,4), %%ecx" "\n\t" where %0, %1, %2 are some constant paramenters (may be numeric constant or external symbol or constant expression with external symbols) of assembler statement. Is there any way to do that? Greetings, Serge Dundich PS: I wasn't sure what mailing list this message is the most appropriate for. So I posted it both here and in "gcc-help". I hope that's ok.