Test t3186:
Machine instructions LEA in 64bit mode
- Description
-
Encoding and relocations of absolute and relative addressing mode.
- Tested procedures
-
IigLEA
- Source & expected listing
t3186.htm.lst
-
| | EUROASM LIST=ON, DUMP=ON, DUMPWIDTH=32, CPU=X64, AMD=YES
| |t3186 PROGRAM FORMAT=COFF,WIDTH=64,MODEL=FLAT,LISTMAP=OFF,LISTGLOBALS=OFF
|[.text] |[.text] SEGMENT
|00000000:8D0C2501000000 | LEA ECX,[1]
|00000007:488D0C2501000000 | LEA RCX,[1]
|0000000F:8D0D4E000000 | LEA ECX,[CodeLabel]
|00000015:488D0D47000000 | LEA RCX,[CodeLabel]
|0000001C:488D0D40000000 | LEA RCX,[CodeLabel],ADDR=REL
|00000023:488D0C25[63000000] | LEA RCX,[CodeLabel],ADDR=ABS
|0000002B:8D0D(08000000) | LEA ECX,[DataLabel]
|00000031:488D0D(08000000) | LEA RCX,[DataLabel]
|00000038:488D0D(08000000) | LEA RCX,[DataLabel],ADDR=REL
|0000003F:488D0C25[08000000] | LEA RCX,[DataLabel],ADDR=ABS
|00000047:8D0D(00000000) | LEA ECX,[ExtLabel]
|0000004D:488D0D(00000000) | LEA RCX,[ExtLabel]
|00000054:488D0D(00000000) | LEA RCX,[ExtLabel],ADDR=REL
|0000005B:488D0C25[00000000] | LEA RCX,[ExtLabel],ADDR=ABS
|00000063:90 |CodeLabel: NOP
|[.data] |[.data] SEGMENT
|00000000:0100000000000000 | DQ 1
|00000008:0200000000000000 |DataLabel: DQ 2
|00000010:0300000000000000 | DQ 3
| |ExtLabel: EXTERN
| | %DISPLAY RELOCATIONS
|# D1550 **** %DISPLAY Relocations
|# D1560 [.text]:00000027h,target=[.text]:00000000h,frame=[.text],width=32,type=abs
|# D1560 [.text]:0000002Dh,target=[.data]:00000000h,frame=[.data],width=32,type=rel
|# D1560 [.text]:00000034h,target=[.data]:00000000h,frame=[.data],width=32,type=rel
|# D1560 [.text]:0000003Bh,target=[.data]:00000000h,frame=[.data],width=32,type=rel
|# D1560 [.text]:00000043h,target=[.data]:00000000h,frame=[.data],width=32,type=abs
|# D1560 [.text]:00000049h,target=[ExtLabel]:00000000h,frame=[ExtLabel],width=32,type=rel
|# D1560 [.text]:00000050h,target=[ExtLabel]:00000000h,frame=[ExtLabel],width=32,type=rel
|# D1560 [.text]:00000057h,target=[ExtLabel]:00000000h,frame=[ExtLabel],width=32,type=rel
|# D1560 [.text]:0000005Fh,target=[ExtLabel]:00000000h,frame=[ExtLabel],width=32,type=abs
|# D1790 **** End of %DISPLAY
| | ENDPROGRAM t3186
- Expected messages
t3186.out
I0180 Assembling source file "t3186.htm".
I0270 Assembling source "t3186".
I0310 Assembling source pass 1.
D1550 **** %DISPLAY Relocations "t3186.htm"{74}
D1790 **** End of %DISPLAY "t3186.htm"{74}
I0330 Assembling source pass 2 - final.
I0470 Assembling program "t3186". "t3186.htm"{52}
I0510 Assembling program pass 1. "t3186.htm"{52}
D1550 **** %DISPLAY Relocations "t3186.htm"{74}
D1790 **** End of %DISPLAY "t3186.htm"{74}
I0510 Assembling program pass 2. "t3186.htm"{52}
D1550 **** %DISPLAY Relocations "t3186.htm"{74}
D1790 **** End of %DISPLAY "t3186.htm"{74}
I0530 Assembling program pass 3 - final. "t3186.htm"{52}
D1550 **** %DISPLAY Relocations "t3186.htm"{74}
D1560 [.text]:00000027h,target=[.text]:00000000h,frame=[.text],width=32,type=abs "t3186.htm"{74}
D1560 [.text]:0000002Dh,target=[.data]:00000000h,frame=[.data],width=32,type=rel "t3186.htm"{74}
D1560 [.text]:00000034h,target=[.data]:00000000h,frame=[.data],width=32,type=rel "t3186.htm"{74}
D1560 [.text]:0000003Bh,target=[.data]:00000000h,frame=[.data],width=32,type=rel "t3186.htm"{74}
D1560 [.text]:00000043h,target=[.data]:00000000h,frame=[.data],width=32,type=abs "t3186.htm"{74}
D1560 [.text]:00000049h,target=[ExtLabel]:00000000h,frame=[ExtLabel],width=32,type=rel "t3186.htm"{74}
D1560 [.text]:00000050h,target=[ExtLabel]:00000000h,frame=[ExtLabel],width=32,type=rel "t3186.htm"{74}
D1560 [.text]:00000057h,target=[ExtLabel]:00000000h,frame=[ExtLabel],width=32,type=rel "t3186.htm"{74}
D1560 [.text]:0000005Fh,target=[ExtLabel]:00000000h,frame=[ExtLabel],width=32,type=abs "t3186.htm"{74}
D1790 **** End of %DISPLAY "t3186.htm"{74}
I0660 64bit FLAT COFF file "t3186.obj" created, size=500. "t3186.htm"{86}
I0650 Program "t3186" assembled in 3 passes with errorlevel 1. "t3186.htm"{86}
I0750 Source "t3186" (122 lines) assembled in 2 passes with errorlevel 1.
I0860 Listing file "t3186.htm.lst" created, size=2294.
I0990 EuroAssembler terminated with errorlevel 1.
▲Back to the top▲