Difference between revisions of "User:Selayo"
(compile and asm bug) |
|||
Line 18: | Line 18: | ||
asm | asm | ||
mov rax,v1 | mov rax,v1 | ||
− | mov rcx,v1 | + | mov rcx,v1 //bug1 |
jmp @test | jmp @test | ||
− | lea rax,@test | + | lea rax,@test //bug2 |
nop | nop | ||
@test: | @test: | ||
end; | end; | ||
end; | end; | ||
− | + | { | |
000000010002B860 | 55 | push rbp | | 000000010002B860 | 55 | push rbp | | ||
000000010002B861 | 48 89 E5 | mov rbp,rsp | | 000000010002B861 | 48 89 E5 | mov rbp,rsp | | ||
Line 36: | Line 36: | ||
000000010002B885 | 5D | pop rbp | | 000000010002B885 | 5D | pop rbp | | ||
000000010002B886 | C3 | ret | | 000000010002B886 | C3 | ret | | ||
+ | } |
Latest revision as of 04:41, 16 November 2017
error 1
var
funct:Variant;
begin
funct:=sapRfc.Add('RFC_READ_TABLE'); //ok funct.Exports('QUERY_TABLE').Value:='VBAP'; //error, but delphi is ok ...
end;
Unit2.pas(497,9) Fatal: Syntax error, "identifier" expected but "EXPORTS" found
bug 1 and 2
var v1:qword; procedure _test; begin
asm mov rax,v1 mov rcx,v1 //bug1 jmp @test lea rax,@test //bug2 nop @test: end;
end; { 000000010002B860 | 55 | push rbp | 000000010002B861 | 48 89 E5 | mov rbp,rsp | 000000010002B864 | 48 A1 70 9B 24 00 01 00 00 00 | mov rax,qword ptr ds:[100249B70] | ok 000000010002B86E | 48 8B 0C 25 70 9B 24 00 | mov rcx,qword ptr ds:[249B70] | bug1 <> ds:[100249B70] 000000010002B876 | EB 09 | jmp project1.10002B881 | ok 000000010002B878 | 48 8D 04 25 81 B8 02 00 | lea rax,qword ptr ds:[2B881] | bug2 <> ds:[10002B881] 000000010002B880 | 90 | nop | 000000010002B881 | 48 8D 65 00 | lea rsp,qword ptr ss:[rbp] | 000000010002B885 | 5D | pop rbp | 000000010002B886 | C3 | ret | }