Difference between revisions of "User:Selayo"

From Lazarus wiki
Jump to navigationJump to search
(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 | }