asm() input arguments and indirect addressing
Prefect
alias
Fri Sep 17 15:26:00 GMT 1999
I have the following little 68k asm code:
asm(" ......
movem.l (%0),%%a0/%%d0-%%d7 \n
...... " : : "m" (0x00007464));
This is for a 68000 (in the TI-92+) and my question is: what
constraint do I use to get this code:
asm(" ......
movem.l (0x00007464),%%a0/%%d0-%%d7 \n
...... ");
where 0x00007464 is an absolute address, which might me in a #define:d
value or something.
For some strange reason "m" creates this:
asm(" ......
movem.l -$32(%pc),%%a0/%%d0-%%d7 \n
...... ");
...and "V" or "p" won't work.
Any way of getting a numerical constant into an asm() string like this
would greatly ease my programming :-)
If it is possible to do it *without* asm() arguments (by something
equivalent to putting a #define:d constant directly into the asm(""))
it would be even better, but I'm not hoping for too much there...
More information about the Gcc-help
mailing list