[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
amd64 missing addressing modes
From: |
anthony |
Subject: |
amd64 missing addressing modes |
Date: |
Wed, 26 Aug 2020 14:35:45 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 |
I try to use amd64 assembly with addressing mode base with displacement,
scaled index and scaled index with displacement gforth i.e.
mov (%rdx,%rcx,1),%rax
mov (%rdx,%rcx,4),%rax
mov 40(%rdx,%rcx,4),%rax
I installed gforth from git version 0.7.9_20200820 on linux opensuse
15.1 64 bit.
I included this code to test:
ABI-CODE A ( -- )
500 # AX MOV \ AX := 500
DX AX MOV \ AX := DX
200 AX MOV \ AX := (200)
DX ) AX MOV \ AX := (DX)
40 DX D) AX MOV \ AX := (DX + 40)
\ DX CX I) AX MOV \ AX := (DX + CX)
\ DX CX *4 I) AX MOV \ AX := (DX + CX * 4) *1/2/4/8
\ 40 DX CX *4 DI) AX MOV \ AX := (DX + CX * 4 + 40)
DI AX MOV
RET
END-CODE
Compiling any of the now commented three lines results in an "invalid
memory address" error.
Maybe I am using an invalid syntax? Thought this was the correct syntax
after reading asm.fs
Every help is very much appreciated.
Anthony
- amd64 missing addressing modes,
anthony <=
- Re: amd64 missing addressing modes, Bernd Paysan, 2020/08/26
- Re: amd64 missing addressing modes, anthony, 2020/08/26
- Re: amd64 missing addressing modes, Bernd Paysan, 2020/08/26
- Re: amd64 missing addressing modes, anthony, 2020/08/26
- Re: amd64 missing addressing modes, Bernd Paysan, 2020/08/26
- Re: amd64 missing addressing modes, anthony, 2020/08/27
- Re: amd64 missing addressing modes, Anton Ertl, 2020/08/27